WordPressの移行 その② 新環境の作成

この記事は約6分で読めます。

 移行にあたり新環境の作成を行いました。今回は新しく、IndigoVPSでKusanagiイメージ(CentOS Stream8)のインスタンスを作成しました。全体の流れは前回に示した通り以下です。

  • 既存環境全体のバックアップ(サーバーまるごと)
  • データベースのバックアップ
  • 新環境の作成(Indigo VPS) ← 今回はここから
  • Kusanagiの初期設定、プロビジョニング
  • データベースのリストア
  • その他の設定

新環境の作成

 新環境の作成(Indigo VPS)は、KUSANAGI 9 for WebARENA Indigo | KUSANAGI 9を参考に行います。リンク先を見ながらその後のKusanagiの設定も続いて行います。

簡潔に言うと、インスタンスの作成、初期設定、プロビジョニングです。

No項目内容
1インスタンスの作成SSH鍵の作成、インスタンスの作成(OSのインストール)、(必要に応じて)ファイアーウォールの設定、アップデート
2初期設定KUSANAGI仮想マシンにおけるLinuxやデータベースのユーザーパスワードの設定、変更を行います。
3プロビジョニングKUSANAGIでWordPressなどを使用するためのプロファイルを作成します。これにより、Webサーバーのコンフィグや、ドキュメントルートなどがプロビジョニング(配置)されます。
新環境の作成

※参考

kusanagi コマンドは root ユーザーか、もしくは www グループに所属しているユーザーで実行できます。(kusanagi ユーザーはデフォルトで www グループに所属しています)
kusanagi コマンドが使用できない場合、ユーザーが root ユーザーか、もしくは www グループに所属しているかご確認ください。
kusanagi コマンドのフルパスは /opt/local/bin/kusanagi です。

KUSANAGI9 コマンド | KUSANAGI 9

インスタンスの作成

SSH鍵は元々あったため、同じものを使用します。インスタンスのイメージはKUSANAGI(バージョンはCentOS Stream8)を選択し、インスタンスを作成するだけなので簡単です。

インスタンス選択画面

インスタンスを作成したら、SSHでサーバーへ接続し、以下のコマンドで、CentOSやKUSANAGIシステムのアップデートを行い、再起動します。

※ -iオプションでSSH鍵を指定してcontosユーザーでサーバー(IP:xxx.xxx.xxx.xxx)にログイン
# ssh -i "C:\.ssh\private_key2.txt" centos@xxx.xxx.xxx.xxx

※rootに昇格
$ sudo su -

※システムのアップグレード
# dnf upgrade -y

※再起動
# reboot

初期設定

 初期設定では、タイムゾーンや使用言語、キーボードタイプの設定、ユーザーパスワードや鍵認証、
使用するWebサーバ(nginxかApache)の設定、アプリケーションサーバの設定(PHP7, PHP8, PHP5, HHVM)などを行います。

# kusanagi init --tz Asia/Tokyo --lang ja --keyboard ja --passwd "kusanagiユーザーのパスワード" --nophrase --dbrootpass "DBのパスワード" --nginx123 --php81 --mariadb10.6
オプション内容設定
–tzタイムゾーンAsia/Tokyo
–lang使用言語の選択ja(日本語ロケール(ja_JP.UTF-8))
–keyboardキーボードja(日本語キーボード(jp106配列)を設定)
–passwd(kusanagi)ユーザパスワードkusanagiユーザのパスワード
–nophrase鍵認証の設定SSHユーザ鍵のパスフレーズとして空文字列
–dbrootpassMySQL(MariaDB) rootパスワードの設定DBのパスワード
–nginx123nginxのバージョンnginx1.23
–php81phpのバージョンphp8.1
–mariadb10.6MariaDBのバージョンMariaDB10.6
オプション設定内容

プロビジョニング

 利用するアプリケーションの選択、ホスト名の設定、SSL証明書の設定、データベースの設定で、
KUSANAGIでWordPress などを使用するためのプロファイル作成になります。
これにより、Webサーバの設定ファイル、MySQLのデータベースや、ドキュメントルートなどがプロビジョニング(配置)されます。

# kusanagi provision --wp --wplang ja --fqdn "サイトのFQDNを入力" --noemail --dbname "作成するDBの名前" --dbuser "dbユーザーの名前" --dbpass "dbユーザーのパスワード" "プロファイル名"

※以下はKUSANAGIの使用例
# kusanagi provision --wp --fqdn host.example.com --email saya@example.com --dbname kusanagi_html --dbuser kusanagi_html --dbpass kusanagi_passwd kusanagi_html
オプション内容設定
–wpwordpressをプロビジョンします。–wp(wordpressのアプリケーションを指定)
–wplangインストールするwordpressの言語を設定します。ja(wordpressの日本語版)
–fqdn作成するプロファイルで使用するホスト名(FQDN)を指定します。指定されたホスト名は、Webサーバの設定ファイルおよび /etc/hosts ファイルに設定されます。サイトのFQDN
–noemailLet’s Encrypt のSSL証明書を発行しません。–noemail(証明書発行なし)
–dbname指定したデータベース名で、データベースを新規作成します。DBの名前
–dbuserデータベースへアクセスするためのDBユーザー名を指定します。DBユーザー名
–dbpassDBユーザに対応するパスワードを設定します。(8文字以上)DBユーザーのパスワード
プロビジョニングオプションの設定

新規環境の作成後の作業

新規環境の作成後に、データベースのリストアを行います。

データベースのリストア

 リストアは、ターミナルで以下のコマンドをたたくだけです。新しい環境にMariaDBがインストールされていることが前提です。

$ mysql -u root-p データベース名 < dumpファイル

ちなみに、

 新しいサーバーでKusanagi、Wordpress環境を構築後、バックアップを戻すと、旧サーバーへリダイレクトされるようになりました。そのため、ドメインのAレコードを新サーバーのIPに更新しました。

次回は、データベースをリストアした後に発生した諸問題を解決するための設定について記事にします。