cPanelは最も多く使われているGUIサーバー管理ツールです。欧米では非常に人気がある唯一無二のサービスなのですが、日本ではあまり多用されていないようです。サービス名称としては「WHM/cPanel」という書き方をしますが、「WHM(Web Host Manager)」はそのサーバーにて運用される個々のホスト達を作成したり設定可能範囲を管理する親ツールです。これに対し、「cPanel」はWHMで管理された個々のホストを管理する子ツールです。すなわち、「WHM」が「ホスティングサービス運営管理者」、「cPanel」が「店子としての各ホストの管理者」という位置付けになります。30日間のお試し期間があり、月額15ドルから(ホストの種類や管理状況により異なる)の費用で使えます。
cPanelウェブサイト: https://cpanel.com/
私は理系院卒で学生時代に大学のネットワーク管理者をしていたり、社会人になってもシステム構築やコーディングを一応してきましたが、立ち位置が経営企画・ビジネス設計にシフトしてきている昨今、ターミナルウィンドウでサーバー設定をするのが非常に面倒で効率的に行いたい状況にあります。加えて、ビジネスの拡大縮小に合わせてアプリケーションサーバーのクラスタリング台数を柔軟に変えて運用コストを最適化したいという願いもあり、「GCPでシステムを運用するが、WHM/cPanelを使って構築・管理をしたい」という状況です。
色々と見ていましたが、あまりGCP(正確にはGCE)にcPanelを導入している事例が多くないようなので、私のような「技術もやる経営者」のために、GCEのインスタンスにcPanelを導入する際のポイントを記載します。
#1. インスタンスを作成する
- OSはRHEL, CentOS, CloudLinuxのいずれかであること
- CentOSの場合、versionは6.5以上であること
- メモリーは3GB以上であること
- HDD/SSDは20GB以上であること
- 何もインストールされていないフレッシュな状態であること
- 外からDNSを引けるようにhostnameが設定されていること
#2. cPanelのインストール
- rootのパスワードを設定する
[root@hostname]$ sudo passwd
- root権限を得てyumのアップデートとインストールをする
[root@hostname]# yum update -y
[root@hostname]# yum install -y perl
[root@hostname]# yum install -y wget
- Network Managerをdisableもしくはdeleteしておくこと
[root@hostname]# systemctl stop NetworkManager
[root@hostname]# systemctl disable NetworkManager
Network ManagerがenabledだとcPanelのインストーラーがインストールを中止しますのであらかじめdisableしておきます。
- ホスト名を設定
[root@hostname]# hostname hogehoge.fugafuga.com
- 最新のcPanelを取得してインストール
[root@hostname]# cd /home && curl -o latest -L https://securedownloads.cpanel.net/latest && sh latest
#3. インストール後の設定
###3.1. GCPでの設定
- /scripts/configure_firewall_for_cpanel を実行すること
[root@hostname]# /scripts/configure_firewall_for_cpanel
- GCPのVPC Network設定でport2087(WHM用)およびport2083(cPanel用)を開けておくこと
###3.2. 管理画面ログイン(WHM)
立てた親ホストのExternal IPが192.168.0.1 だとすると、ブラウザで https://192.168.0.1:2087/ にアクセスすると、下記の画面が開きます。
- ログインUID/PWDは、立てたホスト(GCEインスタンス)のrootのUID/PWDと同じ
###3.3. 管理画面ログイン(cPanel)
立てた子ホストの登録名が host1.fugafuga.com だとすると、ブラウザで https://host1.fugafuga.com:2083/ にアクセスすると、下記の画面が開きます。
#4. Server Certificate (SSL/TLS)
WHM/cPanelを導入することによってオトクなのは、運用するホスト(サブドメイン)のサーバー証明書がAutoSSLという機能によって無料で生成されるところです。所有ドメインのサーバ証明書がワイルドカードであればそれで無料ですが、個別にサーバー証明書を有料で発行してもらっている人には嬉しい機能です。
#6. 料金
cPanelは月ごとのサブスクリプション料金を支払う仕組みです。GCEインスタンスはVPSなので 20 USD/Mth で、1年分を払うと 200 USD です。GCPはAmazon AWSよりも割安だったり、細かく設定を行える分、少し敷居が高いように思えますが、cPanelを導入すればサーバー管理もラクラクです。時給換算で毎月1時間の時間の節約ができれば元を取れますのでオススメします(宣伝ではないです)。