CreateServerGroup - 创建服务器组

在指定地域创建服务器组。

接口说明

CreateServerGroup 接口属于异步接口,即系统返回一个请求 ID,但该网络型负载均衡的服务器组尚未创建成功,系统后台的创建任务仍在进行。您可以调用 GetJobStatus 查询服务器组的创建状态:

  • 当任务状态处于 Succeeded 时,表示服务器组创建成功。
  • 当任务状态处于 Processing 时,表示服务器组正在创建中,在该状态下,您只能执行查询操作,不能执行其他操作。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
nlb:CreateServerGroupcreate
  • ServerGroup
    acs:nlb:{#regionId}:{#accountId}:servergroup/*
  • VPC
    acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}

请求参数

名称类型必填描述示例值
ServerGroupTypestring

服务器组类型。取值:

  • Instance(默认值):服务器类型,该类型服务器组支持添加 EcsEniEci 类型实例。

  • Ip:IP 地址类型,该类型服务器组支持直接添加 IP 地址类型的后端服务器。

Instance
ServerGroupNamestring

服务器组名称。

长度为 2~128 个字符,必须以大小写字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。

NLB_ServerGroup
AddressIPVersionstring

协议版本。取值:

  • ipv4(默认值):IPv4 类型。

  • DualStack:双栈类型。

ipv4
Protocolstring

转发到后端服务器使用的通信协议。取值:

  • TCP(默认值)
  • UDP
  • TCP_UDP
说明
  • 当该参数取值为 UDP 时,该服务器组只支持关联 UDP 监听。
  • 当该参数取值为 TCPPreserveClientIpEnabled 取值为 true 时,该服务器组只支持关联 TCP 监听。
  • 当该参数取值为 TCPPreserveClientIpEnabled 取值为 false 时,该服务器组支持关联 TCPSSL 监听和 TCP 监听。
  • 当该参数取值为TCP_UDP时,该服务器组支持关联 TCP 监听和 UDP 监听。
  • TCP
    VpcIdstring

    服务器组所在 VPC 的 ID。

    说明 如果 ServerGroupType 取值为 Instance 时,只有该 VPC 下的服务器可以加入到该服务器组。
    vpc-bp15zckdt37pq72zv****
    AnyPortEnabledboolean

    是否开启全端口转发。取值:

    • true:开启。

    • false(默认值):关闭。

    false
    ConnectionDrainEnabledboolean

    是否开启连接优雅中断。取值:

    • true:开启。

    • false(默认值):关闭。

    false
    ConnectionDrainTimeoutinteger

    设置连接优雅中断超时时间。单位:秒。 取值范围:0~900

    10
    Schedulerstring

    调度算法。取值:

    • Wrr(默认值):加权轮询,权重值越高的后端服务器,被轮询到的概率也越高。

    • Wlc:加权最小连接数,除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的概率也越高。

    • rr:轮询,按照访问顺序依次将外部请求分发到后端服务器。

    • sch:源 IP 哈希:相同的源地址会调度到相同的后端服务器。

    • tch:四元组哈希,基于四元组(源 IP、目的 IP、源端口和目的端口)的一致性哈希,相同的流会调度到相同的后端服务器。

    • qch:QUIC ID 哈希,支持将同一个 QUIC ID 的请求哈希到同一台后端服务器上。

    说明 仅后端协议为 UDP 时,支持选择 QUIC ID 哈希。
    Wrr
    PreserveClientIpEnabledboolean

    是否开启客户端地址保持功能。取值:

    • true(默认值):开启。
    • false:关闭。
    说明 Protocol 取值为 TCP 且该参数取值为 true 时,该服务器组不支持关联 TCPSSL 监听。
    true
    HealthCheckConfigobject

    健康检查相关配置。

    HealthCheckEnabledboolean

    是否开启健康检查,取值:

    • true(默认值):开启。

    • false:关闭。

    true
    HealthCheckTypestring

    健康检查协议。取值:

    • TCP
    • HTTP
    • UDP
    TCP
    HealthCheckConnectPortinteger

    健康检查的后端服务器的端口。

    取值范围: 0~65535

    默认值:0,表示使用后端服务器的端口进行健康检查。

    0
    HealthyThresholdinteger

    健康检查连续成功多少次后,将后端服务器的健康检查状态由失败判定为成功

    取值范围:2~10

    默认值:2

    2
    UnhealthyThresholdinteger

    健康检查连续失败多少次后,将后端服务器的健康检查状态由成功判定为失败

    取值范围:2~10

    默认值:2

    2
    HealthCheckConnectTimeoutinteger

    健康检查响应的最大超时时间。单位:秒。 取值范围:1~300。 默认值:5

    5
    HealthCheckIntervalinteger

    健康检查的时间间隔。单位:秒。默认值:5

    • HealthCheckTypeTCP 或者 HTTP 时,取值范围为:1~50
    • HealthCheckTypeUDP 时,取值范围为:1~300,您需要设置间隔时间>=响应超时时间,以确保 UDP 探测回包不会因为超时而被误判为未响应。
    5
    HealthCheckDomainstring

    用于健康检查的域名。取值:

    • $SERVER_IP:使用后端服务器内网 IP。

    • domain:指定特定域名。长度限制 1~80 个字符,只能使用大小写字母、数字、短划线(-)、半角句号(.)。

    说明 HealthCheckTypeHTTP 时,该参数生效。
    $SERVER_IP
    HealthCheckUrlstring

    健康检查路径。

    长度为 1~80 个字符,只能使用大小写英文字母、数字、字符-/.%?#&。 必须以正斜线(/)开头。

    说明 HealthCheckTypeHTTP 时,该参数生效。
    /test/index.html
    HealthCheckHttpCodearray

    健康状态返回码,多个状态码用半角逗号(,)分隔。 取值:http_2xx(默认值)、http_3xxhttp_4xxhttp_5xx

    说明 HealthCheckTypeHTTP 时,该参数生效。
    HealthCheckHttpCodestring

    健康状态返回码,多个状态码用半角逗号(,)分隔。 取值:http_2xx(默认值)、http_3xxhttp_4xxhttp_5xx

    说明 HealthCheckTypeHTTP 时,该参数生效。
    http_2xx
    HttpCheckMethodstring

    健康检查方法,取值:GET(默认值)或 HEAD

    说明 HealthCheckTypeHTTP 时,该参数生效。
    GET
    HealthCheckReqstring

    UDP 监听健康检查的请求字符串,只允许包含字母、数字,最大长度限制为 512 个字符。

    hello
    HealthCheckExpstring

    UDP 监听健康检查的请求字符串,只允许包含字母、数字,最大长度限制为 512 个字符。

    ok
    ResourceGroupIdstring

    服务器组所属的资源组 ID。

    rg-atstuj3rtop****
    DryRunboolean

    是否只预检此次请求。取值:

    • true:发送检查请求,不会创建服务器组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码DryRunOperation
    • false(默认值):发送正常请求,通过检查后返回 HTTP 2xx 状态码并直接进行操作。
    true
    ClientTokenstring

    客户端 Token,用于保证请求的幂等性。

    从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。

    说明 若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 不一样。
    123e4567-e89b-12d3-a456-426655440000
    RegionIdstring

    网络型负载均衡实例所在的地域 ID。

    您可以通过调用 DescribeRegions 接口获取地域 ID。

    cn-hangzhou
    Tagarray<object>

    标签列表。

    object

    标签。

    Keystring

    标签键。最多支持 64 个字符,不能以aliyunacs:开头,不能包含http://https://。支持字符包括字母、数字、下划线 (_)、点 (.)、冒号 (:)、斜线 (/)、等号 (=)、加号 (+)、减号 (-)、@符号 (@) 。

    一次调用最多支持添加 20 个标签。

    env
    Valuestring

    标签值。最多支持 128 个字符,不能以aliyunacs:开头,不能包含http://https://。支持字符包括字母、数字、下划线 (_)、点 (.)、冒号 (:)、斜线 (/)、等号 (=)、加号 (+)、减号 (-)、@符号 (@) 。

    一次调用最多支持添加 20 个标签。

    product

    返回参数

    名称类型描述示例值
    object

    创建服务器组。

    RequestIdstring

    请求 ID。

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

    服务器组 ID。

    sgp-atstuj3rtoptyui****
    JobIdstring

    异步任务 ID。

    72dcd26b-f12d-4c27-b3af-18f6aed5****

    示例

    正常返回示例

    JSON格式

    {
      "RequestId": "54B48E3D-DF70-471B-AA93-08E683A1B45",
      "ServerGroupId": "sgp-atstuj3rtoptyui****",
      "JobId": "72dcd26b-f12d-4c27-b3af-18f6aed5****"
    }

    错误码

    HTTP status code错误码错误信息描述
    400IllegalParam.AnyPortServerGroupConflictWithHealthCheckConfigThe param of AnyPortServerGroupConflictWithHealthCheckConfig is illegal.服务器组的配置与健康检查设置冲突。请检查配置参数。
    400IllegalParamFormat.ParseCreateRsPoolRequestFailedThe param format of CreateRsPoolRequest is illegal.CreateRsPoolRequestFailed的参数格式不合法,请参考OpenAPI文档检查请求参数。
    400IllegalParam.PreserveClientIpSwitchThe param of PreserveClientIpSwitch is illegal.-
    400OperationDenied.VpcNotSupportIpv6The operation is not allowed because of VpcNotSupportIpv6.使用的VPC不支持Ipv6。
    400IllegalParam.healthCheckDomainThe parameter of healthCheckConfig.healthCheckDomain is illegal.健康检查配置中的healthCheckDomain非法,请检查输入参数。
    400OperationDenied.UidNotAllowQuic29The operation is not allowed because of uid not allow quic29 version.用户ID不支持Quic29,请联系客户经理加白。
    400IlleagalParam.healthCheckUrlThe parameter of healthCheckUrl in healthCheckConfig is illegal.健康检查设置中使用的健康检查的URL不合法。
    400IllegalParam.ServerGroupNameThe param of ServerGroupName is illegal.传入的ServerGroupName参数非法
    400DryRunOperationRequest validation has been passed with DryRun flag set.dryRun请求验证已通过。
    400MissingParam.%sThe parameter of %s is missing.参数%s缺失,请检查输入参数。
    400IllegalParam.ConnectionDrainTimeoutThe param of ConnectionDrainTimeout is illegal.参数ConnectionDrainTimeout非法,请检查输入参数。
    400IllegalParamThe param of %s is illegal.输入的参数有值非法,请检查输入。
    400SystemBusySystem is busy, please try again later.系统繁忙,请稍后重试
    400QuotaExceeded.QuotaInsufficientThe quota of %s is exceeded, usage %s/%s.配额不足,已使用%s/%s。请在配额中心中修改配额大小。
    403Forbidden.NoPermissionAuthentication is failed for NoPermission.因为账号没有权限,所以鉴权失败。
    404ResourceNotFound.VpcThe specified resource of Vpc is not found.找不到指定的VPC资源,请检查输入参数。
    404ResourceNotFound.ResourceGroupThe param of resourceGroup not existed.资源组不存在。

    访问错误中心查看更多错误码。

    变更历史

    变更时间变更内容概要操作
    2024-06-25OpenAPI 错误码发生变更查看变更详情
    2024-02-29OpenAPI 错误码发生变更查看变更详情
    2024-02-22OpenAPI 错误码发生变更查看变更详情
    2024-02-04OpenAPI 错误码发生变更查看变更详情
    2024-01-24OpenAPI 错误码发生变更查看变更详情
    2023-12-18OpenAPI 错误码发生变更查看变更详情
    2023-10-30OpenAPI 错误码发生变更查看变更详情
    2023-10-07OpenAPI 错误码发生变更查看变更详情
    2023-09-27OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
    2023-09-26OpenAPI 错误码发生变更查看变更详情
    2023-09-18OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
    2023-09-05OpenAPI 错误码发生变更查看变更详情
    2023-08-22OpenAPI 错误码发生变更查看变更详情
    2023-06-30API 内部配置变更,不影响调用查看变更详情
    2023-06-29OpenAPI 入参发生变更查看变更详情