ALIYUN::HBase::Cluster

ALIYUN::HBase::Cluster类型用于创建HBase集群。

语法

{
  "Type": "ALIYUN::HBase::Cluster",
  "Properties": {
    "AutoRenewPeriod": Integer,
    "ColdStorageSize": Integer,
    "EngineVersion": String,
    "ResourceGroupId": String,
    "NodeCount": Integer,
    "ZoneId": String,
    "VSwitchId": String,
    "Period": Integer,
    "EncryptionKey": String,
    "PayType": String,
    "MasterInstanceType": String,
    "DiskType": String,
    "VpcId": String,
    "SecurityIPList": String,
    "CoreInstanceType": String,
    "DiskSize": Integer,
    "ClusterName": String,
    "Engine": String,
    "PeriodUnit": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

AutoRenewPeriod

Integer

设置实例自动续费周期。

单位为月。

例如自动续费周期设置为2,表示实例到期后自动续费2个月。

说明

自动续费周期默认值为0,表示实例到期后不自动续费。

ColdStorageSize

Integer

实例的冷存储容量大小。

单位为GB。取值:

  • 取值为0:表示不开启冷存储。

  • 取值范围为800~1000000:表示开启冷存储。

说明

仅当实例的引擎类型为hbaseue时,开启冷存储功能才有效。

EngineVersion

String

实例的引擎版本。

与引擎类型有关,取值:

  • 如果实例的引擎类型为hbase,引擎版本为1.1或者2.0

  • 如果实例的引擎类型为hbaseue,引擎版本为2.0

  • 如果实例的引擎类型为bds,引擎版本为1.0

ResourceGroupId

String

资源组ID。

NodeCount

Integer

Core节点个数。

取值如下:

  • 如果实例为单节点,Core节点个数固定为1个。

  • 如果实例为云盘版,Core节点个数取值范围为2~100。

  • 如果实例为本地盘,Core节点个数取值范围为4~100。

ZoneId

String

可用区ID。

VSwitchId

String

专有网络下的虚拟交换机ID。

Period

Integer

包年包月实例的购买时长。

取值:

  • 当 PeriodUnit 为year时,取值范围为1~3

  • 当 PeriodUnit 为month时,取值范围为1~9

说明

仅当实例的付费类型为Prepaid时,需要填写此参数。

EncryptionKey

String

加密的密钥ID。

如果未启用加密则为空,当前云盘版加密开启后无法关闭。

PayType

String

实例的付费类型。

取值:

  • Prepaid:包年包月(预付费)。

  • Postpaid:按量付费(后付费)。

MasterInstanceType

String

Master节点规格。

您可以调用DescribeAvailableResource接口获取规格值。

DiskType

String

实例的Core磁盘类型。

取值:

  • cloud_efficiency:高效云盘。

  • cloud_ssd:SSD云盘。

  • local_hdd_pro:本地HDD盘。

  • local_ssd_pro:本地SSD盘。

  • cloud_essd_pl1:ESSD云盘。

VpcId

String

专有网络ID。

本参数与VswitchId参数同时为空时表示实例的网络类型为经典网络。

SecurityIPList

String

添加实例的白名单 IP 地址。

多个白名单IP地址之间使用半角逗号(,)分隔。

说明

如果IP地址设置为127.0.0.1,表示禁止所有地址访问该实例。例如IP地址为192.168.0.0/24表示允许所有192.168.0.XX的IP地址访问该实例。

CoreInstanceType

String

Core节点规格。

您可以调用DescribeAvailableResource接口获取规格值。

DiskSize

Integer

Core单节点磁盘大小。

单位:GB。

  • 如果实例为单节点,Core单节点磁盘容量的范围为20~500 GB,步长为1 GB。

  • 如果实例为云盘版,Core单节点磁盘容量的范围为400~64000 GB,步长为40 GB。

  • 如果实例为本地盘,Core单节点磁盘容量与Core节点规格有关,具体如下:

    • Core节点规格为hbase.d1.4xlarge时,磁盘容量为44000。

    • Core节点规格为hbase.d1.6xlarge时,磁盘容量为66000。

    • Core节点规格为hbase.d1.8xlarge时,磁盘容量为88000。

    • Core节点规格为hbase.i2.xlarge时,磁盘容量为894。

    • Core节点规格为hbase.i2.2xlarge时,磁盘容量为1788。

    • Core节点规格为hbase.i2.4xlarge时,磁盘容量为3576。

    • Core节点规格为hbase.i2.8xlarge时,磁盘容量为7152。

    • Core节点规格为hbase.d2s.5xlarge时,磁盘容量为58400。

    • Core节点规格为hbase.d2s.10xlarge时,磁盘容量为109500。

ClusterName

String

实例名称。

命名规则为:

  • 长度为2~128个字符。

  • 以大小写字母或中文开头。

  • 可包含数字或者特殊字符,特殊字符包括半角句号(.)、短横线(-)和下划线(_)。

Engine

String

数据库引擎类型。

取值:

  • hbase:HBase标准版或HBase单机版。

  • hbaseue:HBase增强版。

  • bds:表示BDS实例。

PeriodUnit

String

包年包月实例的购买单位。

取值:

  • year:年。

  • month:月。

说明

仅当实例的付费类型为Prepaid时,需要填写此参数。

返回值

Fn::GetAtt

  • UiProxyConnAddrInfo:WebUI连接信息列表。

  • ClusterId:实例ID。

  • ServiceConnAddrs:子服务地址列表。

  • ThriftConn:Thrift连接地址信息列表。

  • SlbConnAddrs:Slb连接信息列表。

  • ZkConnAddrs:Zookeeper连接信息列表。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      VpcId:
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
        Required: false
        Type: String
        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.
      VSwitchId:
        AssociationProperty: ALIYUN::VPC::VSwitch::VSwitchId
        AssociationPropertyMetadata:
          VpcId: ${VpcId}
          ZoneId: ${ZoneId}
        Required: false
        Type: String
        Description:
          en: The ID of the vSwitch.
      PayType:
        Default: Postpaid
        Required: true
        Type: String
        Description:
          en: |-
            The billing method.
            Prepaid: The subscription billing method is used.
            Postpaid: The pay-as-you-go billing method is used.
        AllowedValues:
          - Prepaid
          - Postpaid
      ZoneId:
        AssociationProperty: ZoneId
        Required: true
        Type: String
        Description:
          en: The ID of the zone.
    Resources:
      Cluster:
        Type: ALIYUN::HBase::Cluster
        Properties:
          Engine: hbaseue
          VpcId:
            Ref: VpcId
          CoreInstanceType: hbase.sn1.2xlarge
          PayType:
            Ref: PayType
          ZoneId:
            Ref: ZoneId
          MasterInstanceType: hbase.sn1.large
          VSwitchId:
            Ref: VSwitchId
          EngineVersion: '2.0'
          NodeCount: 2
          DiskSize: 400
          DiskType: cloud_ssd
    Outputs:
      ServiceConnAddrs:
        Description: LIST of ServiceConnAddr.
        Value:
          Fn::GetAtt:
            - Cluster
            - ServiceConnAddrs
      UiProxyConnAddrInfo:
        Description: WebUI connection information list.
        Value:
          Fn::GetAtt:
            - Cluster
            - UiProxyConnAddrInfo
      ThriftConn:
        Description: Thrift Connection address list.
        Value:
          Fn::GetAtt:
            - Cluster
            - ThriftConn
      SlbConnAddrs:
        Description: LIST of SlbConnAddr.
        Value:
          Fn::GetAtt:
            - Cluster
            - SlbConnAddrs
      ClusterId:
        Description: The ID of the instance.
        Value:
          Fn::GetAtt:
            - Cluster
            - ClusterId
      ZkConnAddrs:
        Description: List of ZkConnAddr.
        Value:
          Fn::GetAtt:
            - Cluster
            - ZkConnAddrs
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "ZoneId": {
          "AssociationProperty": "ZoneId",
          "Type": "String",
          "Description": {
            "en": "The ID of the zone."
          },
          "Required": true
        },
        "VSwitchId": {
          "AssociationPropertyMetadata": {
            "VpcId": "${VpcId}",
            "ZoneId": "${ZoneId}"
          },
          "AssociationProperty": "ALIYUN::VPC::VSwitch::VSwitchId",
          "Type": "String",
          "Description": {
            "en": "The ID of the vSwitch."
          },
          "Required": false
        },
        "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": [
            "Prepaid",
            "Postpaid"
          ],
          "Required": true,
          "Default": "Postpaid"
        },
        "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
        }
      },
      "Resources": {
        "Cluster": {
          "Type": "ALIYUN::HBase::Cluster",
          "Properties": {
            "EngineVersion": "2.0",
            "NodeCount": 2,
            "ZoneId": {
              "Ref": "ZoneId"
            },
            "VSwitchId": {
              "Ref": "VSwitchId"
            },
            "PayType": {
              "Ref": "PayType"
            },
            "MasterInstanceType": "hbase.sn1.large",
            "DiskType": "cloud_ssd",
            "VpcId": {
              "Ref": "VpcId"
            },
            "CoreInstanceType": "hbase.sn1.2xlarge",
            "Engine": "hbaseue",
            "DiskSize": 400
          }
        }
      },
      "Outputs": {
        "UiProxyConnAddrInfo": {
          "Description": "WebUI connection information list.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "UiProxyConnAddrInfo"
            ]
          }
        },
        "ClusterId": {
          "Description": "The ID of the instance.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "ClusterId"
            ]
          }
        },
        "ServiceConnAddrs": {
          "Description": "LIST of ServiceConnAddr.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "ServiceConnAddrs"
            ]
          }
        },
        "ThriftConn": {
          "Description": "Thrift Connection address list.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "ThriftConn"
            ]
          }
        },
        "SlbConnAddrs": {
          "Description": "LIST of SlbConnAddr.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "SlbConnAddrs"
            ]
          }
        },
        "ZkConnAddrs": {
          "Description": "List of ZkConnAddr.",
          "Value": {
            "Fn::GetAtt": [
              "Cluster",
              "ZkConnAddrs"
            ]
          }
        }
      }
    }