ALIYUN::NLB::ServerGroup類型用於為網路型負載平衡建立伺服器組。
文法
{
"Type": "ALIYUN::NLB::ServerGroup",
"Properties": {
"ResourceGroupId": String,
"Scheduler": String,
"AddressIPVersion": String,
"Servers": List,
"PreserveClientIpEnabled": Boolean,
"ServerGroupType": String,
"PersistenceEnabled": Boolean,
"ConnectionDrainEnabled": Boolean,
"ConnectionDrainTimeout": Integer,
"PersistenceTimeout": Integer,
"VpcId": String,
"HealthCheckConfig": Map,
"Protocol": String,
"ServerGroupName": String,
"Tags": List,
"AnyPortEnabled": Boolean
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ResourceGroupId | String | 否 | 否 | 資源群組ID。 | 無 |
Scheduler | String | 否 | 否 | 調度演算法。 | 取值:
|
AddressIPVersion | String | 否 | 否 | 協議版本。 | 取值:
|
Servers | List | 否 | 否 | 伺服器列表。 | 更多資訊,請參見Servers屬性。 |
PreserveClientIpEnabled | Boolean | 否 | 否 | 是否開啟用戶端地址保持功能。 | 取值:
|
ServerGroupType | String | 否 | 否 | 伺服器群組類型。 | 取值:
|
PersistenceEnabled | Boolean | 否 | 否 | 是否開啟會話保持。 | 取值:
|
ConnectionDrainEnabled | Boolean | 否 | 否 | 是否開啟串連優雅中斷。 | 取值:
|
ConnectionDrainTimeout | Integer | 否 | 否 | 設定串連優雅中斷逾時時間。 | 單位:秒。 取值範圍:10~900。 |
PersistenceTimeout | Integer | 否 | 否 | 會話保持逾時時間。 | 單位:秒。 取值範圍:0~3600。 |
VpcId | String | 是 | 否 | 伺服器組所在VPC的ID。 | 說明 當ServerGroupType參數取值為Instance時,只有Instance類型伺服器組所在VPC下的伺服器,才可以加入到該伺服器組中。 |
HealthCheckConfig | Map | 否 | 否 | 健全狀態檢查相關配置。 | 更多資訊,請參見HealthCheckConfig屬性。 |
Protocol | String | 否 | 否 | 後端轉寄協議。 | 取值:
|
ServerGroupName | String | 是 | 否 | 伺服器組名稱。 | 長度為2~128個字元,必須以大小寫字母或中文開頭,可包含數字、半形句號(.)、底線(_)和短劃線(-)。 |
AnyPortEnabled | Boolean | 否 | 否 | 是否開啟全連接埠轉寄。 | 取值:
|
Tags | List | 否 | 是 | 標籤列表 | 更多資訊,請參見Tags屬性。 |
Servers文法
"Servers": [
{
"ServerType": String,
"Description": String,
"ServerId": String,
"ServerIp": String,
"Port": Integer,
"Weight": Integer
}
]
Servers屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ServerType | String | 是 | 否 | 後端伺服器類型。 | 取值:
|
Description | String | 否 | 否 | 後端伺服器描述。 | 無 |
ServerId | String | 是 | 否 | 後端伺服器的執行個體ID。 | 取值:
說明 當ServerId參數值為ENI執行個體ID或ECI執行個體ID時,ServerType參數必選。 |
ServerIp | String | 否 | 否 | ECS、ENI或者ECI的執行個體IP。 | 無 |
Port | Integer | 否 | 否 | 接收請求的後端連接埠。 | 無 |
Weight | Integer | 否 | 否 | 後端伺服器的權重。 | 取值:0~100。 預設值:100。 |
HealthCheckConfig文法
"HealthCheckConfig": {
"HealthCheckInterval": Integer,
"HealthCheckUrl": String,
"HealthCheckConnectPort": Integer,
"UnhealthyThreshold": Integer,
"HttpCheckMethod": String,
"HealthyThreshold": Integer,
"HealthCheckConnectTimeout": Integer,
"HealthCheckDomain": String,
"HealthCheckEnabled": Boolean,
"HealthCheckHttpCode": List,
"HealthCheckType": String
}
HealthCheckConfig屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
HealthCheckInterval | Integer | 否 | 否 | 健全狀態檢查的時間間隔。 | 單位:秒。 取值範圍:5~50。 預設值:10。 |
HealthCheckUrl | String | 否 | 否 | 健全狀態檢查路徑。 | 長度為1~80個字元,只能使用字母、數字、字元(-/.%?#&=)以及擴充字元(_;~!()*[]@$^:',+),且必須以正斜線(/)開頭。 說明 當HealthCheckType參數值為HTTP時,該參數生效。 |
HealthCheckConnectPort | Integer | 否 | 否 | 健全狀態檢查的後端伺服器的連接埠。 | 取值範圍: 0~65535。 預設值:0,表示使用後端伺服器的連接埠進行健全狀態檢查。 |
UnhealthyThreshold | Integer | 否 | 否 | 健全狀態檢查連續失敗多少次後,將後端伺服器的健全狀態檢查狀態由成功判定為失敗。 | 取值範圍:2~10。 預設值:2。 |
HttpCheckMethod | String | 是 | 否 | 健全狀態檢查方法。 | 取值:
說明 當HealthCheckType參數值為HTTP時,該參數生效。 |
HealthyThreshold | Integer | 否 | 否 | 健全狀態檢查連續成功多少次後,將後端伺服器的健全狀態檢查狀態由失敗判定為成功。 | 取值範圍:2~10。 預設值:2。 |
HealthCheckConnectTimeout | Integer | 否 | 否 | 健全狀態檢查響應的最大逾時時間。 | 單位:秒。 取值範圍:1~300。 預設值:5。 |
HealthCheckDomain | String | 否 | 否 | 用於健全狀態檢查的網域名稱。 | 取值:
說明 當HealthCheckType參數值為HTTP時,該參數生效。 |
HealthCheckEnabled | Boolean | 否 | 否 | 是否開啟健全狀態檢查。 | 取值:
|
HealthCheckHttpCode | List | 否 | 否 | 健康狀態返回碼。 | 多個狀態代碼用半形逗號(,)分隔。 取值:
說明 當HealthCheckType參數值為HTTP時,該參數生效。 |
HealthCheckType | String | 否 | 否 | 健全狀態檢查協議。 | 取值:
|
Tags文法
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標籤鍵。 | 無 |
Value | String | 否 | 否 | 標籤值。 | 無 |
傳回值
Fn::GetAtt
ServerGroupId:伺服器組ID。
樣本
建立綁定了服務IP的伺服器組。
YAML格式
ROSTemplateFormatVersion: '2015-09-01'
Description: ''
Parameters:
VpcId:
Type: String
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Resources:
NlbServerGroup:
Type: ALIYUN::NLB::ServerGroup
Properties:
Servers:
- ServerId: 10.1.1.102
ServerIp: 10.1.1.102
Port: 80
Weight: 100
ServerType: Ip
ServerGroupType: Ip
ServerGroupName: Test
VpcId:
Ref: VpcId
HealthCheckConfig:
HttpCheckMethod: Get
HealthCheckEnabled: true
HealthCheckConnectTimeout: Null
Protocol: TCP
Outputs: {}
JSON
格式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "",
"Parameters": {
"VpcId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
}
},
"Resources": {
"NlbServerGroup": {
"Type": "ALIYUN::NLB::ServerGroup",
"Properties": {
"Servers": [
{
"ServerId": "10.1.1.102",
"ServerIp": "10.1.1.102",
"Port": 80,
"Weight": 100,
"ServerType": "Ip"
}
],
"ServerGroupType": "Ip",
"ServerGroupName": "Test",
"VpcId": {
"Ref": "VpcId"
},
"HealthCheckConfig": {
"HttpCheckMethod": "Get",
"HealthCheckEnabled": true,
"HealthCheckConnectTimeout": null
},
"Protocol": "TCP"
}
}
},
"Outputs": {
}
}