こんにちは。t-tasakaです。
以前、こちらの記事でWordPressの環境構築をやってみましたが、今回は簡単にWordPressを構築できるパートナーイメージであるKUSANAGIをつかって、WordPressの構築を行ってみたいと思います!
本記事の目次です
KUSANAGIについて
KUSANAGIはPrime Stategy社が提供している CMSの実行を目的とした仮想マシンイメージです。
ベースはCentOSとなっており、CMSの実行に必要なミドルウェアやアプリケーションが初めから入っていて、最適化されています。今回は KUSANAGIを利用してWordPressを構築してみようとおもいます。
ネットワーク作成
まずはネットワークを作成します。 VCNを作成し、
-
インターネット・ゲートウェイ
-
サブネット
-
セキュリティリスト
-
ルートテーブル
-
ネットワーク・セキュリティ・グループ
を作成します。 ssh通信、http、httpsでの通信を有効にするためのイングレス ・ルールも設定しておきます。(今回はネットワーク・セキュリティ・グループにて設定しました。)
インスタンス作成
KUSANAGIのインスタンスを作成します。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
というコマンドが用意されているようです。
ここで、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の初期設定
設定したホスト名にブラウザからアクセスしてみます。以下のような画面が表示されるはずです。
設定画面をすすめ、
- データベース名
- ユーザー名
- パスワード
- データベースのホスト名
- テーブル接頭辞
を設定します。データベース名、ユーザー名、パスワードはプロビジョニングの際設定したものです。
サイト名、ユーザーを設定します。
設定が済んだら、そのままログインします。
これで、設定できました!
検証
今回、ただ設定するだけでは面白くないので、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の利用をお考えの方は検討してみてはいかがでしょうか。
ではまたお会いしましょう!