概要
① CPUの使用率の閾値(例:60%)を超えると新しいインスタンスを立ち上げる
② AWS EC2を利用
アラームの作成
CPU使用率(CPUUtilization)をメトリクスとし、インスタンス生成の判断基準とします。
アクションは何かを追加してもOKだが、後でサーバー追加・サーバー削除する際に通知をするのでここでは空にした。
>>アラームの準備が出来たので、アラームを検知すると起動するインスタンスを準備する。
スケールさせるイメージを作る前の準備
オートスケールで起動したインスタンスのコードは古いままになってしまうため、起動時にgitリポジトリから最新のコードを取得するようにする。
Gitから最新のコードを取得するスクリプト
self-deploy.sh
cd {git-repository}
git pull origin master
起動時にスクリプトを実行させるようにcronを設定
crontab-l
@reboot /home/ubuntu/self-deploy.sh
スケールさせるイメージの作成
起動設定(テンプレート)の作成
EC2画面の左サイドメニューの下の方に「AUTO SCALING」がある。
そこからAuto Scaling グループを作成する
これでテンプレート(起動設定)が完了。
そのまま続けます。
Auto Scaling グループの作成
※ 新しく建てたインスタンスのCPU使用率が20%を切ったらインスタンス削除する設定を入れておく
※ インスタンスの起動・終了時に通知を行うようにしてもらう。
[動作確認] CPU使用率により新しくインスタンスが立ち上がる
初めてオートスケール行いました。
これで急激なアクセス集中が来ても手動スケールアウトから解放される・・・かも・・・?