[AWS SAA取得向け] ~Auto Scaling~

[AWS SAA取得向け] ~Auto Scaling~

AWSの資格の一つであるSAAで出題されるであろうAuto Scalingについて記載しています。

Case1

フォールトトレランス性を求めるならば、1つのAZ障害児も、残りのAZでアプリケーションが100%稼働できるようにする。

複数AZにまたがったアプリケーション利用の場合、1つのAZがオフラインで、新しいインスタンスが起動負荷であっても、アプリケーションが完全に利用可能な状態(フォールトトレランス性)が求められる場合もあります。
例えばELB、 Auto Scalingの構成で、Auto Scalingのピーク負荷の最小値の設定をつぎの図のようにします。

このように、3つのAZであれば、50% + 50% +50%をピーク負荷の最小値に設定していれば、1つのAZあオフラインになった場合でも、残り2宇で100%になりますので、アプリケーションは完全な状態で利用可能です。

「完全に利用可能な状態」というシナリオであるため、1AZの障害時も100%の稼働という点がポイントです。
SAA試験では50%ではなくて33%という選択肢が示されることも考えられます。その場合1AZダウン時に、残りのAZ合計では66%稼働になるため、誤答です。

Case2

アプリケーションが同じ時間に複数回、スケールアップとスケールダウンを繰り返している場合は、安定させるためにクールダウンタイマーを増やす。

Auto Scaling の目的は、サーバーアクセスの機会損失を提言するとともに、無駄なサーバー起動を減らしコスト効果を高めることにあります。そのためのスケールアウトとスケールインなのですが、頻繁に行い過ぎると、起動時間に時間がかかって適切ではありません。
 そこで、システムの動作を安定させるのに、クールダウンタイマーをセットします。これはスケーリングアクション実行後、指定した時間内は、次のスケーリングアクションを実行しない仕組みです。クールダウン期間を長めに設定することにより、AutoScalingグループが追加の新しいインスタンスを不必要に起動または削除することがなくなり、安定化します。

この場合、クールダウンタイマーの設定が適切ですが、Auto Scaling終了ポリシーで一番古いインスタンスから終了するといった内容が出題されることも想定されます。ただし、安定化という鑑定からは終了ポリシーは関係ありません。問われている要件の確認が大切です。