0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Auto Scalingターゲットトラッキングポリシー

Posted at

Auto Scaling の ターゲットトラッキングポリシー(Target Tracking Scaling Policy) は、
特定のメトリクスの目標値(ターゲット)を維持するように、自動でスケーリングを行う仕組みです。


✅ 概要

  • あらかじめ指定したメトリクスの目標値(ターゲット) に基づいて、
    EC2 Auto Scaling グループの インスタンス数を自動で増減します。
  • メトリクスが目標より上がるとスケールアウト(増加)し、
    下がるとスケールイン(減少)します。

🎯 代表的なターゲットメトリクス例

メトリクス 説明
CPU使用率(CPUUtilization) 一般的に最もよく使われる指標
アプリケーションロードバランサーのリクエスト数 Target Group あたりのリクエスト量
カスタムメトリクス(CloudWatch) 独自のメトリクス(例:メモリ使用率など)

🔧 設定項目の例

設定項目 説明
メトリクスの種類 CPU利用率やALBのリクエスト数など
ターゲット値 例:CPU使用率 60% を維持したい
クールダウン時間(推奨設定) スケーリング直後の安定期間を指定

🔁 自動調整の仕組み

たとえば、以下のようなポリシーを設定したとします:

  • ターゲット:CPU使用率 60%
  • 現在:インスタンス数 2台で CPU使用率が 80%

この場合、CloudWatch のアラームがトリガーされてスケールアウトされ、
例えば 3台に増えることで CPU負荷が分散 → 60% 付近に近づきます。


📈 比較:他のスケーリングポリシーとの違い

ポリシー名 特徴
ターゲットトラッキング 目標を維持する(自動制御)
ステップスケーリング 閾値超過の「幅」に応じてスケール幅を手動設定
シンプルスケーリング アラームを条件に一定数だけ増減

→ 通常は「ターゲットトラッキング」が最も簡単で精度も良いため 推奨 されています。


🛠️ 設定例(AWS CLI)

aws autoscaling put-scaling-policy \
  --policy-name keep-cpu-60 \
  --auto-scaling-group-name my-asg \
  --policy-type TargetTrackingScaling \
  --target-tracking-configuration file://config.json

config.json の例:

{
  "PredefinedMetricSpecification": {
    "PredefinedMetricType": "ASGAverageCPUUtilization"
  },
  "TargetValue": 60.0,
  "DisableScaleIn": false
}

✅ メリット

  • 設定が簡単(メトリクスと目標値を決めるだけ)
  • 過剰なスケーリングを防止
  • 需要に自動で追従しやすい(コスト最適化)

✅ まとめ

項目 内容
概要 メトリクスのターゲット値に自動調整
主な用途 CPU使用率、リクエスト数などの自動負荷分散
推奨度 高(他のスケーリング方式より使いやすい)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?