ALIYUN::SLB::LoadBalancerClone类型用于克隆负载均衡实例。

语法

{
  "Type": "ALIYUN::SLB::LoadBalancerClone",
  "Properties": {
    "Tags": List,
    "ResourceGroupId": String,
    "VSwitchId": String,
    "LoadBalancerName": String,
    "SourceLoadBalancerId": String,
    "TagsPolicy": String,
    "BackendServersPolicy": String,
    "BackendServers": List,
    "InstanceChargeType": String,
    "LoadBalancerSpec": String
  }
}

属性

属性名称类型必须允许更新描述约束
ResourceGroupIdString资源组ID。
VSwitchIdString交换机ID。必须为源负载均衡实例所属专有网络下的交换机。不指定该参数时,将使用源负载均衡实例的交换机。
SourceLoadBalancerId String 将要克隆的负载均衡实例ID。
BackendServersPolicy String 克隆策略,指定配置新负载均衡实例需要监听的ECS实例以及各ECS实例的权重。 取值:
  • clone(默认值):把源负载均衡实例中监听的ECS实例和权重配置全部克隆到新的负载均衡实例中。
  • empty:不给新的负载均衡实例添加任何ECS实例。
  • append:既克隆源负载均衡实例中监听的ECS实例和权重配置,也添加新的ECS实例和权重配置到新的负载均衡实例。
  • replace:只添加新的ECS实例列表和权重配置而不克隆源负载均衡实例所监听的ECS实例列表和权重配置。
BackendServers List 指定新添加的需要监听的ECS实例列表。 详情请参见BackendServers属性
LoadBalancerName String 负载均衡实例名称。 用户自定义字符串。长度为1~80个字符,可包含英文字母、数字、短划线(-)、正斜线(/)、英文句点(.)和下划线(_)。
TagsListSLB实例标签。标签以键值对方式传入,最多可以设置5组标签。

详情请参见Tags属性

TagsPolicyString 标签策略。取值:
  • clone:使用源负载均衡实例的标签。
  • empty(默认值):不设置标签。
  • append:保留源实例标签并添加新标签。
  • replace:添加新标签,不保留源实例标签 。
InstanceChargeTypeString实例计费方式。取值:
  • PayBySpec(默认值):按规格计费。
  • PayByCLCU:按量计费。
    说明 当PayType(实例付费模式)取值为PayOnDemand(按量付费)时,该参数生效。
LoadBalancerSpecString负载均衡实例的规格。取值:
  • slb.s1.small(默认值)
  • slb.s2.small
  • slb.s2.medium
  • slb.s3.small
  • slb.s3.medium
  • slb.s3.large
  • slb.s3.xlarge
  • slb.s3.xxlarge

不同地域支持的规格不同。更多信息,请参见传统型负载均衡实例FAQ

BackendServers语法

"BackendServers": [
  {
    "Type": String,
    "ServerId": String,
    "Description": String,
    "ServerIp": String,
    "Weight": Integer
  }
] 

BackendServers属性

属性名称类型必须允许更新描述约束
ServerId String 后端服务器ID。 后端服务器(ECS实例)必须在运行中才可以加入负载均衡实例,每次调用最多可添加20个后端服务器。

只有性能保障型实例支持添加eni类型的后端服务器。

Weight Integer ECS实例在负载均衡实例中的权重。 取值范围:0~100。

默认值:100。

ServerIpString后端服务器IP地址。
TypeString后端服务器类型。取值:
  • ecs:ECS实例(默认值)。
  • eni:弹性网卡实例。
  • eci:弹性容器实例。
DescriptionString后端服务器描述。长度为1~80个字符,可包含英文字母、汉字、数字、短划线(-)、正斜线(/)、英文句点(.)和下划线(_)。

Tags语法

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]  

Tags属性

属性名称类型必须允许更新描述约束
KeyString标签键。长度为1~128个字符,不能以aliyunacs:开头,不能包含http://或者https://
ValueString标签值。长度为0~128个字符,不能以aliyunacs:开头,不能包含http://或者https://

返回值

Fn::GetAtt

LoadBalancerId:新负载均衡实例的ID。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      SourceSLBId:
        AssociationProperty: ALIYUN::SLB::Instance::InstanceId
        Type: String
        Description: Source load balancer id to clone
    Resources:
      LoadBalancerClone:
        Type: ALIYUN::SLB::LoadBalancerClone
        Properties:
          LoadBalancerName: DemoCloneLoadBalancer
          SourceLoadBalancerId:
            Ref: SourceSLBId
    Outputs:
      LoadBalancerId:
        Description: The id of load balance generated
        Value:
          Fn::GetAtt:
            - LoadBalancerClone
            - LoadBalancerId
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "SourceSLBId": {
          "AssociationProperty": "ALIYUN::SLB::Instance::InstanceId",
          "Type": "String",
          "Description": "Source load balancer id to clone"
        }
      },
      "Resources": {
        "LoadBalancerClone": {
          "Type": "ALIYUN::SLB::LoadBalancerClone",
          "Properties": {
            "LoadBalancerName": "DemoCloneLoadBalancer",
            "SourceLoadBalancerId": {
              "Ref": "SourceSLBId"
            }
          }
        }
      },
      "Outputs": {
        "LoadBalancerId": {
          "Description": "The id of load balance generated",
          "Value": {
            "Fn::GetAtt": [
              "LoadBalancerClone",
              "LoadBalancerId"
            ]
          }
        }
      }
    }