ALIYUN::HBase::MultiZoneCluster类型用于创建多可用区集群。
语法
{
"Type": "ALIYUN::HBase::MultiZoneCluster",
"Properties": {
"StandbyZoneId": String,
"ResourceGroupId": String,
"MasterInstanceType": String,
"LogDiskSize": Integer,
"StandbyVSwitchId": String,
"SecurityIPList": String,
"CoreInstanceType": String,
"ClusterName": String,
"Engine": String,
"ArbiterZoneId": String,
"AutoRenewPeriod": Integer,
"PrimaryZoneId": String,
"EngineVersion": String,
"MultiZoneCombination": String,
"CoreNodeCount": Integer,
"ArchVersion": String,
"Period": Integer,
"LogInstanceType": String,
"PayType": String,
"PrimaryVSwitchId": String,
"ArbiterVSwitchId": String,
"VpcId": String,
"CoreDiskType": String,
"LogNodeCount": Integer,
"LogDiskType": String,
"CoreDiskSize": Integer,
"PeriodUnit": String,
"DeletionProtection": Boolean
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
StandbyZoneId | String | 是 | 否 | 备可用区实例的可用区ID。 | 无 |
ResourceGroupId | String | 否 | 否 | 资源组ID。 | 可通过资源组控制台查询,不填时放入默认资源组中。 |
MasterInstanceType | String | 否 | 是 | master节点规格。 | 无 |
LogDiskSize | Integer | 是 | 是 | log节点磁盘大小。 | 范围为400~64000 GB,步长为40 GB。 |
StandbyVSwitchId | String | 是 | 否 | 备可用区实例的虚拟交换机ID。 | 必须在StandbyZoneId对应的可用区下。 |
SecurityIPList | String | 否 | 是 | 添加实例的白名单IP 地址。 | 多个白名单IP地址之间使用半角逗号(,)分隔。 说明 如果IP地址设置为127.0.0.1,表示禁止所有地址访问该实例。例如IP地址为192.168.0.0/24表示允许所有192.168.0.XX的IP地址访问该实例。 |
CoreInstanceType | String | 是 | 是 | core节点规格。 | 无 |
ClusterName | String | 否 | 是 | 实例名称。 | 设置规则如下:
|
Engine | String | 是 | 否 | 服务类型。 | 目前仅支持HBase增强版,取值为hbaseue。 |
ArbiterZoneId | String | 是 | 否 | 仲裁可用区ID。 | 无 |
AutoRenewPeriod | Integer | 否 | 否 | 自动续费周期。 | 单位:月。 说明 默认为0,表示不自动续费。 AutoRenewPeriod取值为2时,表示到期后自动续费2个月。 |
PrimaryZoneId | String | 是 | 否 | 主可用区实例的可用区ID。 | 无 |
EngineVersion | String | 是 | 否 | 引擎类型的版本号。 | 取值为2.0。 |
MultiZoneCombination | String | 是 | 否 | 可用区组合。 | 无 |
CoreNodeCount | Integer | 是 | 是 | Core节点个数。 | Core节点个数取值范围为2~20,且增量为2的倍数。 |
ArchVersion | String | 是 | 否 | 部署架构的版本。 | 目前仅支持hbaseue引擎类型,取值为2.0。 |
Period | Integer | 否 | 否 | 包年包月实例的购买时长。 | 取值:
说明 仅当实例的付费类型为Prepaid时,需要填写此参数。 |
LogInstanceType | String | 是 | 否 | log节点规格。 | 无 |
PayType | String | 是 | 否 | 实例的付费类型。 | 取值:
|
PrimaryVSwitchId | String | 是 | 否 | 主可用区实例的虚拟交换机ID。 | 必须在PrimaryZoneId对应的可用区下。 |
ArbiterVSwitchId | String | 是 | 否 | 仲裁虚拟交换机ID。 | 交换机需位于ArbiterZoneId对应的可用区下。 |
VpcId | String | 否 | 否 | 专有网络ID。 | 必须在RegionId所在的地域下。 |
CoreDiskType | String | 是 | 否 | core磁盘类型。 | 取值:
|
LogNodeCount | Integer | 是 | 是 | log节点数量。 | log节点个数取值范围为 4~400,且为4的倍数。 |
LogDiskType | String | 是 | 否 | log节点磁盘类型。 | 取值:
|
CoreDiskSize | Integer | 是 | 是 | 节点磁盘大小。 | 范围为400~64000 GB,步长为40 GB。 |
PeriodUnit | String | 否 | 否 | 包年包月实例的购买单位。 | 取值:
说明 仅当实例的付费类型为Prepaid时,需要填写此参数。 |
DeletionProtection | Boolean | 否 | 是 | 开启或者关闭删除保护。 | 取值:
|
返回值
Fn::GetAtt
UiProxyConnAddrInfo:WebUI连接信息列表。
ClusterId:实例ID。
ServiceConnAddrs:子服务地址列表。
ThriftConn:Thrift连接地址信息列表。
SlbConnAddrs:Slb连接信息列表。
ZkConnAddrs:Zookeeper连接信息列表。
示例
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
ArbiterVSwitchId:
Description:
en: Arbitration virtual switch ID. The switch must be in the availability zone
corresponding to ArbiterZoneId.
Required: true
Type: String
ArbiterZoneId:
Description:
en: Arbiter zond id.
Required: true
Type: String
ArchVersion:
AllowedValues:
- '2.0'
Description:
en: Version of the deployment architecture. Currently, only the hbaseue engine
type is supported. The value can be 2.0.
Required: true
Type: String
AutoRenewPeriod:
Description:
en: 'The auto-renewal period. Unit: month.
The default value of this parameter is 0. This value indicates that auto-renewal
is
disabled.
If this parameter is set to 2, the instance is automatically renewed for a
two-month
subscription after the instance expires.'
Required: false
Type: Number
ClusterName:
AllowedPattern: ^[a-zA-Z0-9_-]{2,30}$
Description:
en: 'The name of the instance.
The name must be 2 to 128 characters in length, and can contain letters, digits,
periods
(.), underscores (_), and hyphens (-). It must start with a letter.'
Required: false
Type: String
CoreDiskSize:
Description:
en: The value ranges from 400 GB to 64,000 GB. The step size is 40 GB.
Required: true
Type: Number
CoreDiskType:
Description:
en: 'Core node disk type. Valid values:
cloud_efficiency
cloud_ssd
local_hdd_pro
local_ssd_pro'
Required: true
Type: String
CoreInstanceType:
Description:
en: You can call the DescribeAvailableResource operation to obtain the value
of this parameter.
Required: true
Type: String
CoreNodeCount:
Description:
en: Number of Core nodes. The value of the number of Core nodes ranges from
2 to 20, and the increment is a multiple of 2.
Required: true
Type: Number
Engine:
AllowedValues:
- hbaseue
Description:
en: Service type. Currently, only HBase enhanced version is supported. The value
can be hbaseue.
Required: true
Type: String
EngineVersion:
AllowedValues:
- '2.0'
Description:
en: 'The version of the engine. Valid values:
hbaseue:2.0'
Required: true
Type: String
LogDiskSize:
Description:
en: log disk size. The value ranges from 400 GB to 64,000 GB. The step size
is 40 GB.
Required: true
Type: Number
LogDiskType:
Description:
en: 'Log node disk type. Valid values:
cloud_efficiency
cloud_ssd
local_hdd_pro
local_ssd_pro'
Required: true
Type: String
LogInstanceType:
Description:
en: Log instance type.
Required: true
Type: String
LogNodeCount:
Description:
en: Log number of nodes. The value of log nodes ranges from 4 to 400 and is
a multiple of 4.
Required: true
Type: Number
MasterInstanceType:
Description:
en: The instance type of the master node. You can call the DescribeAvailableResource
operation to obtain the value of this parameter.
Required: false
Type: String
MultiZoneCombination:
Description:
en: Availability zone combination.
Required: true
Type: String
PayType:
AllowedValues:
- PayAsYouGo
- Subscription
Description:
en: 'The billing method.
Prepaid: The subscription billing method is used.
Postpaid: The pay-as-you-go billing method is used.'
Required: true
Type: String
Period:
AssociationProperty: PayPeriod
Description:
en: 'The subscription period.
This parameter only takes effect when the PayType parameter is set to Prepaid.
When the PeriodUnit parameter is set to year, the value of the Period parameter
ranges
from 1 to 5.
When the PeriodUnit parameter is set to month, the value of the Period parameter
ranges
from 1 to 9.'
Required: false
Type: Number
PeriodUnit:
AllowedValues:
- Month
- Year
- month
- year
AssociationProperty: PayPeriodUnit
Description:
en: 'The unit of the subscription period. Valid values:
year
month'
Required: false
Type: String
PrimaryVSwitchId:
Description:
en: The virtual switch ID of the instance in primary availability zone must
be in the availability zone corresponding to PrimaryZoneId.
Required: true
Type: String
PrimaryZoneId:
Description:
en: Availability zone ID of the primary availability zone instance.
Required: true
Type: String
ResourceGroupId:
AssociationProperty: ALIYUN::ECS::ResourceGroup::ResourceGroupId
Description:
en: 'The ID of the resource group. You can query the group ID in the resource
group console.
If you leave this parameter empty, the instance is allocated to the default
resource
group.'
Required: false
Type: String
SecurityIPList:
Description:
en: 'The IP addresses in the whitelist. Example: 192.168.*.*/24. The 0.0.0.0/0
value cannot
be added to the whitelist. Separate multiple IP addresses with commas (,).'
Required: false
Type: String
StandbyVSwitchId:
Description:
en: The virtual switch ID of the standby availability zone instance must be
in the corresponding availability zone of StandbyZoneId.
Required: true
Type: String
StandbyZoneId:
Description:
en: Standby zone id.
Required: true
Type: String
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Description:
en: 'The ID of the virtual private cloud (VPC). If you leave this parameter
and the VSwitchId
parameter empty, the classic network type is used. The VPC network type is
preferred.'
Required: false
Type: String
Resources:
MultiZoneCluster:
Properties:
ArbiterVSwitchId:
Ref: ArbiterVSwitchId
ArbiterZoneId:
Ref: ArbiterZoneId
ArchVersion:
Ref: ArchVersion
AutoRenewPeriod:
Ref: AutoRenewPeriod
ClusterName:
Ref: ClusterName
CoreDiskSize:
Ref: CoreDiskSize
CoreDiskType:
Ref: CoreDiskType
CoreInstanceType:
Ref: CoreInstanceType
CoreNodeCount:
Ref: CoreNodeCount
Engine:
Ref: Engine
EngineVersion:
Ref: EngineVersion
LogDiskSize:
Ref: LogDiskSize
LogDiskType:
Ref: LogDiskType
LogInstanceType:
Ref: LogInstanceType
LogNodeCount:
Ref: LogNodeCount
MasterInstanceType:
Ref: MasterInstanceType
MultiZoneCombination:
Ref: MultiZoneCombination
PayType:
Ref: PayType
Period:
Ref: Period
PeriodUnit:
Ref: PeriodUnit
PrimaryVSwitchId:
Ref: PrimaryVSwitchId
PrimaryZoneId:
Ref: PrimaryZoneId
ResourceGroupId:
Ref: ResourceGroupId
SecurityIPList:
Ref: SecurityIPList
StandbyVSwitchId:
Ref: StandbyVSwitchId
StandbyZoneId:
Ref: StandbyZoneId
VpcId:
Ref: VpcId
Type: ALIYUN::HBase::MultiZoneCluster
Outputs:
ClusterId:
Description: The ID of the instance.
Value:
Fn::GetAtt:
- MultiZoneCluster
- ClusterId
ServiceConnAddrs:
Description: LIST of ServiceConnAddr.
Value:
Fn::GetAtt:
- MultiZoneCluster
- ServiceConnAddrs
SlbConnAddrs:
Description: LIST of SlbConnAddr.
Value:
Fn::GetAtt:
- MultiZoneCluster
- SlbConnAddrs
ThriftConn:
Description: Thrift Connection address list.
Value:
Fn::GetAtt:
- MultiZoneCluster
- ThriftConn
UiProxyConnAddrInfo:
Description: WebUI connection information list.
Value:
Fn::GetAtt:
- MultiZoneCluster
- UiProxyConnAddrInfo
ZkConnAddrs:
Description: List of ZkConnAddr.
Value:
Fn::GetAtt:
- MultiZoneCluster
- ZkConnAddrs
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"StandbyZoneId": {
"Type": "String",
"Description": {
"en": "Standby zone id."
},
"Required": true
},
"ResourceGroupId": {
"AssociationProperty": "ALIYUN::ECS::ResourceGroup::ResourceGroupId",
"Type": "String",
"Description": {
"en": "The ID of the resource group. You can query the group ID in the resource group console.\nIf you leave this parameter empty, the instance is allocated to the default resource\ngroup."
},
"Required": false
},
"MasterInstanceType": {
"Type": "String",
"Description": {
"en": "The instance type of the master node. You can call the DescribeAvailableResource operation to obtain the value of this parameter."
},
"Required": false
},
"LogDiskSize": {
"Type": "Number",
"Description": {
"en": "log disk size. The value ranges from 400 GB to 64,000 GB. The step size is 40 GB."
},
"Required": true
},
"StandbyVSwitchId": {
"Type": "String",
"Description": {
"en": "The virtual switch ID of the standby availability zone instance must be in the corresponding availability zone of StandbyZoneId."
},
"Required": true
},
"SecurityIPList": {
"Type": "String",
"Description": {
"en": "The IP addresses in the whitelist. Example: 192.168.*.*/24. The 0.0.0.0/0 value cannot\nbe added to the whitelist. Separate multiple IP addresses with commas (,)."
},
"Required": false
},
"CoreInstanceType": {
"Type": "String",
"Description": {
"en": "You can call the DescribeAvailableResource operation to obtain the value of this parameter."
},
"Required": true
},
"ClusterName": {
"Type": "String",
"Description": {
"en": "The name of the instance.\nThe name must be 2 to 128 characters in length, and can contain letters, digits, periods\n(.), underscores (_), and hyphens (-). It must start with a letter."
},
"AllowedPattern": "^[a-zA-Z0-9_-]{2,30}$",
"Required": false
},
"Engine": {
"Type": "String",
"Description": {
"en": "Service type. Currently, only HBase enhanced version is supported. The value can be hbaseue."
},
"AllowedValues": [
"hbaseue"
],
"Required": true
},
"ArbiterZoneId": {
"Type": "String",
"Description": {
"en": "Arbiter zond id."
},
"Required": true
},
"AutoRenewPeriod": {
"Type": "Number",
"Description": {
"en": "The auto-renewal period. Unit: month.\nThe default value of this parameter is 0. This value indicates that auto-renewal is\ndisabled.\nIf this parameter is set to 2, the instance is automatically renewed for a two-month\nsubscription after the instance expires."
},
"Required": false
},
"PrimaryZoneId": {
"Type": "String",
"Description": {
"en": "Availability zone ID of the primary availability zone instance."
},
"Required": true
},
"EngineVersion": {
"Type": "String",
"Description": {
"en": "The version of the engine. Valid values:\nhbaseue:2.0"
},
"AllowedValues": [
"2.0"
],
"Required": true
},
"MultiZoneCombination": {
"Type": "String",
"Description": {
"en": "Availability zone combination."
},
"Required": true
},
"CoreNodeCount": {
"Type": "Number",
"Description": {
"en": "Number of Core nodes. The value of the number of Core nodes ranges from 2 to 20, and the increment is a multiple of 2."
},
"Required": true
},
"ArchVersion": {
"Type": "String",
"Description": {
"en": "Version of the deployment architecture. Currently, only the hbaseue engine type is supported. The value can be 2.0."
},
"AllowedValues": [
"2.0"
],
"Required": true
},
"Period": {
"AssociationProperty": "PayPeriod",
"Type": "Number",
"Description": {
"en": "The subscription period.\nThis parameter only takes effect when the PayType parameter is set to Prepaid.\nWhen the PeriodUnit parameter is set to year, the value of the Period parameter ranges\nfrom 1 to 5.\nWhen the PeriodUnit parameter is set to month, the value of the Period parameter ranges\nfrom 1 to 9."
},
"Required": false
},
"LogInstanceType": {
"Type": "String",
"Description": {
"en": "Log instance type."
},
"Required": true
},
"PayType": {
"Type": "String",
"Description": {
"en": "The billing method.\nPrepaid: The subscription billing method is used.\nPostpaid: The pay-as-you-go billing method is used."
},
"AllowedValues": [
"PayAsYouGo",
"Subscription"
],
"Required": true
},
"PrimaryVSwitchId": {
"Type": "String",
"Description": {
"en": "The virtual switch ID of the instance in primary availability zone must be in the availability zone corresponding to PrimaryZoneId."
},
"Required": true
},
"ArbiterVSwitchId": {
"Type": "String",
"Description": {
"en": "Arbitration virtual switch ID. The switch must be in the availability zone corresponding to ArbiterZoneId."
},
"Required": true
},
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "The ID of the virtual private cloud (VPC). If you leave this parameter and the VSwitchId\nparameter empty, the classic network type is used. The VPC network type is preferred."
},
"Required": false
},
"CoreDiskType": {
"Type": "String",
"Description": {
"en": "Core node disk type. Valid values:\ncloud_efficiency\ncloud_ssd\nlocal_hdd_pro\nlocal_ssd_pro"
},
"Required": true
},
"LogNodeCount": {
"Type": "Number",
"Description": {
"en": "Log number of nodes. The value of log nodes ranges from 4 to 400 and is a multiple of 4."
},
"Required": true
},
"LogDiskType": {
"Type": "String",
"Description": {
"en": "Log node disk type. Valid values:\ncloud_efficiency\ncloud_ssd\nlocal_hdd_pro\nlocal_ssd_pro"
},
"Required": true
},
"CoreDiskSize": {
"Type": "Number",
"Description": {
"en": "The value ranges from 400 GB to 64,000 GB. The step size is 40 GB."
},
"Required": true
},
"PeriodUnit": {
"AssociationProperty": "PayPeriodUnit",
"Type": "String",
"Description": {
"en": "The unit of the subscription period. Valid values:\nyear\nmonth"
},
"AllowedValues": [
"Month",
"Year",
"month",
"year"
],
"Required": false
}
},
"Resources": {
"MultiZoneCluster": {
"Type": "ALIYUN::HBase::MultiZoneCluster",
"Properties": {
"StandbyZoneId": {
"Ref": "StandbyZoneId"
},
"ResourceGroupId": {
"Ref": "ResourceGroupId"
},
"MasterInstanceType": {
"Ref": "MasterInstanceType"
},
"LogDiskSize": {
"Ref": "LogDiskSize"
},
"StandbyVSwitchId": {
"Ref": "StandbyVSwitchId"
},
"SecurityIPList": {
"Ref": "SecurityIPList"
},
"CoreInstanceType": {
"Ref": "CoreInstanceType"
},
"ClusterName": {
"Ref": "ClusterName"
},
"Engine": {
"Ref": "Engine"
},
"ArbiterZoneId": {
"Ref": "ArbiterZoneId"
},
"AutoRenewPeriod": {
"Ref": "AutoRenewPeriod"
},
"PrimaryZoneId": {
"Ref": "PrimaryZoneId"
},
"EngineVersion": {
"Ref": "EngineVersion"
},
"MultiZoneCombination": {
"Ref": "MultiZoneCombination"
},
"CoreNodeCount": {
"Ref": "CoreNodeCount"
},
"ArchVersion": {
"Ref": "ArchVersion"
},
"Period": {
"Ref": "Period"
},
"LogInstanceType": {
"Ref": "LogInstanceType"
},
"PayType": {
"Ref": "PayType"
},
"PrimaryVSwitchId": {
"Ref": "PrimaryVSwitchId"
},
"ArbiterVSwitchId": {
"Ref": "ArbiterVSwitchId"
},
"VpcId": {
"Ref": "VpcId"
},
"CoreDiskType": {
"Ref": "CoreDiskType"
},
"LogNodeCount": {
"Ref": "LogNodeCount"
},
"LogDiskType": {
"Ref": "LogDiskType"
},
"CoreDiskSize": {
"Ref": "CoreDiskSize"
},
"PeriodUnit": {
"Ref": "PeriodUnit"
}
}
}
},
"Outputs": {
"UiProxyConnAddrInfo": {
"Description": "WebUI connection information list.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"UiProxyConnAddrInfo"
]
}
},
"ClusterId": {
"Description": "The ID of the instance.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"ClusterId"
]
}
},
"ServiceConnAddrs": {
"Description": "LIST of ServiceConnAddr.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"ServiceConnAddrs"
]
}
},
"ThriftConn": {
"Description": "Thrift Connection address list.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"ThriftConn"
]
}
},
"SlbConnAddrs": {
"Description": "LIST of SlbConnAddr.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"SlbConnAddrs"
]
}
},
"ZkConnAddrs": {
"Description": "List of ZkConnAddr.",
"Value": {
"Fn::GetAtt": [
"MultiZoneCluster",
"ZkConnAddrs"
]
}
}
}
}