稼働中のEC2を落とさないでALB下で切り替えた作業記録を書いてみます。こちら↓の方が詳しく書いてあります..。今回書いた記事の特徴は以下となります。デプロイの仕組みを構築する為の手順を紹介します。Blue/Greenデプロイとは?現在稼働している環境と別にもう1つ稼働環境を作成し、ロードバランサー等のルーティングを新環境に向けるデプロイ方法です。常にリクエストを受けている稼働中のサーバを置き換えるよりも安全にデプロイ可能なのがメリットになります。Green的な方法を導入してみた。ALBの下にWebサーバ1台。Webサーバの下にDB用EC2が1台(非RDS)。アップデート対象はWebサーバのみ。Webサーバ内でWordPressが12個、SNIで動いてる。x.smallクラス。CloudWatchを見るとLoadAverageは常時30%くらい。全てのサイトで、pluginでファイルとDBをS3にバックアップしている。update/動作確認後、止めずにansibleでdeploy。deploy実行前に”メンテナンス中”に設定。deploy完了後に解除する。アップデート中は管理画面操作禁止を通達。deploy、パッチ当てでコケると、S3から戻すまで止まる!S3から戻らないと終わる。やったことdeploy、アップデート時にのみ、WebサーバのEC2をコピーする。ALBのターゲットグループにコピーしたEC2を追加する。元のEC2に対してansibleでdeployする。元のEC2に対してパッチアップデートする。ALBの先を元のEC2に戻す。コピーしたEC2を削除する。元EC2と一時EC2のファイル達を同期させないといけないけれど、メンテ中は、管理画面操作を禁止できるという状況であることと、もともとEC2が1台なのでその仕組みを作っていないから、それは2台以上に増えたときに..。AMI作成まずAMIを作成。記録したテンプレートです。コピーであるインスタンスを起動します。複数のインスタンスを起動することができます。ダッシュボードからコピーしたいインスタンスを選択アクション->イメージ->イメージの作成を選択デフォルトだと、AMI作成時にコピー元インスタンスが自動的に停止し、コピー後に自動的に再起動する。“再起動しない”にチェックをいれることで、コピー元インスタンスの停止/再起動を抑止できる。“再起動しない”にチェックをいれないでAMIを作成すると、コピー元が止まってしまうので注意!イメージの作成を押下すると、作成処理が始まる。EBSが30GiBだと、完了まで1時間程度要してしまった。AMIの作成状況を確認できる。作成済みAMIからインスタンスを起動する。起動を押下すると、インスタンスタイプを聞かれる。進捗状況はEC2ダッシュボードで確認できる。ALBのターゲットグループに元EC2が属していて、セキュリティグループが正しく設定済みで、ヘルスチェックが通っている前提。現状、ALBの下は元EC2だけなので、AvailabilityZoneは1種類だけ。ターゲットグループそこに、新しく作成したインスタンスを追加する。新しいインスタンスのセキュリティグループを旧インスタンスに合わせてALBからのInboundを受けられるようにすること。新しいインスタンスのヘルスチェックが無事通って2台構成になった図。元のEC2をターゲットグループから削除する。EC2ダッシュボードのモニタリングタブをみて、CPU使用率などに変動があることを確認する。元のEC2に対してゴニョゴニョするALBのターゲットグループから外れた元のEC2に対してdeployなりパッチ当てを実行する。元のEC2にElasticIPを当てておけば、再起動してもIPアドレスは変わらない。この手順においては、新規作成したEC2にElasticIPを当てる必要はない。元のEC2のセキュリティグループを0.0.0.0/0:80からアクセスできるようにして、hostsにElasticIPを書いてアクセスするなどの方法で、元のEC2にアクセスする。このためだけにALBを作って置いておくとそのALBに対して課金されてしまう。新規作成したEC2を無料枠でやったりしてスペックが低いとパフォーマンスが下がる。非稼働のEC2に当てたElasticIPで課金される。一時EC2をターゲットグループから外し、元のEC2を投入する上の手順を逆から実施。一時EC2をターゲットグループから外し、元のEC2を投入する。コメントをキャンセルコメントを投稿するにはログインしてください。[ElasticBeanstalk構築編]今後も何度か同じことを調べそうなので忘備録としてまとめておく。stepで記述するが、それぞれ分量が多いので以下の通り章立てを行ってエントリを分割する。[RDS構築編]今後も何度か同じことを調べそうなので忘備録としてまとめておく。stepで記述するが、それぞれ分量が多いので以下の通り章立てを行ってエントリを分割する。[VPC作成編]今後も何度か同じことを調べそうなので忘備録としてまとめておく。stepで記述するが、それぞれ分量が多いので以下の通り章立てを行ってエントリを分割する。[Laravel5アプリデプロイ編]今後も何度か同じことを調べそうなので忘備録としてまとめておく。stepで記述するが、それぞれ分量が多いので以下の通り章立てを行ってエントリを分割する。(+S3)やりたいことは以下の2つ。x_0},\frac{\p...勾配の可視化2変数関数\(f(x_0,x_1)\)を各変数で偏微分する。この世界に中途半端に金をかけることの無意味さを理解したつもり。そのお...おっさんが数値微分を復習する引き続き、ゼロDの写経を続ける。今回は、学生の頃が懐かしい懐ワード、数値微分。Deepに入れないけれどおっさんの復習。近所の多摩川がマジで溢れそうでそれどころではなく......MNISTの手書き文字認識用データ取得クラスの作成MNISTから手書き文字認識用のデータセットをロードするクラスを作ってみた。出力層の総和を1にするように調整できれば、出力層を確率としてとらえることができるようになる。順伝搬(forward)はNumpyの積和計算を使って超絶簡単に記述できる。どちらの状態でもない過渡状態を経て状態が遷移するみたい。今回知...ansibleでaws-cliをインストやりたいことは以下の2つ。AFFINGER4.。