Oracle CloudでKUSANAGIのパートナー・イメージを使ってみた

こんにちは。

以前、こちらの記事でWordPressの環境構築をやってみましたが、今回は簡単にWordPressを構築できるパートナーイメージであるKUSANAGIをつかって、WordPressの構築を行ってみたいと思います!

本記事の目次です

KUSANAGIについて

KUSANAGIはPrime Stategy社が提供している CMSの実行を目的とした仮想マシンイメージです。

kusanagi.tokyo

ベースはCentOSとなっており、CMSの実行に必要なミドルウェアやアプリケーションが初めから入っていて、最適化されています。今回は KUSANAGIを利用してWordPressを構築してみようとおもいます。

ネットワーク作成

まずはネットワークを作成します。 VCNを作成し、

  • インターネット・ゲートウェイ

  • サブネット

  • セキュリティリスト

  • ルートテーブル

  • ネットワーク・セキュリティ・グループ

を作成します。 ssh通信、http、httpsでの通信を有効にするためのイングレス ・ルールも設定しておきます。(今回はネットワーク・セキュリティ・グループにて設定しました。)

インスタンス作成

KUSANAGIのインスタンスを作成します。Oracle Cloudの管理コンソールから左側メニューを選択し、コンピュート>インスタンスとすすんで、インスタンスの作成をクリックします。 イメージまたはオペレーティング・システム

イメージの変更

パートナ・イメージを選択します。

パートナ・イメージを選択します

KUSANAGI for Oracle Cloudを選択し、イメージの選択をクリックします。

KUSANAGI for Oracle Cloudを選択します

KUSANAGI for Oracle Cloudがイメージまたはオペレーティング・システムに選択されています。

イメージが選択されています

あとは、通常通りインスタンスを作成します。

初期設定

KUSANAGIのインスタンスに接続します。 「KUSANAGI」とログイン時に表示されます。

画面が表示

ここからは、KUSANAGの公式サイトのチュートリアルに沿って進めていきます。

まずはsudoに入りOS,KUSANAGIシステムのアップデート、再起動をして、再度ログインします。

# sudo -s
# yum update kusanagi -y
# yum --enablerepo=remi,remi-php56 update -y 
# reboot

再度ログインしたら、初期設定を開始します。# kusanagi init と入力すると初期設定のダイアログが始まります。

  • タイムゾーン
  • 言語
  • ユーザー:kusanagiのパスワード
  • RSAキー
  • Webサーバー(NGINX or Apache)
  • アプリケーションサーバ(PHP7 or HHVM or PHP5)
  • データベースシステム(MariaDB or PostgreSQL)

を選択します。今回はApache、PHP7、MariaDBを選択しています。

初期設定がおわったら、現在の起動状況の確認をします。

# kusanagi status というコマンドが用意されているようです。

kusanagi status

ここで、Apacheを選択したのにNGINXが起動してしまうといったことが起こるようです。(というか起こってしまいました。)

systemctl status httpd で状態を確認すると、

Syntax error on line 5 of /etc/httpd/conf.d/ssl.conf:

のようにエラーが出力されていました。

この場合は、KUSANAGIの公式ブログにある通り、/etc/httpd/conf.d/ssl.conf を削除するか、リネームすれば良いようです。

プロビジョニング

次は、WordPressのプロビジョニングの作業を行います。プロビジョニングについても、公式チュートリアルにのっとって作業します。 kusanagi provision を使用します。( test_html の部分はWordPressのデータが格納されるディレクトリ名となります)

# kusanagi provision test_html
  • 使用する言語
  • ホスト名(今回はサーバのIPアドレスで設定しています)
  • Let's encryptへの使用規約に同意(今回は設定していません)
  • データベースの初期設定(DB名、ユーザ名、パスワード)

を設定します。

test_html のプロビジョニングは完了しました。********(ホスト名が表示されます) にアクセスし、WordPressをインストールしてください!
完了しました。

これで、プロビジョニングは完了です。

WordPressの初期設定

設定したホスト名にブラウザからアクセスしてみます。以下のような画面が表示されるはずです。

WordPressの初期画面が表示される

設定画面をすすめ、

  • データベース名
  • ユーザー名
  • パスワード
  • データベースのホスト名
  • テーブル接頭辞

を設定します。データベース名、ユーザー名、パスワードはプロビジョニングの際設定したものです。

サイト名、ユーザーを設定します。

サイト名とユーザー設定

設定が済んだら、そのままログインします。

ログイン

wordpress
WordPressの初期画面が表示される

これで、設定できました!

検証

今回、ただ設定するだけでは面白くないので、Oacle LinuxにApache,PHP7,MariaDBを使用して構築したWordPressをインストールしただけの環境との比較を行いました。

それぞれの環境は以下の通りです。

インスタンスのイメージ KUSANAGI Oracle Linux
Webサーバー Apache 2.4.43 Apache 2.4.6
アプリケーションサーバ PHP 7.3.19 PHP 7.3.19
データベースシステム MariaDB 10.1.45 MariaDB 10.4.13
WordPress 5.4.2-ja 5.4.2–ja

パフォーマンス比較

Google PageSpeedInsightsで速度を比較してみます。

KUSANAGI (モバイル) KUSANAGI (PC) Oracle Linux (モバイル) Oracle Linux (PC)
First Contentful Paint 1.3 秒 0.4 秒 2.3 秒 0.6 秒
速度インデックス 1.3 秒 0.4 秒 2.5 秒 0.6 秒
最大コンテンツの描画 1.6 秒 0.5 秒 2.7 秒 0.7 秒
インタラクティブになるまでの時間 1.3 秒 0.4 秒 2.3 秒 0.6 秒
合計ブロック時間 0 ミリ秒 0 ミリ秒 0 ミリ秒 0 ミリ秒
累積レイアウト変更 0 0 0 0

比較すると、モバイルでもPCでもKUSANAGIの方が表示速度が早いことが分かります。

クリティカル パスの最大待ち時間でも、

KUSANAGI (モバイル) KUSANAGI (PC) Oracle Linux (モバイル) Oracle Linux (PC)
650 ms 260 ms 650 ms 610 ms

KUSANAGIの方がPC表示の場合に短くなっています。

まとめ

今回はKUSANAGIのイメージを用いたインスタンスを用いて、WordPressを構築してみました。 Oracle LinuxのインスタンスにLAMP環境を入れてWordPressをインストールしただけの環境と比較して、表示速度が早くなることが確認できました。

KUSANAGIのパートナ・イメージは無料で利用でき、便利ですのでOracle CloudでWordPressの利用をお考えの方は検討してみてはいかがでしょうか。

ではまたお会いしましょう!