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,
    "Tags": List,
    "SecondaryZoneId": String,
    "HiddenZoneId": String,
    "StorageType": String,
    "PrivateConnections": Map
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

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。

SecurityGroupId

String

安全组ID。

VSwitchId

String

交换机ID。

BackupId

String

备份集ID。

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

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本地盘。

PrivateConnections

Map

私有连接的连接配置。

更多信息,请参见PrivateConnections属性。

Tags语法

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

Tags属性

属性名称

类型

必须

允许更新

描述

约束

Key

String

标签键。

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

Value

String

标签值。

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

PrivateConnections语法

"PrivateConnections": 
  {
    "ReplicaConnections": List
  }  

PrivateConnections属性

属性名称

类型

必须

允许更新

描述

约束

ReplicaConnections

List

副本私有连接。

更多信息,请参见ReplicaConnections属性。

ReplicaConnections语法

"ReplicaConnections": [
  {
    "ConnectionPort": Integer,
    "ConnectionString": String
  }
]  

ReplicaConnections属性

属性名称

类型

必须

允许更新

描述

约束

ConnectionPort

Integer

MongoDB 实例的服务端口号。

有效值:1000 到 65535。

ConnectionString

String

连接字符串的前缀。

前缀必须为8到64个字符长,并且可以包含小写字母和数字。它必须以一个小写字母开头。

返回值

Fn::GetAtt

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

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

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

  • ConnectionURI:连接URI。

  • ReplicaSetName:副本集名称。

示例

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: {}
{
  "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": {
  }
}           

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