前提としている環境
以下の環境からWebサーバとなるインスタンスのみを増強する手順について記録しておく
- すでにシングルインスタンスでWordPressを運用している
- DBはRDS、メディアファイルはS3に分離しインスタンス複製に影響を与えない状況
- オリジナルドメインを使用しすでにロードバランサーを使用している
既存インスタンスのAMI作成
既存のインスタンスの項目を右クリックし、イメージの作成を実施
イメージ名はすでにあるものと重複しなければ何でも良い。説明に日付など入れていつのイメージかわかるようにしておくと良さそう。
AMIからのインスタンス作成
EC2に左メニューの中からAMIを選び、先ほど作成したイメージを選択した状態で起動を実施
設定項目の中で注意すべきところは「インスタンス詳細の設定」という部分で、ネットワークは既存のインスタンスと同じ物を選び、サブネットは既存のインスタンスと異なるパブリックサブネットを選択。自動割当パブリックIPを有効にしておく
「タグの設定」でNameの値を割り当てておくと、作成したあとのインスタンス名として使用される
セキュリティグループは既存のインスタンスと同じものを設定しておく
起動後正常にログインできるかどうか確認する
ロードバランサーのターゲットグループに追加
EC2に左メニューの中から「ロードバランシング」項目中の「ターゲットグループ」を選択
既存のターゲットグループを選択した状態で、下部にある「ターゲット」のタブを開き、編集をクリック
作成したインスタンスの使用ポートを選択して追加する
モニタリングで「正常なホスト」の数が増えたことを確認する
動作確認
以下の作業を実施して、起動させた新しいインスタンスに異常がないかを確認する
- 新規に用意したインスタンスにアクセスログが流れるか
- 既存のインスタンス上のプロセスを停止してもサイトが正常に表示されるか
- 管理ページへのログインができるか
- メディアファイルは正常に読めるか
- 既存のインスタンス上のプロセスを止めた状態で記事投稿(下書き保存)したのち新規のインスタンス上のプロセスを停止、既存のインスタンス復帰したとき、投稿した記事が正常に読めるか
これでいざとなったらWebサーバだけ複製してリクエストに耐えるといったこともやりやすくなった。そろそろイベント関連の記事投稿し始めるかな。