【新サービス】AutoScalingの新ダッシュボードが発表されました!
ご機嫌いかがでしょうか、豊崎です。
AWSから新サービス、AWS Auto Scalingのリリースが発表されました。AWSマネジメントコンソールに、新しくAWS Auto Scalingのダッシュボードができていましたのでご紹介したいと思います。
New AWS Auto Scaling – Unified Scaling For Your Cloud Applications
専用ダッシュボードを利用することで、CloudFormation、または AWS Elastic Beanstalk で構築されたAutoScalingグループに対してスケーリングポリシー、CloudWatchアラーム(トリガー)の設定を行うことができます。
対象サービス
執筆時点では、以下のサービスに対応しています。
- EC2 Auto Scaling groups
- EC2 Spot Fleets
- ECS tasks
- DynamoDB tables
- DynamoDB Global Secondary Indexes
- Aurora Replicas
また、対象サービスはCloudFormation、または AWS Elastic Beanstalkで構築されている必要があります。
リージョン
執筆時点では、以下リージョンで利用が可能です。
- US East (Northern Virginia)
- US East (Ohio)
- US West (Oregon)
- EU (Ireland)
- Asia Pacific (Singapore)
やってみた
準備
まずはテスト環境を作成します。
AWSから提供されている以下のテンプレートをベースに環境を作っていくことにします。
AutoScalingダッシュボードからスケーリング設定を行うには、AutoScalingグループのスケーリングポリシーが空である必要があるため、 上記テンプレートの「Resources」の中から以下を削除しました。
- WebServerScaleUpPolicy
- WebServerScaleDownPolicy
- CPUAlarmHigh
- CPUAlarmLow
修正したテンプレートを利用して、シンガポールリージョンにCloudFormationから「demo」テスト環境を構築します。
※キーペアは事前に作成する必要があります。また、デフォルトではSSHの設定が「0.0.0.0/0」になっているので、適宜修正をお願いします。
スケーリング計画の作成
それでは実際にAutoScalingのダッシュボードからスケーリング計画の作成をしてみます。
まずは、AWSマネジメントコンソールでAutoScalingダッシュボードを探しましょう。
シンガポールリージョンであることを確認して、「今すぐ始める」からスケーリング計画(スケーリングポリシーとトリガー用のCloudWatchアラーム)を作っていきます。
以下画面で先ほど作成したCloudFormationスタックを選択して「次へ」をクリックします。
スケーリング計画の名前を決めます。ここでは「demo-scaling-plan」としました。
次に、スケーリング計画の戦略を以下4つの中から選択します。
戦略 | ターゲット値(CPU) | 台数(Min) | 台数(Max) |
可用性を考えた最適化 | 40% | 1台 | 5台 |
可用性とコストのバランスをとります | 50% | 1台 | 5台 |
コストに合わせて最適化 | 70% | 1台 | 5台 |
カスタム | 任意 | 1台 | 5台 |
ここでは「可用性を考えた最適化」を選択して「次へ」進みます。
上記で選択したポリシーが適用されるCloudFormationスタック内のAutoScalingグループを確認して、「スケーリング計画の作成」をクリックします。
スケーリング計画が作成され、しばらくするとステータスが「Active」になります。
作成されたスケーリングポリシーは1つのポリシーで以下の様に記載されます。
CloudWatchダッシュボードではスケールアウト、スケールインのCloudWatchアラームの設定が確認できます。
スケールアウト
スケールイン
さいごに
今まで各AutoScalingグループごとにスケールポリシー、CloudWatchアラームの設定を行う必要がありましたが、この新機能を利用すれば、簡単に複数のAutoScalingグループに同じ設定を行うことができます。システムごとに一律の設定を行う場面で活躍しそうです。この記事が誰かの役にたてば幸いです。