デプロイメントセットは、Elastic Compute Service (ECS) インスタンスを物理サーバーにデプロイするためのデプロイメント戦略を提供します。 高可用性が必要なクラスターサービスの場合、高可用性戦略または高可用性グループ戦略に基づいて、異なる物理サーバーにECSインスタンスをデプロイできます。 これにより、単一障害点 (SPOF) が防止され、サービスの可用性が向上します。 高頻度トランザクションやリアルタイムデータ分析など、ネットワークレイテンシーに非常に敏感なアプリケーションの場合、低レイテンシー戦略に基づいて同じネットワーク内にECSインスタンスをデプロイできます。 これにより、ECSインスタンス間の通信レイテンシが短縮されます。 このトピックでは、デプロイメント戦略とデプロイメントセットの制限、およびデプロイメントセットの使用方法について説明します。
デプロイ戦略
デプロイ戦略は、ECSインスタンスを物理サーバーにデプロイする方法を決定します。 高可用性、ネットワーク遅延、デプロイメント規模などのビジネス要件に基づいてデプロイメント戦略を選択できます。
戦略 | 説明 |
高可用性戦略 (可用性) | 異なる物理サーバー上のデプロイメントセットにECSインスタンスをデプロイして、SPOFによるサービス中断のリスクを効果的に軽減します。
|
高可用性グループ戦略 (AvailabilityGroup) | デプロイメントセットを最大7つのデプロイメントセットグループに分割し、ECSインスタンスをグループに割り当てて障害の分離を強化することで、1つのゾーンできめ細かい制御を提供します。 デプロイメントセットグループに割り当てられたECSインスタンスは、SPOFを防ぐために、特定のリージョン内の異なる物理サーバーに厳密に分散されます。 さらに、同じデプロイメントセットグループ内の複数のECSインスタンスを同じ物理サーバーにデプロイできます。 これにより、相互アクセスの待ち時間が減少する。 説明 デプロイメントセット内でECSインスタンスが割り当てられているデプロイメントセットグループ (
|
低レイテンシ戦略 (LowLatency) | 同じネットワーク内のすべてのECSインスタンスを同じゾーンにデプロイします。 重要 複数のECSインスタンスが同じ物理サーバーにデプロイされる可能性があり、高可用性を保証することはできません。
|
制限事項
特定のリージョンでリソース不足が発生した場合、そのリージョンでエコノミーモードで停止していたECSインスタンスを作成したり、従量課金インスタンスを再起動したりできない場合があります。 この場合は、しばらく待ってからもう一度お試しください。 詳細については、「節約モード」をご参照ください。
専用ホスト: デプロイメントセットには作成できません。
デプロイメントセットの最大数: Alibaba Cloudアカウントが作成できるデプロイメントセットのクォータを照会するには、quota CenterコンソールのECSの一般クォータページに移動します。
リージョンとゾーンの制限: ECSインスタンスとインスタンスが属するデプロイメントセットは、同じリージョンにある必要があります。 低レイテンシ戦略を使用するデプロイメントセット内のECSインスタンスは、同じゾーンにデプロイする必要があります。
インスタンスファミリーの制限
使用できるデプロイ戦略は、インスタンスファミリーによって異なります。 次の表に、さまざまなインスタンスファミリーでサポートされているデプロイメント戦略を示します。
説明特定のデプロイメント戦略をサポートするインスタンスファミリーを照会するには、DescribeDeploymentSetSupportedInstanceTypeFamily操作を呼び出します。
展開戦略
デプロイメント戦略をサポートするインスタンスファミリー
高可用性戦略または高可用性グループ戦略
g8a, g8i, g8y, g7se, g7a, g7, g7h, g7t, g7ne, g7nex, g6, g6e, g6a, g5、g5ne、sn2ne、sn2、およびsn1
c8a、c8i、c8y、c7se、c7、c7t、c7nex、c7a、c6、c6a、c6e、c5、およびsn1ne
r8a、r8i、r8y、r7、r7se、r7t、r7a、r6、r6e、r6a、re6、re6p、r5、re4、se1ne、およびse1
hfc8i、hfg8i、hfr8i、hfc7、hfg7、hfc7、hfc6、hfg6、hfr6、hfc5、およびhfg5
d3c、d2s、d2c、d1、d1ne、d1-c14d3、およびd1-c8d3
i3g、i3、i2、i2g、i2ne、i2gne、およびi1
ebmg5、ebmc7、ebmg7、ebmr7、sccgn6、scch5、scch5s、sccg5、およびsccg5s
e, t6、xn4、mn4、n4、e4、n2、およびn1
gn6i
低レイテンシ戦略
g8a、g8i、g8ae、およびg8y
c8a、c8i、c8ae、およびc8y
ebmc8i、ebmg8i、およびebmr8i
r8a、r8i、r8ae、およびr8y
ebmc7、ebmg7、およびebmr7
デプロイメントセットはマージできません。
課金
デプロイメントセットは無料で使用できます。 ただし、デプロイメントセットでのECSインスタンス、ディスク、スナップショット、イメージ、パブリック帯域幅などのリソースの作成と使用に対して課金されます。 詳細については、「課金の概要」をご参照ください。
クイックスタート
手順1: デプロイメントセットの作成
ECSコンソールの使用
ECSコンソールで、[デプロイメントセット] ページに移動します。
を選択し、上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。
デプロイメントセットの作成 ダイアログボックスで、デプロイメントセット名 、[説明] 、および [戦略] パラメーターを設定します。 デプロイメント戦略の選択方法については、このトピックのデプロイメント戦略のセクションを参照してください。
API操作の呼び出し
CreateDeploymentSet操作を呼び出して、特定のリージョンにデプロイメントセットを作成し、デプロイメント戦略を指定します。
StrategyパラメーターがAvailabilityGroupに設定されている場合、GroupCount
パラメーターを設定して、デプロイメントセットグループの数を指定できます。
手順2: デプロイメントセットでのECSインスタンスの作成または追加
ECSコンソールの使用
ECSインスタンスのインスタンスタイプ、リージョン、および数量が制限を満たしていることを確認します。 詳細については、このトピックの制限セクションを参照してください。
デプロイメントセットにECSインスタンスを作成します。
[デプロイメントセット] ページで、ECSインスタンスを作成するデプロイメントセットを見つけ、[操作] 列の [インスタンスの作成] をクリックして [ECSインスタンスの購入] ページに移動します。
既存のECSインスタンスをデプロイメントセットに追加します。 詳細については、このトピックの「ECSインスタンスが属するデプロイメントセットの変更」をご参照ください。
API操作の呼び出し
デプロイメントセットにECSインスタンスを作成するには、RunInstances操作を呼び出し、
DeploymentSetId
パラメーターを指定します。デプロイメントセット内のデプロイメントセットグループの数を指定します。
既存のECSインスタンスをデプロイメントセットに追加するには、ModifyInstanceDeployment操作を呼び出し、
InstanceId
およびDeploymentSetId
パラメーターを指定します。説明Strategyパラメーターを
AvailabilityGroup
に設定した場合、DeploymentSetGroupNo
パラメーターを設定して、ECSインスタンスをデプロイするデプロイメントセットグループの数を指定できます。
その他操作
ECSインスタンスが属するデプロイメントセットの変更
ビジネス要件に基づいて、ECSインスタンスを既存のデプロイメントセットから別のデプロイメントセットに移動したり、デプロイメントセットに属していないECSインスタンスをデプロイメントセットに追加したりできます。
手順
ECSコンソールの使用
ECSコンソールの [インスタンス] ページに移動します。
上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。
管理するECSインスタンスを見つけ、[操作] 列の
を選択します。[デプロイメントセットの変更] ダイアログボックスで、移行先のデプロイメントセットを選択し、[強制変更] パラメーターを設定します。
Yes: インスタンスを別の物理サーバーに移動できます。 強制的な変更により、インスタンスが再起動する可能性があります。 作業は慎重に行ってください。
No: インスタンスをターゲットデプロイメントセットに追加します。インスタンスを別の物理サーバーに移動することはできません。 これにより、インスタンスの再起動が防止されます。 現在のインスタンスが移行先デプロイメントセットの要件を満たしていない場合、インスタンスを移行先デプロイメントセットに追加することはできません。
API操作の呼び出し
ModifyInstanceDeployment操作を呼び出し、次のパラメーターを指定して、ECSインスタンスのデプロイメントセットを変更します。
RegionId: インスタンスが属するリージョンのID。 例:
cn-hangzhou
InstanceId: インスタンスID。 例:
i-bp67acfmxazb4ph ***
。DeploymentSetId: 宛先デプロイメントセットのID。 例:
ds-bp67acfmxazb4ph ****
Force: インスタンスを別の物理サーバーに強制的に移動するかどうかを指定します。 有効な値:
true: インスタンスを別の物理サーバーに移動できます。 強制的な変更により、インスタンスが再起動する可能性があります。 作業は慎重に行ってください。
false (デフォルト): インスタンスを特定のデプロイメントセットに追加し、インスタンスを別の物理サーバーに移動できません。 これにより、インスタンスの再起動が防止されます。 現在のインスタンスが移行先デプロイメントセットの要件を満たしていない場合、インスタンスを移行先デプロイメントセットに追加することはできません。
デプロイメントセットからECSインスタンスを削除する
削除するECSインスタンスをデプロイメントセットに保持するには、デプロイメントセットからインスタンスを削除してから、デプロイメントセットを削除します。 これにより、インスタンスは元の状態のままになります。
ModifyInstanceDeployment操作を呼び出し、次のパラメーターを指定して、デプロイメントセットからインスタンスを削除します。
RegionId: インスタンスが属するリージョンのID。 例:
cn-hangzhou
InstanceId: インスタンスID。 例:
i-bp67acfmxazb4ph ***
。DeploymentSetId: デプロイメントセットのID。 例:
ds-bp67acfmxazb4ph ****
RemoveFromDeploymentSet: デプロイメントセットからインスタンスを削除するかどうかを指定します。 パラメーターを
true
に設定します。
インスタンスが期待どおりに削除されているかどうかを確認します。 オペレーションが期待どおりに呼び出され、ステータスコード200が返された場合、インスタンスは期待どおりに削除されます。
デプロイメントセットの変更または削除
[デプロイメントセット] ページで、管理するデプロイメントセットを見つけ、[操作] 列の [情報の変更] または [削除] をクリックします。
デプロイメントセットの名前または説明を変更して、デプロイメントセットを変更します。
デプロイメントセットを削除します。 デプロイメントセットが不要になった場合は、デプロイメントセットを削除して、不要なリソースの使用を防ぎます。
重要デプロイメントセットを削除するときは、デプロイメントセットにインスタンスが存在しないことを確認してください。 インスタンスが存在する場合は、デプロイメントセットを削除する前にインスタンスを削除してください。 詳細については、このトピックの「ECSインスタンスが属するデプロイメントセットの変更」または「デプロイメントセットからECSインスタンスを削除する」をご参照ください。