ALIYUN::MONGODB::ShardingInstance類型用於建立或者複製MongoDB分區叢集執行個體。
文法
{
"Type": "ALIYUN::MONGODB::ShardingInstance",
"Properties": {
"EngineVersion": String,
"ZoneId": String,
"AutoRenew": Boolean,
"VSwitchId": String,
"Period": Integer,
"SecurityIPArray": String,
"Mongos": List,
"StorageEngine": String,
"RestoreTime": String,
"AccountPassword": String,
"VpcId": String,
"ProtocolType": String,
"ChargeType": String,
"ConfigServer": List,
"SrcDBInstanceId": String,
"ReplicaSet": List,
"Tags": List,
"TDEStatus": Boolean,
"DBInstanceDescription": String,
"ResourceGroupId": String,
"SecondaryZoneId": String,
"HiddenZoneId": String,
"StorageType": String
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
EngineVersion | String | 否 | 否 | 資料庫版本號碼。 | 取值:
說明 複製執行個體時,該值必須與源執行個體保持一致。 |
ZoneId | String | 否 | 否 | 可用性區域ID。 | 無 |
AutoRenew | Boolean | 否 | 否 | 設定執行個體是否自動續約。 | 取值:
說明 當ChargeType參數值為PrePaid時,該參數有效。 |
VSwitchId | String | 否 | 否 | 交換器ID。 | 無。 |
Period | Integer | 否 | 否 | 執行個體的購買時間長度。 | 取值:1~9、12、24、36。 單位:月。 說明 當ChargeType參數值為PrePaid時,該參數可用且必須指定。 |
SecurityIPArray | String | 否 | 否 | 執行個體的IP白名單。 | 以半形逗號(,)隔開,不可重複,最多支援1000個IP。 支援格式:
說明 %和0.0.0.0/0表示任何IP地址都可以訪問執行個體的資料庫,屬於高危設定,請謹慎操作。 |
Mongos | List | 是 | 否 | Mongos節點。 | 節點數量:2~32。 更多資訊,請參見Mongos屬性。 |
StorageEngine | String | 否 | 否 | 執行個體使用的儲存引擎。 | 取值:
說明 複製執行個體時,該值必須與源執行個體保持一致。 |
RestoreTime | String | 否 | 否 | 複製執行個體時所恢複的時間點。 | 格式為yyyy-MM-ddTHH:mm:ssZ(UTC時間)。只有複製執行個體時才能指定該參數,且必須和SrcDBInstanceId參數同時指定。 說明 支援選擇7天內的任一時間點進行複製。 |
AccountPassword | String | 否 | 是 | Root帳號的密碼。 | 長度為8~32個字元,必須包含大寫英文字母、小寫英文字母、數字和特殊字元中至少三種,支援的特殊字元為: |
VpcId | String | 否 | 否 | 專用網路ID。 | 無 |
ProtocolType | String | 否 | 否 | 訪問協議的類型。 | 取值:
|
ChargeType | String | 否 | 否 | 執行個體的付費類型。 | 取值:
|
ConfigServer | List | 是 | 否 | ConfigServer規格配置。 | 更多資訊,請參見ConfigServer屬性。 |
SrcDBInstanceId | String | 否 | 否 | 源執行個體ID。 | 只有複製執行個體時才能指定該參數,且必須和RestoreTime同時指定。 |
ReplicaSet | List | 是 | 否 | Shard節點。 | 節點數量:2~32。 更多資訊,請參見ReplicaSet屬性。 |
Tags | List | 否 | 是 | 標籤。 | 最多支援添加20個標籤。 更多資訊,請參見Tags屬性。 |
TDEStatus | Boolean | 否 | 是 | 是否啟用透明資料加密(TDE)。 | 取值:
|
ResourceGroupId | String | 否 | 是 | 執行個體所屬的資源群組ID。 | 無 |
DBInstanceDescription | String | 否 | 否 | 執行個體名稱。 | 長度為2~256個字元。以英文字母或漢字開頭,可包含英文字母、漢字、數字、底線(_)和短劃線(-)。 |
SecondaryZoneId | String | 否 | 否 | 配置從節點(Secondary節點)所在的可用性區域。 | 取值:
說明
|
HiddenZoneId | String | 否 | 否 | 配置隱藏節點(Hidden節點)所在的可用性區域。 | 取值:
說明
|
StorageType | String | 否 | 否 | 儲存類型。 | 取值:
|
Mongos文法
"Mongos": [
{
"Class": String
}
]
Mongos屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Class | String | 是 | 否 | Mongos節點的規格。 | 關於取值的更多資訊,請參見執行個體規格。 |
ConfigServer文法
"ConfigServer": [
{
"Storage": Integer,
"Class": String
}
]
ConfigServer屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Storage | Integer | 是 | 否 | ConfigServer的儲存空間。 | 取值:20。 單位:GB。 說明 儲存空間取值固定為20 GB。 |
Class | String | 是 | 否 | ConfigServer的規格。 | 取值:dds.cs.mid。 說明 規格固定為1核2 GB,數量固定為1個。 |
ReplicaSet文法
"ReplicaSet": [
{
"Storage": Integer,
"Class": String,
"ReadonlyReplicas": Integer
}
]
ReplicaSet屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Storage | Integer | 是 | 否 | Shard節點的儲存空間。 | 取值範圍:10~2000。 單位:GB。 每10 GB遞增。 |
Class | String | 是 | 否 | Shard節點的規格。 | 關於取值的更多資訊,請參見執行個體規格。 |
ReadonlyReplicas | Integer | 否 | 否 | 建立唯讀節點的個數。 | 取值範圍:1~5。 |
Tags文法
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標籤鍵。 | 長度為1~128個字元,不能以 |
Value | String | 否 | 否 | 標籤值。 | 長度為0~128個字元,不能以 |
傳回值
Fn::GetAtt
DBInstanceStatus:執行個體狀態。
DBInstanceId:執行個體ID。
OrderId:訂單ID。
樣本
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
ZoneId:
Type: String
AssociationProperty: ALIYUN::ECS::ZoneId
Resources:
MongoDbShardingInstance:
Type: ALIYUN::MONGODB::ShardingInstance
Properties:
ZoneId:
Ref: ZoneId
EngineVersion: '4.0'
Mongos:
- Class: dds.mongos.mid
- Class: dds.mongos.mid
ReplicaSet:
- Class: dds.shard.mid
Storage: 10
- Class: dds.shard.mid
Storage: 20
ConfigServer:
- Class: dds.cs.mid
Storage: 20
TDEStatus: false
Outputs:
DBInstanceStatus:
Description: Status of mongodb instance.
Value:
Fn::GetAtt:
- MongoDbShardingInstance
- DBInstanceStatus
DBInstanceId:
Description: The instance id of created mongodb instance.
Value:
Fn::GetAtt:
- MongoDbShardingInstance
- DBInstanceId
OrderId:
Description: Order Id of created instance.
Value:
Fn::GetAtt:
- MongoDbShardingInstance
- OrderId
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"ZoneId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::ZoneId"
}
},
"Resources": {
"MongoDbShardingInstance": {
"Type": "ALIYUN::MONGODB::ShardingInstance",
"Properties": {
"ZoneId": {
"Ref": "ZoneId"
},
"EngineVersion": "4.0",
"Mongos": [
{
"Class": "dds.mongos.mid"
},
{
"Class": "dds.mongos.mid"
}
],
"ReplicaSet": [
{
"Class": "dds.shard.mid",
"Storage": 10
},
{
"Class": "dds.shard.mid",
"Storage": 20
}
],
"ConfigServer": [
{
"Class": "dds.cs.mid",
"Storage": 20
}
],
"TDEStatus": false
}
}
},
"Outputs": {
"DBInstanceStatus": {
"Description": "Status of mongodb instance.",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"DBInstanceStatus"
]
}
},
"DBInstanceId": {
"Description": "The instance id of created mongodb instance.",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"DBInstanceId"
]
}
},
"OrderId": {
"Description": "Order Id of created instance.",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"OrderId"
]
}
}
}
}
更多樣本,請參見:YAML樣本。