All Products
Search
Document Center

Elastic Compute Service:Improve business availability or reduce communication latency between ECS instances by using deployment sets

Last Updated:Dec 15, 2025

A deployment set is a placement strategy for Elastic Compute Service (ECS) instances on physical servers. For cluster services that require high availability, you can use the high availability or high availability group strategy to deploy ECS instances across different physical servers. This practice prevents single points of failure (SPOFs) and improves service availability. For applications that are sensitive to network latency, such as high-frequency trading and real-time data analytics, you can use the low latency strategy to deploy ECS instances within the same network topology. This reduces network communication latency between instances. This topic describes the deployment strategies, limits, and usage of deployment sets.

Deployment strategies

A deployment strategy determines how ECS instances are placed on physical servers. You can select a deployment strategy based on your requirements for high availability, network latency, or deployment scale.

Strategy

Description

High availability (Availability)

Ensures that ECS instances in a deployment set are deployed on different physical servers. This practice effectively reduces the risk of service interruptions caused by a single server failure.

  • Scenarios: Small-scale deployments and systems that require high service continuity and isolation, such as Hadoop distributed computing clusters and SQL database clusters.

  • Zone: Instances can be deployed in different zones.

  • Number of instances: A maximum of 20 instances can be deployed in a single zone.

High availability group (AvailabilityGroup)

Provides finer-grained control in a single zone. In a single zone, you can assign instances to a maximum of seven different groups to achieve a higher level of fault isolation.

ECS instances in different groups are strictly distributed across different physical servers within the specified region to prevent SPOFs. Multiple ECS instances in the same group are not guaranteed to be distributed and may be deployed on the same physical server, which reduces communication latency between them.

Note

You can call the DescribeInstances operation to query the group number (DeploymentSetGroupNo) of an instance in a deployment set.

  • Scenarios: Large-scale applications that require high isolation, especially businesses that have built-in high-availability mechanisms, such as primary/secondary replication for Redis and load balancing for Nginx.

  • Zone: Instances can be deployed in different zones.

  • Number of instances: A maximum of 20 instances can be deployed in a single group in a single zone. A maximum of seven groups can be created in a single zone.

Low latency (LowLatency)

All ECS instances are deployed within the same network topology in the same zone. This reduces the latency of network communication.

Important

Multiple instances may be deployed on the same physical server, which cannot guarantee high availability.

  • Scenarios: Applications that are highly sensitive to network response time, especially applications that have built-in high availability mechanisms but have strict requirements for data exchange speeds, such as high-performance computing (HPC), real-time data analytics, and AI inference.

  • Zone: Instances must be deployed in the same zone.

    Number of instances: The number of instances cannot exceed 20.

Limits

Important

If a resource shortage occurs in a region, you may not be able to create ECS instances or restart pay-as-you-go ECS instances that are stopped in economical mode. In this case, you can wait for a period and then retry the operation. For more information, see Economical mode.

  • Deployment sets do not support the creation of Dedicated Hosts.

  • Limit on the number of deployment sets: Each Alibaba Cloud account can have a limited number of deployment sets. To view your specific quota, go to the Quota Center.

  • Region and zone limits: An instance and its deployment set must be in the same region. Instances in a deployment set that uses the low latency strategy must be in the same zone.

  • Instance family limits: Most instance families of generation 6 and later support deployment sets that use the high availability, high availability group, or low latency strategy.

    Different deployment strategies support only specific instance families:

    For a list of the supported instance families, see the output of the DescribeDeploymentSetSupportedInstanceTypeFamily API operation.

    Deployment strategy

    Supported instance families

    High availability and high availability group

    • g9a, g9ae, g9i, g8a, g8i, g8ine, g8ise, g8y, g7, g7a, g7h, g7ne, g7nex, g7se, g7t, g6, g6a, g6e, g6h, g5, g5ne

    • c9a, c9ae, c9i, c8a, c8i, c8ine, c8y, c7, c7a, c7nex, c7se, c7t, c6, c6a, c6e, c5

    • r9a, r9ae, r9i, r8a, r8i, r8y, r7, r7a, r7se, r7t, r6, r6a, r6e, r5

    • hfc9i, hfg9i, hfr9i, hfc8i, hfg8i, hfr8i, hfc7, hfg7, hfr7, hfc6, hfg6, hfr6, hfc5, hfg5

    • ebmc9i, ebmg9a, ebmg9i, ebmr9i, ebmc8a, ebmc8i, ebmc8y, ebmg8a, ebmg8i, ebmg8y, ebmr8a, ebmr8y, ebmc7, ebmc7a, ebmg7, ebmg7a, ebmg7se, ebmhfc7, ebmhfg7, ebmhfr7, ebmr7, ebmr7a, ebmg5

    • i5, i5g, i5ge, ic5, i4, i4g, i4r, i3, i3g, i2, i2g, i2gne, i2ne

    • gn6i

    • d3c, d3s, d2c, d2s, d1ne

    • re6, re6p, s6, t6, e4, mn4, n4, re4, xn4, sn2ne, u2a, u2i, se1, se1ne, sn1ne, u1, e

    Low latency

    • g9a, g9ae, g9i, g8a, g8ae, g8i, g8ise, g8y, g7, g5ne

    • c9a, c9ae, c9i, c8a, c8ae, c8i, c8ine, c8y, c7, c7nex

    • r9a, r9ae, r9i, r8a, r8ae, r8i, r8y, r7

    • hfc9i, hfg9i, hfr9i, hfc8i, hfg8i, hfr8i

    • ebmc9i, ebmg9a, ebmg9i, ebmr9i, ebmc8a, ebmc8i, ebmc8y, ebmg8a, ebmg8i, ebmg8y, ebmgn8v, ebmr8a, ebmr8y, ebmc7, ebmc7a, ebmg7, ebmg7a, ebmg7se, ebmgn7ex, ebmhfc7, ebmhfg7, ebmhfr7, ebmr7, ebmr7a

    • i5, i5g, i5ge, i4

    • gn8v

    • hpc8ae, hpc8i, hpc7ip, hpc6id, u2a, u2i

  • Deployment sets cannot be merged.

Billing

Deployment sets are free of charge. However, you are charged for the resources that you create and use, such as ECS instances, disks, snapshots, images, and public bandwidth. For more information, see Billing overview.

Quick start

Step 1: Create a deployment set

Console
  1. Go to ECS console - Deployment Sets.

  2. In the top navigation bar, select the region and resource group of the resource that you want to manage. 地域

  3. On the Deployment Set page, click Create Deployment Set.

  4. In the Create Deployment Set dialog box, enter a Deployment Set Name and Description, and select a Strategy. How do I select a deployment strategy?

API

Call the CreateDeploymentSet operation to create a deployment set in a specified region and specify a deployment strategy.

If you use the High Availability Group strategy, you can specify the GroupCount parameter to set the number of groups.

Step 2: Create or add ECS instances in the deployment set

Console
Important

The instance type, region, and number of ECS instances must meet the limits. For more information, see Limits.

  • Create a new instance in a deployment set:

    On the deployment sets page, find the target deployment set. In the Actions column, click Create Instance. You are redirected to the Custom Launch page to complete the instance configuration.

    image

  • Add an existing instance to a deployment set: For more information, see Change the deployment set to which an instance belongs.

API
  • Create a new instance in a deployment set: Call the RunInstances operation and specify the DeploymentSetId (deployment set ID) parameter.

    If you use the high availability group strategy, specify the number of groups.

  • Add an existing instance to a deployment set: Call the ModifyInstanceDeployment operation and specify the InstanceId (instance ID) and DeploymentSetId (deployment set ID) parameters.

    Note

    If the specified deployment set uses the AvailabilityGroup (high availability group) strategy, you can specify the DeploymentSetGroupNo parameter to assign the instance to a group in the deployment set.

More operations

Change the deployment set to which an instance belongs

You can change the deployment set to which an ECS instance belongs. For example, you can move an instance from one deployment set to another, or add an instance that is not in a deployment set to an existing one.

Procedure
Console
  1. Go to ECS console - Instances.

  2. In the top navigation bar, select the region and resource group of the resource that you want to manage. 地域

  3. Click the ID of the target instance to go to the instance details page. Click All Actions to expand the actions panel. Then, search for and click Change Deployment Set.

  4. In the Change Deployment Set dialog box, select the destination deployment set and configure the Force Change parameter.

    • Selected: Allows the instance to be moved to a different physical server. This operation may cause the instance to restart and affect service continuity. Proceed with caution.

    • Cleared: Does not move the instance to a different physical server. Instead, this option attempts to add the instance to the specified deployment set. This avoids the risk of an instance restart. However, the change fails if the physical server where the instance is located does not meet the requirements of the new deployment set.

API

Call the ModifyInstanceDeployment operation and specify the following parameters to change the deployment set of an instance:

  • RegionId: The ID of the region to which the instance belongs. Example: cn-hangzhou, which indicates China (Hangzhou).

  • InstanceId: The ID of the instance. Example: i-bp67acfmxazb4ph***.

  • DeploymentSetId: The ID of the destination deployment set. Example: ds-bp67acfmxazb4ph****.

  • Force: Specifies whether to force the instance to move to a different physical server when you change its deployment set. Valid values:

    • true: Allows the instance to be moved to a different physical server. This operation may cause the instance to restart and affect service continuity. Proceed with caution.

    • false (default): Does not move the instance to a different physical server. Instead, this option attempts to add the instance to the specified deployment set. This avoids the risk of an instance restart. However, the change fails if the physical server where the instance is located does not meet the requirements of the new deployment set.

Remove an instance from a deployment set

If you want to delete a deployment set but retain an instance that is in it, you must first remove the instance from the deployment set. After the instance is removed, it continues to run as a standalone instance.

Important

The target instance must be in the Running or Stopped state. For more information, see Start an instance and Stop an instance.

Perform the following steps:

  • Call the ModifyInstanceDeployment operation and specify the following parameters to remove an instance from a deployment set:

    • RegionId: The ID of the region to which the instance belongs. Example: cn-hangzhou, which indicates China (Hangzhou).

    • InstanceId: The ID of the instance. Example: i-bp67acfmxazb4ph***.

    • DeploymentSetId: The ID of the deployment set. Example: ds-bp67acfmxazb4ph****.

    • RemoveFromDeploymentSet: Set this parameter to true to remove the instance from the deployment set.

  • Verify that the instance is removed. If the API operation is successful and returns a 200 status code, the instance is removed from the deployment set.

Modify or delete a deployment set

In the ECS console - Deployment Sets, find the target deployment set. In the Actions column, click Modify Information or Delete, and then follow the on-screen instructions to complete the operation.