全部產品
Search
文件中心

:ALIYUN::MONGODB::ShardingInstance

更新時間:Jan 03, 2025

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

資料庫版本號碼。

取值:

  • 3.4

  • 4.0

  • 4.2

說明

複製執行個體時,該值必須與源執行個體保持一致。

ZoneId

String

可用性區域ID。

AutoRenew

Boolean

設定執行個體是否自動續約。

取值:

  • true:自動續約。

  • false(預設值):不自動續約,即手動續約。

說明

當ChargeType參數值為PrePaid時,該參數有效。

VSwitchId

String

交換器ID。

無。

Period

Integer

執行個體的購買時間長度。

取值:1~9、12、24、36。

單位:月。

說明

當ChargeType參數值為PrePaid時,該參數可用且必須指定。

SecurityIPArray

String

執行個體的IP白名單。

以半形逗號(,)隔開,不可重複,最多支援1000個IP。

支援格式:

  • %

  • 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地址都可以訪問執行個體的資料庫,屬於高危設定,請謹慎操作。

Mongos

List

Mongos節點。

節點數量:2~32。

更多資訊,請參見Mongos屬性

StorageEngine

String

執行個體使用的儲存引擎。

取值:

  • WiredTiger(預設值):適用於大多數業務情境。

  • RocksDB:適用於大量寫且少讀的情境。

  • TerarkDB:適用於多讀少寫或批量寫大量讀的情境。

說明

複製執行個體時,該值必須與源執行個體保持一致。

RestoreTime

String

複製執行個體時所恢複的時間點。

格式為yyyy-MM-ddTHH:mm:ssZ(UTC時間)。只有複製執行個體時才能指定該參數,且必須和SrcDBInstanceId參數同時指定。

說明

支援選擇7天內的任一時間點進行複製。

AccountPassword

String

Root帳號的密碼。

長度為8~32個字元,必須包含大寫英文字母、小寫英文字母、數字和特殊字元中至少三種,支援的特殊字元為:!#$%^&*()_+-=

VpcId

String

專用網路ID。

ProtocolType

String

訪問協議的類型。

取值:

  • mongodb:MongoDB協議。

  • dynamodb:DynamoDB協議。

ChargeType

String

執行個體的付費類型。

取值:

  • PostPaid(預設值):後付費(隨用隨付)。

  • PrePaid:預付費(訂用帳戶)。

    說明

    取值為PrePaid時,還需要指定Period參數。

ConfigServer

List

ConfigServer規格配置。

更多資訊,請參見ConfigServer屬性

SrcDBInstanceId

String

源執行個體ID。

只有複製執行個體時才能指定該參數,且必須和RestoreTime同時指定。

ReplicaSet

List

Shard節點。

節點數量:2~32。

更多資訊,請參見ReplicaSet屬性

Tags

List

標籤。

最多支援添加20個標籤。

更多資訊,請參見Tags屬性

TDEStatus

Boolean

是否啟用透明資料加密(TDE)。

取值:

  • true:啟用TDE。

    說明

    啟用TDE後,您將無法禁用它。

  • false(預設值):未啟用TDE。

ResourceGroupId

String

執行個體所屬的資源群組ID。

DBInstanceDescription

String

執行個體名稱。

長度為2~256個字元。以英文字母或漢字開頭,可包含英文字母、漢字、數字、底線(_)和短劃線(-)。

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

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個字元,不能以aliyunacs:開頭,不能包含http://https://

Value

String

標籤值。

長度為0~128個字元,不能以aliyunacs:開頭,不能包含http://https://

傳回值

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樣本