スケーリンググループの有効化
説明
(1) 指定したスケーリンググループを有効にします。
- スケーリンググループが正常に有効になると (グループがアクティブになると)、インターフェイスで指定した ECS インスタンスがグループにアタッチされます。
- インターフェイスで指定した ECS インスタンスがアタッチされても、スケーリンググループに現在含まれている ECS インスタンスの数が依然として MinSize を下回る場合は、下回らないように従量課金モードの ECS インスタンスが自動的に作成されます。たとえば、スケーリンググループが MinSize = 5 で作成されており、スケーリンググループを有効にするときに InstanceId.N パラメーターで 2 つの既存の ECS インスタンスを指定したとします。この場合、Auto Scaling サービスにより 2 つの ECS インスタンスがスケーリンググループにアタッチされ、その後、3 つの追加の ECS インスタンスが自動的に作成されます。
(2) インターフェイスを呼び出すことができるのは、スケーリンググループが非アクティブのときに限られます。
(3) スケーリンググループにアクティブなスケーリング設定がない場合は、スケーリンググループを有効にするときにスケーリング設定を入力する必要があります。
- 1 つのスケーリンググループでアクティブにできるスケーリング設定は一度に 1 つのみです。
- スケーリンググループを有効にする前にアクティブなスケーリング設定が作成されていた場合は、インターフェイスを通じて入力された新しいアクティブなスケーリング設定により、以前のスケーリング設定が非アクティブになります。
(4) ECS インスタンスのアタッチに関する制限
- アタッチする ECS インスタンスとスケーリンググループが同じリージョンに存在する必要がある。
- アタッチする ECS インスタンスとアクティブなスケーリング設定を持つインスタンスが同じタイプでなければならない。
- アタッチする ECS インスタンスが Running ステータスでなければならない。
- アタッチする ECS インスタンスが他のスケーリンググループにアタッチされていない。
- アタッチする ECS インスタンスがサブスクリプションと従量課金の両方の課金方法に対応している。
- スケーリンググループで VswitchID が指定されている場合は、クラシックタイプのECSインスタンスや、別 VPC のインスタンスをスケーリングループにアタッチできない。
- スケーリンググループで VswitchID が指定されてない場合は、VPC タイプの ECS インスタンスをスケーリンググループにアタッチできない。
(5) インターフェイスで指定したインスタンスとスケーリンググループのインスタンスの数 (合計容量) が MaxSize を超えると、呼び出しが失敗します。
リクエストパラメーター
名前 | 型 | 必須かどうか | 説明 |
---|---|---|---|
Action | String | はい | 操作インターフェイス名、必須パラメーター。値: EnableScalingGroup。 |
ScalingGroupId | String | はい | スケーリンググループ ID。 |
ActiveScalingConfigurationId | String | いいえ | スケーリンググループでアクティブにするスケーリング設定の ID。 |
InstanceId.N | String | いいえ | 有効にした後にスケーリンググループにアタッチする ECS インスタンスの ID。最大 20 個の ID を入力できます。 |
リターンパラメーター
パブリックパラメーター
エラーコード
すべてのインターフェイスに共通のエラーについては、Client Error Table または Server Error Tableを参照してください。
エラー | エラーコード | 説明 | HTTP ステータスコード |
---|---|---|---|
指定したスケーリンググループがこのアカウントに存在しません。 | InvalidScalingGroupId.NotFound | 指定したスケーリンググループが存在しません。 | 404 |
Auto Scaling サービスに対して、Open API は完全には許可されていません。 | Forbidden.Unauthorized | 指定したアクションに必要な許可が付与されていません。 | 403 |
指定したスケーリンググループは、Deleting 状態です。 | IncorrectScalingGroupStatus | 指定したスケーリンググループの現在のステータスでは、このアクションを実行できません。 | 400 |
指定したスケーリング設定がスケーリンググループに存在しません。 | InvalidScalingConfigurationId.NotFound | 指定したスケーリング設定が存在しません。 | 404 |
指定したスケーリング設定とアクティブなスケーリング設定のインスタンスタイプが一致しません。 | InvalidScalingConfigurationId.InstanceTypeMismatch | 指定したスケーリング設定と既存のアクティブなスケーリング設定のインスタンスタイプが異なります。 | 400 |
スケーリンググループでアクティブなスケーリング設定が指定されていません。 | MissingActiveScalingConfiguration | 指定したスケーリンググループでアクティブなスケーリング設定が指定されていません。 | 400 |
指定した ECS インスタンスがこのアカウントに存在しません。 | InvalidInstanceId.NotFound | インスタンス XXX が存在しません。 |
404 |
指定した ECS インスタンスとスケーリンググループが同じリージョンにありません。 | InvalidInstanceId. RegionMismatch | インスタンス XXX と指定したスケーリンググループが同じリージョンにありません。 |
400 |
指定した ECS インスタンスとスケーリング設定のインスタンスタイプが一致しません。 | InvalidInstanceId. InstanceTypeMismatch | インスタンス XXX と既存のアクティブなスケーリング設定のインスタンスタイプが異なります。 |
400 |
指定した ECS インスタンスが Running ステータスではありません。 | IncorrectInstanceStatus | インスタンス XXX の現在のステータスでは、このアクションを実行できません。 |
400 |
指定した ECS インスタンスとスケーリング設定のネットワークタイプが一致しません。 | InvalidInstanceId. NetworkTypeMismatch | インスタンス XXX のネットワークタイプでは、このアクションを実行できません。 |
400 |
指定したスケーリンググループとアタッチした ECS インスタンスが同じ VPC にありません。 | InvalidInstanceId.VPCMismatch | インスタンス “XXX” と指定したスケーリンググループが同じ VPC にありません。 | 400 |
指定した ECS インスタンスは別のスケーリンググループにアタッチされています。 | InvalidInstanceId.InUse | インスタンス XXX は既に別のスケーリンググループにアタッチされています。 |
400 |
指定した Server Load Balancer インスタンスがアクティブではありません。 | IncorrectLoadBalancerStatus | 指定した Load Balancer の現在のステータスでは、このアクションを実行できません。 | 400 |
指定した Server Load Balancer インスタンスのヘルスチェックが有効ではありません。 | IncorrectLoadBalancerHealthCheck | 指定した Load Balancer の現在のヘルスチェックタイプでは、このアクションを実行できません。 | 400 |
指定した Server Load Balancer に含まれる ECS インスタンスのネットワークタイプが、スケーリンググループのネットワークタイプと異なります。 | InvalidLoadBalancerId.IncorrectInstanceNetworkType | 指定した Load Balancer のインスタンスのネットワークタイプでは、このアクションを実行できません。 | 400 |
指定した Server Load Balancer に含まれる ECS インスタンスと VSwitchId が同じ VPC にありません。 | InvalidLoadBalancerId.VPCMismatch | 指定した仮想スイッチと指定した Load Balancer のインスタンスが同じ VPC にありません。 | 400 |
指定した RDS インスタンスが実行中ではありません。 | IncorrectDBInstanceStatus | DB インスタンス “XXX” の現在のステータスでは、このアクションを実行できません。 | 400 |
ECS インスタンスをアタッチした後の合計容量が MaxSize を超えています。 | IncorrectCapacity.MaxSize | インスタンスをアタッチすると、合計容量が最大サイズを超えます。 | 400 |
例
リクエストの例
http://ess.aliyuncs.com/?Action=EnableScalingGroup
&ScalingGroupId=dmIDKNcyWfzncX9MWX1bwFV
&InstanceId.1=i-283vvyytn
&<Public Request Parameters>
戻り値の例
XML 形式
< EnableScalingGroupResponse>
<RequestId>6469DCD0-13AC-487E-85A0-CE4922908FDE</RequestId>
</ EnableScalingGroupResponse>
JSON 形式
{
"RequestId": "6469DCD0-13AC-487E-85A0-CE4922908FDE"
}