デプロイメントセットは、物理サーバーに Elastic Compute Service(ECS)インスタンスをデプロイするためのデプロイメント戦略を提供します。高可用性を必要とするクラスタサービスの場合、高可用性戦略または高可用性グループ戦略に基づいて、異なる物理サーバーに ECS インスタンスをデプロイできます。これにより、単一障害点(SPOF)を防ぎ、サービスの可用性を向上させることができます。高頻度トランザクションやリアルタイムデータ分析など、ネットワークレイテンシに非常に敏感なアプリケーションの場合は、低レイテンシ戦略に基づいて同じネットワーク内に ECS インスタンスをデプロイできます。これにより、ECS インスタンス間の通信レイテンシが短縮されます。このトピックでは、デプロイメントセットのデプロイメント戦略と制限、およびデプロイメントセットの使用方法について説明します。
デプロイメント戦略
デプロイメント戦略は、物理サーバーに ECS インスタンスをデプロイする方法を決定します。高可用性、ネットワークレイテンシ、デプロイメント規模などのビジネス要件に基づいて、デプロイメント戦略を選択できます。
戦略 | 説明 |
高可用性戦略 (Availability) | デプロイメントセット内の ECS インスタンスを異なる物理サーバーにデプロイして、SPOF によるサービス中断のリスクを効果的に軽減します。
|
高可用性グループ戦略 (AvailabilityGroup) | デプロイメントセットを最大 7 つのデプロイメントセットグループに分割し、ECS インスタンスをグループに割り当てて、単一ゾーンでよりきめ細かい制御を提供することで、より高い障害分離を実現します。 デプロイメントセットグループに割り当てられた 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、ic5、および sn1ne
r8a、r8i、r8y、r7、r7se、r7t、r7a、r6、r6e、r6a、re6、re6p、r5、re4、se1ne、および se1
hfc8i、hfg8i、hfr8i、hfc7、hfg7、hfr7、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 インスタンスが属するデプロイメントセットを変更する セクションを参照してください。
API 操作を呼び出す
デプロイメントセットに ECS インスタンスを作成するには、RunInstances 操作を呼び出し、
DeploymentSetId
パラメータを指定します。デプロイメントセット内のデプロイメントセットグループの数を指定します。
既存の ECS インスタンスをデプロイメントセットに追加するには、ModifyInstanceDeployment 操作を呼び出し、
InstanceId
パラメータとDeploymentSetId
パラメータを指定します。説明Strategy パラメータを
AvailabilityGroup
に設定した場合、DeploymentSetGroupNo
パラメータを構成して、ECS インスタンスをデプロイするデプロイメントセットグループの数を指定できます。
その他の操作
ECS インスタンスが属するデプロイメントセットを変更する
ビジネス要件に基づいて、既存のデプロイメントセットから別のデプロイメントセットに ECS インスタンスを移動したり、デプロイメントセットに属していない ECS インスタンスをデプロイメントセットに追加したりできます。
手順
ECS コンソールを使用する
ECS コンソール - インスタンス にアクセスします。
上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。
ターゲットの [インスタンス ID] をクリックして、インスタンスの詳細ページに移動します。右上隅にある [すべてのアクション] をクリックしてアクションパネルを展開し、[デプロイメントセットの変更] を検索してクリックします。
[デプロイメントセットの変更] ダイアログボックスで、デスティネーションデプロイメントセットを選択し、[強制変更] パラメータを構成します。
[はい]: インスタンスを別の物理サーバーに移動できます。強制変更により、インスタンスが再起動する場合があります。注意して進めてください。
[いいえ]: インスタンスをデスティネーションデプロイメントセットに追加し、インスタンスを別の物理サーバーに移動することはできません。これにより、インスタンスの再起動が防止されます。現在のインスタンスがデスティネーションデプロイメントセットの要件を満たしていない場合、インスタンスをデスティネーションデプロイメントセットに追加することはできません。
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 インスタンスが属するデプロイメントセットを変更する または デプロイメントセットから ECS インスタンスを削除する セクションを参照してください。