ALIYUN::MONGODB::ShardingInstance は、ApsaraDB for 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
}
}プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
ConfigServer | List | はい | いいえ | ConfigServer ノードの構成。 | 詳細については、ConfigServer プロパティを参照してください。 |
Mongos | List | はい | いいえ | mongos ノード。 | 2 ~ 32 個の mongos ノードを使用できます。 詳細については、Mongos プロパティを参照してください。 |
ReplicaSet | List | はい | いいえ | シャードノード。 | 2 ~ 32 個のシャードノードを使用できます。 詳細については、ReplicaSet プロパティを参照してください。 |
EngineVersion | String | いいえ | いいえ | データベースエンジンのバージョン。 | 有効値:
説明 インスタンスをクローンする場合、このプロパティの値はソースインスタンスのデータベースエンジンバージョンと同じである必要があります。 |
ZoneId | String | いいえ | いいえ | ゾーンの ID。 | なし。 |
AutoRenew | Boolean | いいえ | いいえ | インスタンスの自動更新を有効にするかどうかを指定します。 | 有効値:
説明 このプロパティは、ChargeType が PrePaid に設定されている場合に有効になります。 |
VSwitchId | String | いいえ | いいえ | vSwitch の ID。 | なし。 |
Period | Integer | いいえ | はい | インスタンスのサブスクリプション期間。 | 有効値: 1、2、3、4、5、6、7、8、9、12、24、および 36。 単位: 月。 説明 ChargeType を PrePaid に設定する場合は、このプロパティを指定する必要があります。 |
SecurityIPArray | String | いいえ | はい | インスタンスの IP アドレス ホワイトリストのエントリ。 | ホワイトリスト内の複数の IP アドレスはコンマ (,) で区切ります。各 IP アドレスはホワイトリスト内で一意である必要があります。ホワイトリストには最大 1,000 個の IP アドレスを含めることができます。 ホワイトリストのエントリは、次の形式で指定できます。
説明 % および 0.0.0.0/0 の値は、インスタンス上のデータベースにすべての IP アドレスからアクセスできることを指定します。これはセキュリティリスクを引き起こす可能性があります。これらの値を使用する場合は注意してください。 |
StorageEngine | String | いいえ | いいえ | インスタンスで使用されるストレージエンジン。 | 有効値:
説明 インスタンスをクローンする場合、このプロパティの値はソースインスタンスのストレージエンジンと同じである必要があります。 |
RestoreTime | String | いいえ | いいえ | インスタンスのクローン作成時にデータを復元する時点。 | ISO 8601 標準の yyyy-MM-ddTHH:mm:ssZ 形式で時間を指定します。時間は UTC である必要があります。このプロパティは、インスタンスをクローンする場合にのみ指定できます。このプロパティは、SrcDBInstanceId プロパティと一緒に指定する必要があります。 説明 このプロパティは、過去 7 日以内の時点に設定できます。 |
AccountPassword | String | いいえ | はい | ルートアカウントのパスワード。 | パスワードは 8 ~ 32 文字の長さでなければなりません。大文字、小文字、数字、特殊文字のうち少なくとも 3 つの文字タイプを含める必要があります。次の特殊文字がサポートされています: |
VpcId | String | いいえ | いいえ | 仮想プライベートクラウド (VPC) の ID。 | なし。 |
ProtocolType | String | いいえ | いいえ | アクセスプロトコルのタイプ。 | 有効値:
|
ChargeType | String | いいえ | はい | インスタンスの課金方法。 | 有効値:
|
SrcDBInstanceId | String | いいえ | いいえ | ソースインスタンスの ID。 | このプロパティは、インスタンスをクローンする場合にのみ指定できます。このプロパティは、RestoreTime プロパティと一緒に指定する必要があります。 |
Tags | List | いいえ | はい | タグ。 | 最大 20 個のタグを追加できます。 詳細については、タグのプロパティを参照してください。 |
TDEStatus | Boolean | いいえ | はい | 透過的データ暗号化 (TDE) を有効にするかどうかを指定します。 | 有効値:
|
ResourceGroupId | String | いいえ | はい | インスタンスが属するリソースグループの ID。 | なし。 |
DBInstanceDescription | String | いいえ | いいえ | インスタンスの名前。 | 名前は 2 ~ 256 文字の長さで、文字、数字、アンダースコア (_)、ハイフン (-) を含めることができます。文字で始める必要があります。 |
SecondaryZoneId | String | いいえ | いいえ | セカンダリノードのゾーン ID。 | 有効値:
説明
|
HiddenZoneId | String | いいえ | いいえ | 非表示ノードのゾーン ID。 | 有効値:
説明
|
StorageType | String | いいえ | いいえ | ストレージカテゴリ。 | 有効値:
|
Mongos 構文
"Mongos": [
{
"Class": String
}
]Mongos プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Class | String | はい | いいえ | mongos ノードのインスタンスタイプ。 | 詳細については、「インスタンスタイプ」をご参照ください。 |
ConfigServer 構文
"ConfigServer": [
{
"Storage": Integer,
"Class": String
}
]ConfigServer プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Class | String | はい | いいえ | ConfigServer ノードのインスタンスタイプ。 | 値を dds.cs.mid に設定します。 説明 このインスタンスタイプには、1 つの vCPU と 2 GB のメモリがあります。ConfigServer ノードの数は 1 に固定されています。 |
Storage | Integer | はい | いいえ | Configserver ノードのストレージ容量。 | 値を 20 に設定します。 単位: GB。 説明 ストレージ容量は 20 GB に固定されています。 |
ReplicaSet 構文
"ReplicaSet": [
{
"Storage": Integer,
"Class": String,
"ReadonlyReplicas": Integer
}
]ReplicaSet プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Class | String | はい | いいえ | シャードノードのインスタンスタイプ。 | 詳細については、インスタンスタイプを参照してください。 |
Storage | Integer | はい | いいえ | シャードノードのストレージ容量。 | 有効値: 10 ~ 2000。 単位: GB。 値は 10 GB 単位である必要があります。 |
ReadonlyReplicas | Integer | いいえ | いいえ | 作成する読み取り専用ノードの数。 | 有効値: 1 ~ 5。 |
Tags 構文
"Tags": [
{
"Key": String,
"Value": String
}
] Tags プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Key | String | はい | いいえ | タグのキー。 | キーは 1 ~ 128 文字の長さで、 |
Value | String | いいえ | いいえ | タグの値。 | 値は最大 128 文字の長さで、 |
戻り値
Fn::GetAtt
DBInstanceStatus: インスタンスのステータス。
DBInstanceId: インスタンスの ID。
OrderId: 注文の ID。
Arn: Alibaba Cloud リソースネーム (ARN)。
例
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": "MongoDB インスタンスのステータス。",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"DBInstanceStatus"
]
}
},
"DBInstanceId": {
"Description": "作成された MongoDB インスタンスのインスタンス ID。",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"DBInstanceId"
]
}
},
"OrderId": {
"Description": "作成されたインスタンスの注文 ID。",
"Value": {
"Fn::GetAtt": [
"MongoDbShardingInstance",
"OrderId"
]
}
}
}
}その他の例については、sharding-instance.yml を参照してください。