SAKU BLOG

Are you ready? I'm done

AWSのコンピューティングサービス【Auto Scaling】

概要

Auto Scalingは、安定した予測可能なパフォーマンスを可能な限り低コストで維持するために、アプリケーションをモニタリングし、容量を自動で調節します。


垂直スケーリングと水平スケーリング

インスタンスのスケーリングには2種類あります。
数の増減でスケーリングすることを水平スケーリング、インスタンスそのものの性能を変更することを垂直スケーリングといいます。

垂直スケーリング

インスタンスのサイズを変更することで、スケールアップ/スケールダウンをします。
変更前にシステムの設計変更が発生します。
サイズの上限はインスタンスタイプの最大サイズに限定します。

水平スケーリング

インタンス数を変更することで、スケールアウト/スケールインをします。
システムの設計変更は必要ありません。上限は理論的に無限大です。

水平スケーリングの方がスケールしやすく、Auto Scalingでは水平スケーリングを自動化します。


AutoScalingの設定

Auto Scaling実現には、「何を」「どこで」「いつ」の設定が必要です。

起動設定(何を)

起動設定とは、どのようなEC2インスタンスを起動するのかをあらかじめ設定しておくことです(EC2インスタンスの設定した内容とほぼ同じ)。

設定内容

  • IAM

  • インスタンスタイプ

  • IAMロール

  • ユーザーデータ

  • ストレージ

  • セキュリティグループ

  • キーペア

Auto Scalingグループ(どこで)

設定内容

  • 起動設定名

  • アベイラビリティゾーン(サブネット)

  • ELBのターゲットグループ

  • 最小/最大/希望するインスタンス数

  • 通知

  • タグ

Auto Scalingポリシー(いつ)

Auto Scalingポリシーには次の3タイプがあります。

ターゲットポリシー

Auto ScalingグループのEC2インスタンス平均CPU使用率などを決めること。
AWSが自動的に最小数と最大数の間でEC2を調整します。

シンプルポリシー

CloudWatchのアラームに基づいて、Auto Scalingアクションを実行します。
Auto Scalingアクションが連続で発生し、インスタンスが頻繁に起動/終了するのを防ぐのにクールダウンという機能を使用する。

ステップポリシー

複数段階でのインスタンの追加、削除を設定すること。
ウォームアップは、インスタンスが頻繁に追加されることを防ぎます。

Auto Scalingアクションは、時間を指定するスケジュールでも実行できます。

目次