AutoScalingとは
オートでスケーリングしてくれるすごいヤツ。
主要な対象サービス
EC2
Aurora
DynamoDB
ECS
ElastiCache
EMR
SageMaker
他
スケーリングの種類
-
動的なスケーリング
- 簡易スケーリング(非推奨)
- CPU使用率が〇〇%を超えたら…とかそういう単純なやつ
- ステップスケーリング
- CPU使用率が50%を超えたら〇〇する、60%を超えたら△△する、みたいに多段階に設定できる。一個だけでもいいので簡易スケーリングの完全上位互換。
- ターゲット追跡スケーリング (推奨)
- CPU使用率がxx%になるようにしてね、と指定するといい感じに自動でスケールイン、アウトしてくれる。
※上ではCPU使用率を例にしたが、使用できるメトリクスは色々ある
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html
- CPU使用率がxx%になるようにしてね、と指定するといい感じに自動でスケールイン、アウトしてくれる。
- 簡易スケーリング(非推奨)
-
予測スケーリング
- 機械学習で稼働状況を予測して勝手にスケーリングしてくれるすごいヤツ。
- 「通常の営業時間にはリソースの使用率が高く、夜間や週末はリソースの使用率が低いといったサイクルがあるトラフィック」みたいに需要の変動がある(が、特定の日時ではない)ことが問題文に示唆されていたらこれを選ぶ。
-
スケジュールスケーリング
- 手動でスケーリングの日時を指定する。
- 「毎月1日にバッチ処理が実行され~」とか特定の日時のみに需要が増大することが問題文に示唆されていたらこれを選ぶ。