auto scalingの薄い資料
TRANSCRIPT
![Page 1: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/1.jpg)
Auto Scalingの薄い説明書第一版
サーバーワークス/AWS事業部 テクニカルグループ柳瀬 任章(@oko_chang)
![Page 2: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/2.jpg)
変更履歴• 2013年 3月:新規
• 2013年 8月:修正
• Scale OutとInの記載ミス、所属変更
![Page 3: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/3.jpg)
目次• 背景
• 課題
• 対策
• Auto Scalingの説明
• インストール
• サンプル設定方法
![Page 4: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/4.jpg)
背景
![Page 5: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/5.jpg)
とあるプロジェクトで新しいサービスをAWSで構築して良かったですね。
安定して動いてるみたいです。
そうだね、最近アクセスも増えてサービスとしても順調で何よりだね。
もう少し、EC2の台数増やしてみましょうか?Auto Scalingを使うと良いかもしれません。
イイね。さっそく導入を進めてみてよ。
![Page 6: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/6.jpg)
数日後
そういえばAuto Scalingはどうなった?
あ、いえ、その…。
何か問題でもあったのかな?
ちょっと設定が複雑で時間がかかりそうです。
![Page 7: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/7.jpg)
_人人人人人人人人人人人人人_> 難しいのでペンディング < ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄
![Page 8: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/8.jpg)
課題
![Page 9: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/9.jpg)
現状の問題点• 設定方法が複雑
• 設定箇所が複数ありイメージが困難
• Management Consoleで設定出来ない
• ブログなどで公開されているものの、手順だけを記載したものが多い
使いはじめるにはハードルが高い
![Page 10: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/10.jpg)
対策
![Page 11: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/11.jpg)
• 設定を開始する前に全体を把握
• どんな設定をするか概要を把握して恐怖感をなくす
最初に概要を把握
Auto Scalingの薄い説明書が必要
![Page 12: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/12.jpg)
Auto Scalingの説明
![Page 13: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/13.jpg)
Auto Scalingとは?• 条件に応じてEC2を拡張/縮小
• 負荷が増えたら台数増やす
• 負荷が減ったら台数減らす
![Page 14: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/14.jpg)
Auto Scalingで設定するもの• 大きく以下の6つを設定します
• Launch Config
• Auto Scaling Group
• Scale Out Policy
• Scale Out Alarm
• Scale In Policy
• Scale In Alarm
![Page 15: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/15.jpg)
全体像
![Page 16: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/16.jpg)
①Launch Config• 起動するEC2の設計書
• 起動するAMI
• インスタンスタイプ
• SSHキー
• セキュリティグループ
EC2を起動するときに指定するものと同じ
![Page 17: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/17.jpg)
②Auto Scaling Group• Auto Scaling全体の設計
• 使用するLaunch Config
• 最大起動台数
• 最小起動台数
• 使用するAZ
• 使用するELB(必須ではない)
• ヘルスチェックの設定
![Page 18: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/18.jpg)
③Scale Out Policy• スケールアウト設計書
• 増加させる台数
• スケール後の待機時間
![Page 19: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/19.jpg)
④Scale Out Alarm• 監視閾値とアクションの設計
• CloudWatchの監視間隔
• 監視する対象を指定
• 監視に使うメトリクス(CPU使用率など)
• 閾値となる数値
• 閾値に対する比較演算子
• アクションを実行までの評価回数
• 閾値に達した場合に実行するアクション
• アクションはScale Out Policy
![Page 20: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/20.jpg)
⑤Scale In Policy• スケールアウト設計書
• 減少させる台数
• スケール後の待機時間
![Page 21: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/21.jpg)
⑥Scale In Alarm• 監視閾値とアクションの設計
• CloudWatchの監視間隔
• 監視する対象を指定
• 監視に使うメトリクス(CPU使用率など)
• 閾値となる数値
• 閾値に対する比較演算子
• アクションを実行までの評価回数
• 閾値に達した場合に実行するアクション
• アクションはScale In Policy
![Page 22: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/22.jpg)
サンプル設定
![Page 23: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/23.jpg)
Launch Config$ as-create-launch-config demo-lc \--image-id ami-xxxxxxxx \--instance-type t1.micro \--key demo_key \--group demo_security_group
![Page 24: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/24.jpg)
Auto Scaling Group$ as-create-auto-scaling-group demo-as-group \--launch-configuration demo-lc \--availability-zones us-east-1a us-east-1b \--min-size 2 \--max-size 4 \--load-balancers "demo-elb" \--health-check-type ELB \--grace-period 60
![Page 25: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/25.jpg)
Scale Out Policy$ as-put-scaling-policy demo-scaleout-policy \--auto-scaling-group demo-as-group \--type ChangeInCapacity \--adjustment=2 \--cooldown 600
![Page 26: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/26.jpg)
Scale Out Alarm$ mon-put-metric-alarm demo-scaleout-alarm \--period 300 \--dimensions "AutoScalingGroupName=demo-as-group" \--namespace "AWS/EC2" \--metric-name CPUUtilization \--evaluation-periods 1 \--statistic Average \--threshold 70 \--comparison-operator GreaterThanThreshold \--alarm-actions arn:aws:autoscaling:us-east-1:123456789012:scalingPolicy:xxxxxxxxx-e103-4efe-xxxx-59be5c870198:autoScalingGroupName/demo-as-group:policyName/demo-scaleout-policy \
--alarm-actionsはscale out policy作成時に出力されたものを指定します
![Page 27: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/27.jpg)
Scale In Policy$ as-put-scaling-policy demo-scalein-policy \--auto-scaling-group demo-as-group \--type ChangeInCapacity \--adjustment=-2 \--cooldown 600
![Page 28: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/28.jpg)
Scale In Alarm$ mon-put-metric-alarm demo-scalein-alarm \--period 300 \--dimensions "AutoScalingGroupName=demo-as-group" \--namespace "AWS/EC2" \--metric-name CPUUtilization \--evaluation-periods 1 \--statistic Average \--threshold 30 \--comparison-operator LessThanThreshold \--alarm-actions arn:aws:autoscaling:us-east-1:123456789012:scalingPolicy:xxxxxxxxx-e103-4efe-xxxx-59be5c870198:autoScalingGroupName/demo-as-group:policyName/demo-scalein-policy \
--alarm-actionsはscale in policy作成時に出力されたものを指定します
![Page 29: Auto Scalingの薄い資料](https://reader033.vdocuments.mx/reader033/viewer/2022052315/55660ac6d8b42aa6628b5080/html5/thumbnails/29.jpg)
ありがとうございました詳しくは公式ドキュメントをご覧ください