WordPress、プラグインのアップデートしてBlue/Greenデプロイ
2021/07/10
現在のブログの構成です。
WordPressとプラグインのアップデートをして、デプロイしました。
まずEC2 Auto Scalingでインスタンス数を1にしました。
この状態にします。
4サイトをNginxバーチャルホストで公開していて、CloudFront経由にしています。
ローカルでhosts書き換えてアップデート用のEC2インスタンスを用意してAMI作ってもいいのですが、面倒なので、直接アップデートします。
TerminateされるEC2インスタンスがDrainingになりました。
Terminateされました。
作業を開始します。
まず、WrodPressとプラグインをアップデートしました。
静的なコンテンツはS3から配信しているので、SystemsManagerセッションマネージャからS3 Syncを実行しました。
これでアップデートされたローカルのファイルをアップロードできます。
静的ではないS3には要らないファイルもアップロードされますが、別にいいです。
4サイト分です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
cd /usr/share/nginx aws s3 sync uriwari/wp-content s3://yamamugi-uriwari/wp-content aws s3 sync uriwari/wp-includes s3://yamamugi-uriwari/wp-includes aws s3 sync eight/wp-content s3://yamamugi-bangai/wp-content aws s3 sync eight/wp-includes s3://yamamugi-bangai/wp-includes aws s3 sync charinko/wp-content s3://yamamugi-chari/wp-content aws s3 sync charinko/wp-includes s3://yamamugi-chari/wp-includes aws s3 sync yamamanx/wp-content s3://yamamugi/wp-content aws s3 sync yamamanx/wp-includes s3://yamamugi/wp-includes |
ユーザーデータでは実行しているのですが、毎回起動時に時間をかけるのもあれなので、ついでにyum updateもかけておきました。
1 2 |
sudo yum update -y |
あと、少しプラグインの調整とか気になっていたとこを設定しました。
OKそうなのでAMIを作成しました。
新しいAMIで起動テンプレートの新しいバージョンを作成しました。
そしてデフォルトバージョン設定しました。
EC2 Auto Scalingのインスタンス数を3にしました。
新しいAMIで2つのインスタンスが追加されました。
1 2 |
sudo tail -f /var/log/nginx/access.log |
追加されたインスタンスにSystesm Managerセッションマネージャーでアクセスして、access.logを見てみて、問題なさそうでした。
EC2 Auto Scalingのインスタンス数を2にしました。
古いインスタンスが終了しました。
デプロイ完了しました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
東京リージョンでAWS Control Towerランディングゾーンをセットアップする
AWS Control Towerの最初の画面で[ランディングゾーンの設定]を押 …
-
AWS Glueチュートリアル
AWS Glueのマネジメントコンソールの左ペインの一番下にチュートリアルがあり …
-
AWS Summit Tokyo 2017 聴講したセッションのメモ
2017年6月に参加しましたAWS Summitで聴講したセッションのメモを記し …
-
PyCharmにAWS CloudFormationプラグインをインストールして入力補完してみる
JetBrainsのPython統合開発環境(IDE)のPyCharmを1年ちょ …
-
Backlogの課題チケット更新内容をMicrosoft Teamsに通知する(AWS Lambda Python)
BacklogにSlack連携が追加されました。 ですが、私の所属している会社で …
-
API GatewayからLambdaを介さずにSNSトピックへ送信
やりたいこと APIリクエストをまずLambdaで受けて、SNSトピックへ送信す …
-
EC2インスタンスの起動で、–cli-input-jsonと–cli-input-yamlを使いました
AWS CloudShellから実行しました。 JSON実行 [crayon-6 …
-
Transit GatewayポリシーテーブルでCloud WANのコアネットワークに接続しました
「ポリシーテーブルってなんですか?」のご質問をいただいたので設定してみました。 …
-
Lambdaでちょっとしたコードを試すときに便利なエディタのフルスクリーン機能
Lambda歴6年で、はじめて使いました。 この存在に気がついてなかったです。 …
-
Amazon S3オブエジェクトへのリクエストをCloudTrail, Athenaで識別
こちらCloudTrail を使用した Amazon S3 リクエストの識別に書 …