本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立規模的步驟縮放政策
若要為 Auto Scaling 群組中的縮放建立步驟縮放政策,請使用下列其中一種方法:
- Console
-
步驟 1:建立量度低臨界值的 CloudWatch 警示
在開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/
。 -
如有必要請變更區域。請在導覽列中選擇 Auto Scaling 群組所在的區域。
-
在導覽窗格中,選擇 Alarms, All alarms (警示,所有警示),然後選擇 Create alarm (建立警示)。
-
選擇選取指標。
-
在「所有量度」標籤上 EC2,選擇「依 Auto Scaling 群組」,然後在搜尋欄位中輸入「Auto Scaling」群組的名稱。然後,選取
CPUUtilization
並選擇 Select metric (選取指標)。Specify metric and conditions (指定指標和條件) 頁面隨即出現,顯示指標的圖表及其他資訊。 -
針對 Period (期間),選擇警示的評估期間,例如 1 分鐘。評估警示時,每個期間都會彙整為一個資料點。
注意
期間越短會建立更敏感的警示。
-
在 Conditions (條件) 下,執行下列動作:
-
對於 Threshold type (閾值類型),選擇 Static (靜態)。
-
針對「無論何時為」,指定您
CPUUtilization
是否希望量度值小於或小於或等於臨界值以違反警示。然後,在 than (比) 下,輸入您要設定為超標警示的閾值。重要
若要讓警示與原則中的規模 (量度低) 搭配使用,請確定您不要選擇大於或大於或等於臨界值。
-
-
在 Additional configuration (其他設定) 下,請執行下列動作:
-
針對 Datapoints to alarm (要警示的資料點),輸入資料點 (評估期間),在此期間指標值必須符合警示的閾值條件。例如,連續兩個 5 分鐘即表示需時 10 分鐘才會呼叫警示狀態。
-
對於 Missing data treatment (遺失資料處理),選擇 Treat missing data as bad (breaching threshold) (將遺失資料視為不良 (違反閾值))。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的設定 CloudWatch 警示如何處理遺失的資料。
-
-
選擇 Next (下一步)。
Configure actions (設定動作) 頁面隨即顯示。
-
在「通知」下,選取要在警示
ALARM
處於狀態、OK
狀態或INSUFFICIENT_DATA
狀態時通知的 Amazon SNS 主題。若要讓警示針對相同的警示狀態或不同警示狀態傳送多個通知,請選擇 Add notification (新增通知)。
若要讓警示不傳送通知,請選擇 Remove (移動)。
-
您可以將 Configure actions (設定動作) 頁面的其他區段保留空白。將其他區段保留空白會建立警示,而不會將其與擴展政策建立關聯。然後,您可以從 Amazon EC2 Auto Scaling 主控台將警示與擴展政策相關聯。
-
選擇 Next (下一步)。
-
輸入名稱 (例如
Step-Scaling-AlarmLow-RemoveCapacity
),選擇性地輸入警示描述,然後選擇 Next (下一步)。 -
選擇 Create alarm (建立警示)。
建立 CloudWatch 鬧鐘後,請使用下列步驟繼續上次中斷的地方。
步驟 2:建立規模的步驟調整政策
在開啟 Amazon EC2 主控台 https://console.aws.amazon.com/ec2/
,然後從導覽窗格中選擇 Auto Scaling 群組。 -
選取 Auto Scaling 群組旁的核取方塊。
頁面底部會開啟一個分割窗格。
-
確認已將擴展限制設定妥當。例如,如果您群組的所需容量已經達到最低限度,您必須指定新的最小容量才能擴充。如需詳細資訊,請參閱設定 Auto Scaling 群組的擴展限制。
-
在 Automatic scaling (自動擴展) 索引標籤的 Dynamic scaling policies (動態擴展政策) 中,選擇 Create dynamic scaling policy (建立動態擴展政策)。
-
針對 [原則類型],選擇 [步驟調整],然後指定原則的名稱。
-
對於CloudWatch 鬧鐘,請選擇您的鬧鐘。如果您尚未建立鬧鐘,請選擇 [建立 CloudWatch 鬧鐘],並完成上一個程序中的步驟 4 到步驟 14 來建立鬧鐘。
-
使用 Take the action (採取動作) 指定此政策將進行的目前群組大小變更。您可以移除特定數量的執行個體,或現有群組大小的百分比,或將群組設為確切大小。
例如,若要在原則中建立將群組容量減少兩個執行個體的擴展,請選擇
Remove
,2
在下一個欄位中輸入,然後選擇capacity units
。根據預設,此步進調整的上限即為警示閾值,而下限為無限小負數 (-) 值。 -
若要新增另一個步進,請選擇 Add step (新增步進),然後定義擴展量,以及相對於警示閾值的步進下限與上限。
-
選擇 Create (建立)。
- AWS CLI
-
若要建立縮放 (減少容量) 的步驟調整政策,您可以使用下列範例命令。替換每個
user input placeholder
使用您自己的信息。使用時 AWS CLI,您首先建立步驟擴展政策,該政策會向 Amazon EC2 Auto Scaling 提供有關如何在指標值減少時擴展的相關說明。然後,您可以識別要監視的指標、定義警示的量度低臨界值和其他詳細資訊,以及將警示與資源調度政策建立關聯,以建立警示。
步驟 1:建立規模的政策
使用下列put-scaling-policy命令建立名為的步驟調整政策
my-step-scale-in-policy
,調整類型為ChangeInCapacity
,當關聯 CloudWatch 警示違反指標低臨界值時,群組的容量會減少 2 個執行個體。aws autoscaling put-scaling-policy \ --auto-scaling-group-name
my-asg
\ --policy-namemy-step-scale-in-policy
\ --policy-type StepScaling \ --adjustment-type ChangeInCapacity \ --step-adjustments MetricIntervalUpperBound=0.0
,ScalingAdjustment=-2
記錄政策的 Amazon 資源名稱(ARN)。您需要它來建立原則的 CloudWatch 警示。
{ "PolicyARN": "arn:aws:autoscaling:
region
:123456789012
:scalingPolicy:ac542982-cbeb-4294-891c-a5a941dfa787
:autoScalingGroupName/my-asg
:policyName/my-step-scale-out-policy
}步驟 2:建立量度低臨界值的 CloudWatch 警示
使用下列 CloudWatch put-metric-alarm命令建立警示,根據平均CPU臨界值 40%,在至少兩個連續兩分鐘的評估期間內,減少 Auto Scaling 群組的大小。若要使用自訂指標,請於
--metric-name
中指定它的名稱,於--namespace
中指定它的命名空間。aws cloudwatch put-metric-alarm --alarm-name
Step-Scaling-AlarmLow-RemoveCapacity
\ --metric-nameCPUUtilization
--namespaceAWS/EC2
--statistic Average \ --period120
--evaluation-periods2
--threshold40
\ --comparison-operator LessThanOrEqualToThreshold \ --dimensions "Name=AutoScalingGroupName,Value=my-asg
" \ --alarm-actionsPolicyARN