建立目標追蹤擴展政策 - Amazon EC2 Auto Scaling

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立目標追蹤擴展政策

若要為 Auto Scaling 群組建立目標追蹤擴展政策,請使用下列其中一種方法。

開始之前,請確認您偏好的指標每隔 1 分鐘可用 (相比之下,Amazon EC2 指標的預設間隔為 5 分鐘)。

Console
建立新的 Auto Scaling 群組的目標追蹤擴展政策
  1. 前往網址 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台,然後從導覽窗格中選擇 Auto Scaling 群組

  2. 選擇 Create Auto Scaling group (建立 Auto Scaling 群組)。

  3. 在步驟 1、2 和 3 中,視需要選擇選項,並繼續進行 Step 4: Configure group size and scaling policies (步驟 4:設定群組大小和擴展政策)。

  4. 擴展下,透過更新所需容量下限所需容量上限,指定要在兩者之間擴展的範圍。這兩個設定可讓您的 Auto Scaling 群組進行動態擴展。如需詳細資訊,請參閱 設定 Auto Scaling 群組的擴展限制

  5. 自動擴展下,選擇目標追蹤擴展政策

  6. 若要定義政策,請執行下列的動作:

    1. 指定政策的名稱。

    2. Metric type (指標類型) 選擇指標。

      如果選擇了 Application Load Balancer request count per target (每個目標的 Application Load Balancer 請求計數),則在 Target group (目標群組) 中選擇目標群組。

    3. 指定指標的 Target value (目標值)。

    4. (選擇性) 對於「執行個體暖機」,請視需要更新執行個體暖機值。

    5. (選用) 選取 Disable scale in to create only a scale-out policy (停用縮減以僅建立擴增政策)。這可讓您建立所需不同類型的單獨縮減政策。

  7. 繼續建立 Auto Scaling 群組。您的擴展政策會在建立 Auto Scaling 群組之後建立。

建立現有 Auto Scaling 群組的目標追蹤擴展政策
  1. 前往網址 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台,然後從導覽窗格中選擇 Auto Scaling 群組

  2. 選取 Auto Scaling 群組旁的核取方塊。

    頁面底部會開啟一個分割窗格。

  3. 確認已將擴展限制設定妥當。例如,如果群組已達到所需容量上限,則需要指定新的上限,以便進行橫向擴展。如需詳細資訊,請參閱 設定 Auto Scaling 群組的擴展限制

  4. Automatic scaling (自動擴展) 索引標籤的 Dynamic scaling policies (動態擴展政策) 中,選擇 Create dynamic scaling policy (建立動態擴展政策)。

  5. 若要定義政策,請執行下列的動作:

    1. 對於政策類型,請保持目標追蹤擴展的預設值。

    2. 指定政策的名稱。

    3. Metric type (指標類型) 選擇指標。您只能選擇一種指標類型。若要使用多個指標,請建立多個政策。

      如果選擇了 Application Load Balancer request count per target (每個目標的 Application Load Balancer 請求計數),則在 Target group (目標群組) 中選擇目標群組。

    4. 指定指標的 Target value (目標值)。

    5. (選擇性) 對於「執行個體暖機」,請視需要更新執行個體暖機值。

    6. (選用) 選取 Disable scale in to create only a scale-out policy (停用縮減以僅建立擴增政策)。這可讓您建立所需不同類型的單獨縮減政策。

  6. 選擇建立

AWS CLI

若要建立目標追蹤擴展政策,您可以使用下列範例協助您開始使用。將每個使用者輸入預留位置替換為自己的資訊。

注意

如需更多範例,請參閱擴展政策的範例 AWS CLI

建立目標追蹤擴展政策 (AWS CLI)
  1. 使用下列cat命令將資源調度政策的目標值和預先定義的量度規格儲存在主目錄config.json中名為的 JSON 檔案中。以下是使平均 CPU 使用率維持在 50% 的目標追蹤組態範例。

    $ cat ~/config.json { "TargetValue": 50.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ASGAverageCPUUtilization" } }

    如需詳細資訊,請參閱 Amazon EC2 Auto Scaling API 參考PredefinedMetricSpecification中的一文。

  2. 使用命put-scaling-policy令以及您在上一個步驟中建立的config.json檔案來建立資源調度政策。

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

    如果成功,此指令會傳回代表您建立的兩個 CloudWatch 警報的 ARN 和名稱。

    { "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/cpu50-target-tracking-scaling-policy", "Alarms": [ { "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e", "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e" }, { "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2", "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2" } ] }