すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:デプロイメントセットを使用したサービスの可用性の向上またはECSインスタンス間の通信遅延の短縮

最終更新日:Sep 14, 2024

デプロイメントセットは、Elastic Compute Service (ECS) インスタンスを物理サーバーにデプロイするためのデプロイメント戦略を提供します。 高可用性が必要なクラスターサービスの場合、高可用性戦略または高可用性グループ戦略に基づいて、異なる物理サーバーにECSインスタンスをデプロイできます。 これにより、単一障害点 (SPOF) が防止され、サービスの可用性が向上します。 高頻度トランザクションやリアルタイムデータ分析など、ネットワークレイテンシーに非常に敏感なアプリケーションの場合、低レイテンシー戦略に基づいて同じネットワーク内にECSインスタンスをデプロイできます。 これにより、ECSインスタンス間の通信レイテンシが短縮されます。 このトピックでは、デプロイメント戦略とデプロイメントセットの制限、およびデプロイメントセットの使用方法について説明します。

デプロイ戦略

デプロイ戦略は、ECSインスタンスを物理サーバーにデプロイする方法を決定します。 高可用性、ネットワーク遅延、デプロイメント規模などのビジネス要件に基づいてデプロイメント戦略を選択できます。

戦略

説明

高可用性戦略 (可用性)

異なる物理サーバー上のデプロイメントセットにECSインスタンスをデプロイして、SPOFによるサービス中断のリスクを効果的に軽減します。

  • 適切なシナリオ: Hadoop分散コンピューティングクラスターやSQLデータベースクラスターなど、小規模にデプロイされ、高いサービス継続性と分離が必要なシステム。

  • ゾーンスコープ: デプロイメントセット内のECSインスタンスは、異なるゾーンにデプロイできます。

  • 最大インスタンス数: ゾーンごとに最大20個のECSインスタンスをデプロイできます。

高可用性グループ戦略 (AvailabilityGroup)

デプロイメントセットを最大7つのデプロイメントセットグループに分割し、ECSインスタンスをグループに割り当てて障害の分離を強化することで、1つのゾーンできめ細かい制御を提供します。

デプロイメントセットグループに割り当てられたECSインスタンスは、SPOFを防ぐために、特定のリージョン内の異なる物理サーバーに厳密に分散されます。 さらに、同じデプロイメントセットグループ内の複数のECSインスタンスを同じ物理サーバーにデプロイできます。 これにより、相互アクセスの待ち時間が減少する。

説明

デプロイメントセット内でECSインスタンスが割り当てられているデプロイメントセットグループ (DeploymentSetGroupNo) を照会するには、DescribeInstances操作を呼び出します。

  • 適切なシナリオ: 高分離を必要とする大規模なアプリケーション、特にApsaraDB for Redisのマスターレプリカ複製メカニズムやNGINX負荷分散メカニズムなどの高可用性メカニズムが組み込まれているアプリケーション。

  • ゾーンスコープ: デプロイメントセット内のECSインスタンスは、異なるゾーンにデプロイできます。

  • 最大インスタンス数: ゾーンごとのデプロイメントセットグループごとに最大20個のECSインスタンスをデプロイできます。 ゾーンごとに最大7つの展開グループがサポートされます。

低レイテンシ戦略 (LowLatency)

同じネットワーク内のすべてのECSインスタンスを同じゾーンにデプロイします。

重要

複数のECSインスタンスが同じ物理サーバーにデプロイされる可能性があり、高可用性を保証することはできません。

  • 適切なシナリオ: ネットワークの応答速度に非常に敏感なアプリケーション、特に高可用性メカニズムが組み込まれており、高性能コンピューティング、リアルタイムデータ分析、AI推論などの迅速なデータ交換が必要なアプリケーション。

  • ゾーンスコープ: デプロイメントセットのECSインスタンスは同じゾーンに存在する必要があります。

    最大インスタンス数: 1つのゾーンに最大20個の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コンソールの使用
  1. ECSコンソールで、[デプロイと伸縮性] > icon1 > [デプロイメントセット] を選択し、[デプロイメントセット] ページに移動します。

  2. 上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。 地域

  3. デプロイメントセットの作成 ダイアログボックスで、デプロイメントセット名[説明] 、および [戦略] パラメーターを設定します。 デプロイメント戦略の選択方法については、このトピックのデプロイメント戦略のセクションを参照してください。

API操作の呼び出し

CreateDeploymentSet操作を呼び出して、特定のリージョンにデプロイメントセットを作成し、デプロイメント戦略を指定します。

StrategyパラメーターがAvailabilityGroupに設定されている場合、GroupCountパラメーターを設定して、デプロイメントセットグループの数を指定できます。

手順2: デプロイメントセットでのECSインスタンスの作成または追加

ECSコンソールの使用
重要

ECSインスタンスのインスタンスタイプ、リージョン、および数量が制限を満たしていることを確認します。 詳細については、このトピックの制限セクションを参照してください。

  • デプロイメントセットにECSインスタンスを作成します。

    [デプロイメントセット] ページで、ECSインスタンスを作成するデプロイメントセットを見つけ、[操作] 列の [インスタンスの作成] をクリックして [ECSインスタンスの購入] ページに移動します。

    image

  • 既存のECSインスタンスをデプロイメントセットに追加します。 詳細については、このトピックの「ECSインスタンスが属するデプロイメントセットの変更」をご参照ください。

API操作の呼び出し
  • デプロイメントセットにECSインスタンスを作成するには、RunInstances操作を呼び出し、DeploymentSetIdパラメーターを指定します。

    デプロイメントセット内のデプロイメントセットグループの数を指定します。

  • 既存のECSインスタンスをデプロイメントセットに追加するには、ModifyInstanceDeployment操作を呼び出し、InstanceIdおよびDeploymentSetIdパラメーターを指定します。

    説明

    StrategyパラメーターをAvailabilityGroupに設定した場合、DeploymentSetGroupNoパラメーターを設定して、ECSインスタンスをデプロイするデプロイメントセットグループの数を指定できます。

その他操作

ECSインスタンスが属するデプロイメントセットの変更

ビジネス要件に基づいて、ECSインスタンスを既存のデプロイメントセットから別のデプロイメントセットに移動したり、デプロイメントセットに属していないECSインスタンスをデプロイメントセットに追加したりできます。

手順
ECSコンソールの使用
  1. ECSコンソールの [インスタンス] ページに移動します。

  2. 上部のナビゲーションバーで、リソースが属するリージョンとリソースグループを選択します。 地域

  3. 管理するECSインスタンスを見つけ、[操作] 列の 1 > [デプロイと伸縮性] > [デプロイメントセットの変更] を選択します。

  4. [デプロイメントセットの変更] ダイアログボックスで、移行先のデプロイメントセットを選択し、[強制変更] パラメーターを設定します。

    • 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インスタンスを削除する」をご参照ください。