DATASOURCE::SLB::Rules類型用于查詢指定監聽已配置的轉發規則。
語法
{
"Type": "DATASOURCE::SLB::Rules",
"Properties": {
"ListenerPort": String,
"LoadBalancerId": String,
"ListenerProtocol": String,
"RefreshOptions": String
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ListenerPort | String | 是 | 是 | 負載均衡實例前端使用的監聽端口。 | 取值范圍:1~65535。 |
LoadBalancerId | String | 是 | 是 | 負載均衡實例ID。 | 無 |
ListenerProtocol | String | 否 | 是 | 負載均衡實例前端使用的協議。 | 相同端口存在不同協議監聽時,該字段必填。 |
RefreshOptions | String | 否 | 是 | 當資源棧更新時,數據源資源的刷新策略。 | 有效值:
|
返回值
Fn::GetAtt
RuleIds:轉發規則ID列表。
Rules:轉發規則列表。
屬性名稱 | 類型 | 描述 | 約束 |
RuleIds | List | 轉發規則ID列表。 | 無 |
Rules | List | 轉發規則列表。 | 無 |
HealthCheckHttpCode | String | 健康檢查正常的HTTP狀態碼。 | 多個狀態碼用半角逗號(,)分隔。 取值:
說明 當HealthCheck為on時,該參數有效。 |
HealthCheckUri | String | 用于健康檢查的URI。 | 說明 當HealthCheck為on時,該參數有效。 |
CookieTimeout | String | Cookie超時時間。 | 取值:1~86400。 單位:秒。 說明 當StickySession為on且StickySessionType為insert時,該參數有效。 |
RuleId | String | 轉發規則ID。 | 無 |
Url | String | 轉發規則綁定的請求路徑。 | 無 |
ListenerProtocol | String | 負載均衡實例前端使用的協議。 | 無 |
HealthCheckTimeout | Integer | 接收來自運行狀況檢查的響應需要等待的時間。 | 如果后端ECS在指定的時間內沒有正確響應,則判定為健康檢查失敗。 取值:1~300。 單位:秒。 說明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,則HealthCHeckTimeout無效,超時時間為HealthCheckInterval的值。 當HealthCheck為on時,該參數有效。 |
HealthCheck | String | 是否開啟健康檢查。 | 取值:
說明 當ListenerSync為off時,該參數有效;當ListenerSync為on時表明與監聽配置一致。 |
ListenerSync | String | 轉發規則是否從監聽上繼承健康檢查、會話保持和調度算法配置。 | 取值:
|
UnhealthyThreshold | Integer | 健康檢查連續失敗多少次后,將后端服務器的健康檢查狀態由成功判定為失敗。 | 取值:2~10。 說明 當HealthCheck為on時,該參數有效。 |
HealthyThreshold | Integer | 健康檢查連續成功多少次后,將后端服務器的健康檢查狀態由失敗判定為成功。 | 取值:2~10。 說明 當HealthCheck為on時,該參數有效。 |
HealthCheckInterval | Integer | 健康檢查的時間間隔。 | 取值:1~50。 單位:秒。 說明 當HealthCheck為on時,該參數有效。 |
HealthCheckConnectPort | Integer | 健康檢查的后端服務器的端口。 | 取值:1~65535。 說明 當HealthCheck為on時,該參數有效;若該參數為空且HealthCheck為on時,表明默認使用監聽后端端口配置。 |
Cookie | String | 服務器上配置的Cookie。 | 長度為1~200個字符,只能包含ASCII英文字母和數字字符,不能包含半角逗號(,)、半角分號(;)或空格,也不能以美元符號($)開頭。 說明 當StickySession為on且StickySessionType為server時,該參數有效。 |
VServerGroupId | String | 轉發規則綁定的目標虛擬服務器組ID。 | 無 |
Scheduler | String | 調度算法。 | 取值:
說明 當ListenerSync為off時,該參數有效;當ListenerSync為on時,表明與監聽配置一致。 |
RuleName | String | 轉發規則名稱。 | 長度為1~80個字符,只能使用字母、數字、短劃線(-)、正斜線(/)、半角句號(.)和下劃線(_)這些字符。 說明 同一個監聽內不同規則的名稱必須唯一。 |
Domain | String | 轉發規則綁定的請求域名。 | 無 |
StickySession | String | 是否開啟會話保持。 | 取值:
說明
|
StickySessionType | String | Cookie的處理方式。 | 取值:
說明 當StickySession的值為on時,該參數有效。 |
HealthCheckDomain | String | 用于健康檢查的域名。 | 取值:
說明 當HealthCheck為on時,該參數有效。 |
示例
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
LoadBalancerId:
Type: String
AssociationProperty: ALIYUN::SLB::Instance::InstanceId
Description: The ID of the CLB instance.
Resources:
ExtensionDataSource:
Type: DATASOURCE::SLB::Rules
Properties:
ListenerPort: 3443
LoadBalancerId:
Ref: LoadBalancerId
Outputs:
RuleIds:
Description: The list of rule IDs.
Value:
Fn::GetAtt:
- ExtensionDataSource
- RuleIds
Rules:
Description: The list of rules.
Value:
Fn::GetAtt:
- ExtensionDataSource
- Rules
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"LoadBalancerId": {
"Type": "String",
"AssociationProperty":"ALIYUN::SLB::Instance::InstanceId",
"Description": "The ID of the CLB instance."
}
},
"Resources": {
"ExtensionDataSource": {
"Type": "DATASOURCE::SLB::Rules",
"Properties": {
"ListenerPort": 3443,
"LoadBalancerId": {
"Ref": "LoadBalancerId"
}
}
}
},
"Outputs": {
"RuleIds": {
"Description": "The list of rule IDs.",
"Value": {
"Fn::GetAtt": [
"ExtensionDataSource",
"RuleIds"
]
}
},
"Rules": {
"Description": "The list of rules.",
"Value": {
"Fn::GetAtt": [
"ExtensionDataSource",
"Rules"
]
}
}
}
}