All Products
Search
Document Center

Server Load Balancer:RemoveServersFromServerGroup

Last Updated:Oct 10, 2026

Removes backend servers from a load balancing server group.

Operation description

The RemoveServersFromServerGroup operation is asynchronous. After you call this operation, the system returns a request ID, but the backend servers are not immediately removed. The removal task is still running in the background.

  1. You can call the ListServerGroups operation to query the status of the server group:

    • If the server group is in the Configuring state, the server group is being modified.

    • If the server group is in the Available state, the server group is running.

  2. You can call the ListServerGroupServers operation to query the status of the backend servers:

    • If a backend server is in the Removing state, the backend server is being removed from the server group.

    • If the backend server cannot be queried, the backend server is removed.

Note
  • If connection draining is enabled (ConnectionDrainEnabled is set to true) for the server group to which the backend servers belong, the backend servers first enter the Removing state and then the Draining state. The backend servers are removed from the server group only after the connection draining timeout period (ConnectionDrainTimeout) expires.

  • During this period, you can add the backend servers to the server group again. In this case, the state of the backend servers changes from Draining to Adding, and finally to Available.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

gwlb:RemoveServersFromServerGroup

delete

*ServerGroup

acs:gwlb:{#regionId}:{#accountId}:servergroup/{#ServerGroupId}

Instance

acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}

NetworkInterface

acs:ecs:{#regionId}:{#accountId}:eni/{#ServerId}

ContainerGroup

acs:eci:{#regionId}:{#accountId}:containergroup/{#ServerId}

None None

Request parameters

Parameter

Type

Required

Description

Example

ServerGroupId

string

Yes

The ID of the server group.

sgp-atstuj3rtoptyui****

Servers

array<object>

Yes

The list of backend servers.

Note

You can specify up to 200 backend servers in a single call.

object

No

The backend server.

Port

integer

No

The port used by the backend server. Valid values:

  • 6081.

6081

ServerId

string

Yes

The ID of the backend server.

  • If the server group is of the Instance type, this parameter specifies the resource ID of an Ecs, Eni, or Eci instance.

  • If the server group is of the Ip type, this parameter specifies an IP address.

i-bp67acfmxazb4p****

ServerIp

string

No

The IP address of the backend server.

192.168.xxx.xxx

ServerType

string

Yes

The backend server type. Valid values:

  • Ecs: an ECS instance.

  • Eni: an elastic network interfaces (ENIs) instance with a network interface controller (NIC).

  • Eci: an elastic container instance (ECI).

  • Ip: an IP address.

Valid values:

  • Eni :

    Elastic network interfaces (ENIs) instance with network interface controller (NIC)

  • Ecs :

    ECS instance.

  • Ip :

    IP address.

  • Eci :

    Elastic container instance (ECI)

Ecs

DryRun

boolean

No

Specifies whether to only precheck the request. Valid values:

  • true: prechecks the request without removing the backend servers from the server group. The system checks whether required parameters are specified, the request format is valid, and service limits are met. If the request fails the precheck, the corresponding error is returned. If the request passes the precheck, the DryRunOperation error code is returned.

  • false (default): sends the request. If the request passes the precheck, an HTTP 2xx status code is returned and the operation is performed.

false

ClientToken

string

No

The client token that is used to ensure the idempotence of the request.

You can generate a parameter value on your client to ensure that the value is unique among different requests. The client token can contain only ASCII characters.

Note

If you do not specify this parameter, the system automatically uses the RequestId of the API request as the ClientToken. The RequestId of each API request is unique.

123e4567-e89b-12d3-a456-42665544****

Response elements

Element

Type

Description

Example

object

The response struct.

RequestId

string

The ID of the request.

54B48E3D-DF70-471B-AA93-08E683A1B45

Examples

Success response

JSON format

{
  "RequestId": "54B48E3D-DF70-471B-AA93-08E683A1B45"
}

Error codes

HTTP status code

Error code

Error message

Description

400 IncorrectStatus.BackendServer The status of %s [%s] is incorrect. The current operation cannot be performed on the server as its status is unavailable. Please check if the server is currently undergoing any other operations.
400 IncorrectStatus.ServerGroup The status of %s [%s] is incorrect. The status of %s [%s] is incorrect.
404 ResourceNotFound.BackendServer The specified resource of %s is not found. The specified backend server resource does not exist.
404 ResourceNotFound.ServerGroup The specified resource of %s is not found. The specified server group resource does not exist.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.