[bitnami] wordpress を新しいインスタンスに移行する

概要

wordpress にて php version のサポート期限が切れるとのアラート

bitnami のイメージの場合、イメージ毎更新するほうが良いらしく、下記手順で実施することに

  • 新 lightsail インスタンスを作成
  • 旧 lightsail インスタンスの wordpress backup を作成
  • 新 lightsail の wordpress に backup ファイルを import

手順

backup

  1. プラグイン「All-in-One WP Migration」を追加、有効化
  2. エクスポート
  3. 高度なオプションで下記にチェックを入れた(これはお好み)
    • スパムコメントをエクスポートしない 
    • 投稿リビジョンをエクスポートしない
  4. エクスポート先: ファイル
  5. 600MB の .wordpress ファイルができた

Lightsail instance を作成

  1. AWS コンソール > Lightsail > インスタンスの作成
  2. Linux/Unix > wordpress > サイズを選択 > インスタンスの作成

新たに作成した instance から backup したデータを import

  1. AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > WordPress の認証情報 から下記手順に従って管理画面のユーザ名/パスワードを取得
    • デフォルトのユーザ名二アクセス
    • デフォルトのパスワードにアクセス
      • パスワードは インスタンスへの接続 > ブラウザを使用する > SSH を使用して接続 > コンソールから下記コマンドを実行でも見れる
        • cat bitnami_application_password
  2. AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > WordPress の認証情報 > WordPress 管理者にアクセス > http://xxx.xxx.xxx.xxx/wp-admin を選択
  3. プラグインから下記を有効化する
    • All-in-One WP Migration
  4. All-in-One WP Migration > インポート

backup ファイル(.wordpress)が 80MB を超える場合

  1. AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > インスタンスへの接続 > ブラウザを使用する > SSH を使用して接続
  2. vi /opt/bitnami/php/etc/php.ini を実行し、下記をアップロードするファイルに合わせ変更する
    • post_max_size = 64M
    • upload_max_filesize = 64M
    • 私の場合は .wordpress ファイルが 600MB あったため下記のようにした
      • post_max_size = 800MB
      • upload_max_filesize = 800MB
  3. grep "LimitRequestBody" /opt/bitnami/apache2/conf/httpd.conf を実施して、apache 二設定がないことを確認
    • コマンド実施後何も表示されなければOK(表示された場合は、先ほどと同じようにサイズを修正する)
  4. 後は下記コマンドで、設定値の確認、サーバ再起動
    • sudo apachectl configtest
    • sudo /opt/bitnami/ctlscript.sh restart
  5. 再度 All-in-One WP Migration > インポート を開くと下記のように最大アップロードサイズが変わっている

参考: https://repost.aws/ja/knowledge-center/lightsail-bitnami-wordpress-upload-limit

動作確認

  1. 構築が完了したらサイトにアクセスし動作に問題がないことを確認

固定IP割り振り

インスタンスに固定IPを割り振ってDNS設定をしている場合は、旧インスタンスから固定IPをデタッチ、新インスタンスにアタッチする

  1. AWS コンソール > Lightsail > ネットワーキング > 静的IPを選択 > インスタンスへアタッチ > 新しいインスタンスを選択 > アタッチ

Lets encrypt 証明書作成

新しいインスタンスで証明書を再作成する

  1. sudo /opt/bitnami/bncert-tool を実施
    • 参考: https://qiita.com/kooohei/items/c4ac40f4bbf366cc0e31
  2. 自動更新の設定が入っていることを確認
    • sudo crontab -l -u bitnami
      23 12 * * * sudo /opt/bitnami/letsencrypt/lego
      から始まる cron式が入っていればOK

旧インスタンスの Lets encrypt 証明書を失効させる

  1. 旧インスタンスにSSHログイン
  2. sudo letsencrypt/letsencrypt-auto revoke --cert-path /etc/letsencrypt/live/e-q.work/fullchain.pem

旧インスタンスを停止/削除する

  1. AWS コンソール > Lightsail > 旧インスタンスを選択 > 停止
  2. 新インスタンスで動作に問題ないことを確認
  3. 削除

コメント

タイトルとURLをコピーしました