Harada's Diary

【導入編】今更KUSANAGI for ConoHaを試してみる。

超高速でWordPressの仮想マシンが動かせるというKUSANAGI。
結構以前からバズってましたが、今更ながら試してみました。

KUSANAGIについての解説はこちらから。


とりあえずここを参考に仮想マシンの作成までは完了。

ちなみにインストール直後にサーバのIPをブラウザで叩いたら404エラーが出てました。 おそらくWordpressをインストールせなアカンのですね。

ちなみにコンソールに接続するとこんな感じ。なかなかカッコいいでロゴですね。


KUSANAGI の初期設定

仮想マシンにログインできたら、初期設定を行います。
初期設定には専用の「KUSANAGIコマンド」を使用します。

「KUSANAGIコマンド」は、初期設定のほか、Webサーバーの切替え、 キャッシュの制御なども行えるKUSANAGI専用のコマンドです。

ここからの手順ではWordPressが利用できる状態になるよう準備を行う手順について説明します。


1. 初期設定の開始

KUSANAGIコマンドによる初期設定を行う前に、 まずCentOSやKUSANAGIシステムのアップデートを yum を利用して行います。

# yum --enablerepo=remi,remi-php56 update -y 

結構時間がかかるので、サーバ内を色々調査。

# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 19G 3.2G 16G 17% / # free -m total used free shared buff/cache available Mem: 489 136 161 7 191 319 Swap: 1023 333 690 

一番安いプランなので、DISK20GB、メモリ512MBです。
KUSANAGIは推奨メモリが4GBなので、本来のパフォーマンスより劣るかも…。

そうこうしている内にアップデートが完了したので、一度再起動します。

# reboot 

再度ログインしてから root ユーザーへ切り替え KUSANAGI仮想マシンにおけるLinuxやデータベースのユーザーパスワードの設定、変更を行います。

# kusanagi init 

2. TLS用ホスト鍵ファイルの生成

最初にTLSセッション用のDH鍵の生成が始まります。
パラメータファイルの生成って時間がかかるんですよね。低スペだから余計に…。

Checking KUSANAGI Version. KUSANAGI is already latest version. Generating 2048bit DHE key for security Generating DH parameters, 2048 bit long safe prime, generator 2 This is going to take a long time ... Finish. Checking certbot-auto update. certbot 0.14.2 

3. サーバタイムゾーンの設定

サーバのタイムゾーンの設定を行います。
以下のように対話的にタイムゾーンを選択します。

Search or select timezone: Africa/Abidjan Africa/Accra . . . 

タイムゾーンを設定すると、下記のように表示されます。

Applying Location: Asia/Tokyo. 

4. ロケールの設定

使用言語の選択を行います。 ここでは日本語である2を選択します。

Select your using language. 1 : English 2 : 日本語 q : quit Which are you using?: 2 

5. キーボードタイプの設定

キーボードタイプの設定を行います。

Select your keyboard layout. 1 : English 2 : Japanese q : quit Which are you using?:2 

1 を選択すると英語キーボード(us配列)を、2 を選択すると日本語キーボード(jp106配列)を設定します。 こちらも2を選択。

6. ユーザーパスワードの設定

ユーザー kusanagi のパスワードの設定を行います。

Changing password for user kusanagi. New password: 

「passwd: all authentication tokens updated successfully.」 の表示がでればOK。

7. 鍵認証の設定

ユーザーkusanagi のSSHユーザ鍵の作成を行います。

Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): 

SSH鍵認証を行う場合のパスフレーズを設定します。 任意のパスフレーズを入力し、Enter(Return)キーを押します。 ※こちらは空欄でOk。

Your identification has been saved in /root/kusanagi.pem. Your public key has been saved in /root/kusanagi.pem.pub. 

このタイミングで鍵認証に必要な公開鍵がルートディレクトリ(/root)に kusanagi.pemとして生成されますので、初期設定完了後、必要に応じてダウンロード等を行ってください。

8. MySQL rootパスワードの設定

MySQLのrootパスワードを設定します。

Enter MySQL root password. Use [a-zA-Z0-9.!#%+_-] 8 characters minimum. 

9. Webサーバの選択

起動するWebサーバをNGINX、httpd(Apache2) から選択します。

1) NGINX(Default) 2) Apache Which you using?(1): 

10. アプリケーションサーバの選択

起動するアプリケーションサーバをHHVM、PHP7、PHP-FPM(PHP5)から選択します。

1) HHVM(Default) 2) PHP7 3) PHP5 Which you using?(1): 

11. 初期設定の完了

次のようなメッセージが表示されれば、初期設定は完了です。

innodb_buffer_pool_size = 128M query_cache_size = 64M monit is already on. Nothing to do. 

KUSANAGI専用プラグインを利用する

KUSANAGIには「KUSANAGI専用プラグイン」が同梱され、有効化されています。

「KUSANAGI専用プラグイン」は、ページキャッシュや 翻訳アクセラレーターなどの高速化関連機能と、デバイスによるテーマ切り替え機能などを備えています。

こちらが未設定だったので再設定をしてみます。

ページキャッシュの設定

コンソール上で下記コマンドを実行します。

# kusanagi bcache on 

それ以外は特に変更する場所はなさそう・・・。 次回はKUSANAGIへ現Wordpressのデータを移設する方法をまとめます。

今しばらくお待ちを。。