ALIYUN::MONGODB::Instance

ALIYUN::MONGODB::Instance类型用于创建或克隆MongoDB副本集实例。

语法

{
  "Type": "ALIYUN::MONGODB::Instance",
  "Properties": {
    "DatabaseNames": String,
    "VpcPasswordFree": Boolean,
    "ReadonlyReplicas": Integer,
    "BusinessInfo": String,
    "AccountPassword": String,
    "VpcId": String,
    "SecurityGroupId": String,
    "AutoRenew": Boolean,
    "ResourceGroupId": String,
    "VSwitchId": String,
    "StorageEngine": String,
    "SrcDBInstanceId": String,
    "ReplicationFactor": Integer,
    "ZoneId": String,
    "EngineVersion": String,
    "RestoreTime": String,
    "DBInstanceStorage": Integer,
    "DBInstanceDescription": String,
    "CouponNo": String,
    "Period": Integer,
    "SecurityIPArray": String,
    "ChargeType": String,
    "BackupId": String,
    "TDEStatus": Boolean,
    "DBInstanceClass": String,
    "NetworkType": String,
    "Tags": List,
    "SecondaryZoneId": String,
    "HiddenZoneId": String,
    "StorageType": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

VpcPasswordFree

Boolean

在VPC网络中访问创建或克隆的实例时,是否启用免密码。

取值:

  • true:启用免密码。

  • false:禁用免密码。

DBInstanceStorage

Integer

数据库实例的存储空间。

取值范围:10~3000,必须是10的倍数。

单位:GB。

DBInstanceClass

String

实例规格。

更多信息,请参见实例规格概述

TDEStatus

Boolean

是否启用透明数据加密(TDE)。

取值:

  • true:启用TDE。

    说明

    启用TDE后,您将无法禁用它。

  • false(默认值):禁用TDE。

SrcDBInstanceId

String

源实例ID。

只有克隆实例时才能指定该参数,且必须和BackupId或RestoreTime参数一同指定。

DBInstanceDescription

String

实例描述。

长度为2~256个字符。以汉字或英文字母开头,可包含汉字、英文字母、数字、下划线(_)和短划线(-)。

SecurityIPArray

String

所有可以访问创建或克隆实例的IP地址。

IP地址以半角逗号(,)隔开,不可重复,最多支持1000个。

支持格式:0.0.0.0/0、10.23.XX.XX(IP)或者10.23.XX.XX/24(CIDR模式,无类域间路由。/24表示地址中前缀的长度,取值范围:1~32)。

默认值:0.0.0.0/0,表示不指定IP白名单,即所有IP均可访问。

ZoneId

String

可用区ID。

更多信息,请参见DescribeRegions。在专有网络下,该参数取值需与VSwitchId的可用区保持一致。

VpcId

String

专有网络ID。

当NetworkType取值为VPC时,该参数有效。

SecurityGroupId

String

安全组ID。

VSwitchId

String

交换机ID。

当NetworkType取值为VPC时,该参数有效。

BackupId

String

备份集ID。

只有克隆实例时才能指定该参数,且必须和SrcDBInstanceId参数一同指定。

NetworkType

String

网络类型。

取值:

  • CLASSIC(默认值):经典网络。

  • VPC:专有网络。

AccountPassword

String

Root账号的密码。

长度为6~32个字符。可包含英文字母、数字和特殊字符!#$%^&*()_+-=

EngineVersion

String

数据库版本号。

取值:

  • 3.4(默认值)

  • 4.0

  • 4.2

  • 4.4

  • 5.0

StorageEngine

String

存储引擎。

关于存储引擎与版本选择的更多信息,请参见版本及存储引擎

取值:

  • WiredTiger(默认值):适用于大多数业务场景。

  • RocksDB:适用于大量写且少读的场景。

  • TerarkDB:适用于多读少写或批量写大量读的场景。

ReplicationFactor

Integer

副本集节点数。

取值:

  • 3(默认值)

  • 5

  • 7

DatabaseNames

String

数据库名称。

ReadonlyReplicas

Integer

只读节点的数量。

取值范围:1~5。

BusinessInfo

String

业务信息。

该参数为附加参数。

ResourceGroupId

String

资源组ID。

AutoRenew

Boolean

是否为实例启用自动续费。

取值:

  • true:自动续费。

  • false(默认值):手动续费。

RestoreTime

String

克隆实例时恢复数据的时间点。

格式:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

只有克隆实例时才能指定该参数,且必须和SrcDBInstanceId、BackupId参数一同指定。支持选择7天内的任一时间点进行克隆。

CouponNo

String

优惠码。

默认值:youhuiquan_promotion_option_id_for_blank。

Period

Integer

实例的购买时长。

单位:月。

取值:1、2、3、4、5、6、7、8、9、12、24、36。

默认值:1。

当ChargeType取值为PrePaid时,该参数有效。

ChargeType

String

实例的付费类型。

取值:

  • PostPaid:按量付费。

  • PrePaid:预付费。

Tags

List

标签。

最多添加20个标签。

更多信息,请参见Tags属性

SecondaryZoneId

String

配置从节点(Secondary节点)所在的可用区。

取值:

  • cn-hangzhou-g:杭州可用区G。

  • cn-hangzhou-h:杭州可用区H。

  • cn-hangzhou-i:杭州可用区I。

  • cn-hongkong-b:中国香港可用区B。

  • cn-hongkong-c:中国香港可用区C。

  • cn-hongkong-d:中国香港可用区D。

  • cn-wulanchabu-a:乌兰察布可用区A。

  • cn-wulanchabu-b:乌兰察布可用区B。

  • cn-wulanchabu-c:乌兰察布可用区C。

  • ap-southeast-1a:新加坡可用区A。

  • ap-southeast-1b:新加坡可用区B。

  • ap-southeast-1c:新加坡可用区C。

  • ap-southeast-5a:雅加达可用区A。

  • ap-southeast-5b:雅加达可用区B。

  • ap-southeast-5c:雅加达可用区C。

  • eu-central-1a:法兰克福可用区A。

  • eu-central-1b:法兰克福可用区B。

  • eu-central-1c:法兰克福可用区C。

说明
  • 当EngineVersion参数值为4.4或5.0时,该参数可用且为必填参数。

  • 该参数取值不能与ZoneId和HiddenZoneId参数值相同。

HiddenZoneId

String

配置隐藏节点(Hidden节点)所在的可用区。

取值:

  • cn-hangzhou-g:杭州可用区G。

  • cn-hangzhou-h:杭州可用区H。

  • cn-hangzhou-i:杭州可用区I。

  • cn-hongkong-b:中国香港可用区B。

  • cn-hongkong-c:中国香港可用区C。

  • cn-hongkong-d:中国香港可用区D。

  • cn-wulanchabu-a:乌兰察布可用区A。

  • cn-wulanchabu-b:乌兰察布可用区B。

  • cn-wulanchabu-c:乌兰察布可用区C。

  • ap-southeast-1a:新加坡可用区A。

  • ap-southeast-1b:新加坡可用区B。

  • ap-southeast-1c:新加坡可用区C。

  • ap-southeast-5a:雅加达可用区A。

  • ap-southeast-5b:雅加达可用区B。

  • ap-southeast-5c:雅加达可用区C。

  • eu-central-1a:法兰克福可用区A。

  • eu-central-1b:法兰克福可用区B。

  • eu-central-1c:法兰克福可用区C。

说明
  • 当EngineVersion参数值为4.4或5.0时,该参数可用且为必填参数。

  • 该参数值不能与ZoneId和SecondaryZoneId参数值相同。

StorageType

String

存储类型。

取值:

  • cloud_essd1:ESSD PL1云盘。

  • cloud_essd2:ESSD PL2云盘。

  • cloud_essd3:ESSD PL3云盘。

  • local_ssd:SSD本地盘。

Tags语法

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

Tags属性

属性名称

类型

必须

允许更新

描述

约束

Key

String

标签键。

长度为1~128个字符,不能以aliyunacs:开头,不能包含http://https://

Value

String

标签值。

长度为0~128个字符,不能以aliyunacs:开头,不能包含http://https://

返回值

Fn::GetAtt

  • OrderId:创建MongoDB实例的订单ID。

  • DBInstanceId:MongoDB实例ID,全局唯一。

  • DBInstanceStatus:MongoDB实例的状态信息。

  • ConnectionURI:连接URI。

  • ReplicaSetName:副本集名称。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Description: Test MONGODB Instance
    Parameters:
      VpcId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
      ZoneId:
        Type: String
        AssociationProperty: ALIYUN::ECS::ZoneId
      VSwitchId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
        AssociationPropertyMetadata:
          ZoneId: ${ZoneId}
          VpcId: ${VpcId}
    Resources:
      MongoDB:
        Type: ALIYUN::MONGODB::Instance
        Properties:
          DBInstanceClass: dds.mongo.mid
          DBInstanceStorage: 10
          ZoneId:
            Ref: ZoneId
          VpcId:
            Ref: VpcId
          VSwitchId:
            Ref: VSwitchId
    Outputs: {}
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Description": "Test MONGODB Instance",
      "Parameters": {
        "VpcId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
        },
        "ZoneId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::ZoneId"
        },
        "VSwitchId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
          "AssociationPropertyMetadata": {
            "ZoneId": "${ZoneId}",
            "VpcId": "${VpcId}"
          }
        }
      },
      "Resources": {
        "MongoDB": {
          "Type": "ALIYUN::MONGODB::Instance",
          "Properties": {
            "DBInstanceClass": "dds.mongo.mid",
            "DBInstanceStorage": 10,
            "ZoneId": {
              "Ref": "ZoneId"
            },
            "VpcId": {
              "Ref": "VpcId"
            },
            "VSwitchId": {
              "Ref": "VSwitchId"
            }
          }
        }
      },
      "Outputs": {
      }
    }           

更多示例,请参见:JSON示例YAML示例