全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::MONGODB::ShardingInstance

更新时间:Aug 07, 2025

ALIYUN::MONGODB::ShardingInstance digunakan untuk membuat atau mengkloning instance kluster terpecah ApsaraDB for MongoDB.

Sintaksis

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

Properti

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

ConfigServer

List

Ya

Tidak

Konfigurasi node Configserver.

Untuk informasi lebih lanjut, lihat Properti ConfigServer.

Mongos

List

Ya

Tidak

Node mongos.

Anda dapat menggunakan 2 hingga 32 node mongos.

Untuk informasi lebih lanjut, lihat Properti Mongos.

ReplicaSet

List

Ya

Tidak

Node shard.

Anda dapat menggunakan 2 hingga 32 node shard.

Untuk informasi lebih lanjut, lihat Properti ReplicaSet.

EngineVersion

String

Tidak

Tidak

Versi mesin database.

Nilai yang valid:

  • 3.4

  • 4.0

  • 4.2

Catatan

Ketika Anda mengkloning sebuah instance, nilai properti ini harus sama dengan versi mesin database dari instance sumber.

ZoneId

String

Tidak

Tidak

ID zona.

Tidak ada.

AutoRenew

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan perpanjangan otomatis untuk instance.

Nilai yang valid:

  • true: mengaktifkan perpanjangan otomatis untuk instance.

  • false (default): menonaktifkan perpanjangan otomatis untuk instance. Anda harus memperpanjang instance secara manual.

Catatan

Properti ini berlaku ketika ChargeType diatur ke PrePaid.

VSwitchId

String

Tidak

Tidak

ID vSwitch.

Tidak ada.

Period

Integer

Tidak

Ya

Durasi langganan instance.

Nilai yang valid: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, dan 36.

Satuan: bulan.

Catatan

Anda harus menentukan properti ini ketika ChargeType diatur ke PrePaid.

SecurityIPArray

String

Tidak

Ya

Entri dalam daftar putih alamat IP instance.

Pisahkan beberapa alamat IP dalam daftar putih dengan koma (,). Setiap alamat IP harus unik dalam daftar putih. Daftar putih dapat berisi hingga 1.000 alamat IP.

Anda dapat menentukan entri dalam daftar putih dalam format berikut:

  • %.

  • 0.0.0.0/0.

  • Alamat IP, seperti 10.23.XX.XX.

  • Blok CIDR, seperti 10.23.XX.XX/24. /24 menentukan bahwa awalan blok CIDR adalah 24 bit panjangnya. Anda dapat mengganti 24 dengan nilai yang berkisar antara 1 hingga 32.

Catatan

Nilai % dan 0.0.0.0/0 menentukan bahwa database pada instance dapat diakses dari semua alamat IP. Ini mungkin menyebabkan risiko keamanan. Berhati-hatilah saat menggunakan nilai-nilai ini.

StorageEngine

String

Tidak

Tidak

Mesin penyimpanan yang digunakan oleh instance.

Nilai yang valid:

  • WiredTiger (default): cocok untuk sebagian besar skenario.

  • RocksDB: cocok untuk skenario di mana banyak operasi tulis dan sedikit operasi baca dilakukan.

  • TerarkDB: cocok untuk skenario di mana lebih banyak operasi baca dilakukan daripada operasi tulis atau skenario di mana beberapa operasi tulis dilakukan sekaligus dan banyak operasi baca dilakukan.

Catatan

Ketika Anda mengkloning sebuah instance, nilai properti ini harus sama dengan mesin penyimpanan instance sumber.

RestoreTime

String

Tidak

Tidak

Titik waktu ke mana Anda ingin memulihkan data saat Anda mengkloning instance.

Tentukan waktu dalam standar ISO 8601 dalam format yyyy-MM-ddTHH:mm:ssZ. Waktu harus dalam UTC. Anda hanya dapat menentukan properti ini saat mengkloning instance. Anda harus menentukan properti ini bersama dengan properti SrcDBInstanceId.

Catatan

Anda dapat mengatur properti ini ke titik waktu dalam tujuh hari sebelumnya.

AccountPassword

String

Tidak

Ya

Kata sandi akun root.

Kata sandi harus 8 hingga 32 karakter panjangnya. Harus mengandung setidaknya tiga dari jenis karakter berikut: huruf besar, huruf kecil, angka, dan karakter khusus. Karakter khusus berikut didukung: ! # $ % ^ & * ( ) _ + - =.

VpcId

String

Tidak

Tidak

ID virtual private cloud (VPC).

Tidak ada.

ProtocolType

String

Tidak

Tidak

Jenis protokol akses.

Nilai yang valid:

  • mongodb

  • dynamodb

ChargeType

String

Tidak

Ya

Metode penagihan instance.

Nilai yang valid:

  • PostPaid (default): bayar sesuai pemakaian.

  • PrePaid: langganan.

    Catatan

    Jika Anda mengatur properti ini ke PrePaid, Anda harus menentukan Period.

SrcDBInstanceId

String

Tidak

Tidak

ID instance sumber.

Anda hanya dapat menentukan properti ini saat mengkloning instance. Anda harus menentukan properti ini bersama dengan properti RestoreTime.

Tags

List

Tidak

Ya

Tag.

Anda dapat menambahkan hingga 20 tag.

Untuk informasi lebih lanjut, lihat Properti Tags.

TDEStatus

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan enkripsi data transparan (TDE).

Nilai yang valid:

  • true: mengaktifkan TDE.

    Catatan

    Setelah TDE diaktifkan, Anda tidak dapat menonaktifkannya.

  • false (default): menonaktifkan TDE.

ResourceGroupId

String

Tidak

Ya

ID grup sumber daya tempat instance milik.

Tidak ada.

DBInstanceDescription

String

Tidak

Tidak

Nama instance.

Nama harus memiliki panjang 2 hingga 256 karakter, dan dapat berisi huruf, angka, garis bawah (_), dan tanda hubung (-). Harus dimulai dengan huruf.

SecondaryZoneId

String

Tidak

Tidak

ID zona node sekunder.

Nilai yang valid:

  • cn-hangzhou-g: ID Hangzhou Zone G.

  • cn-hangzhou-h: ID Hangzhou Zone H.

  • cn-hangzhou-i: ID Hangzhou Zone I.

  • cn-hongkong-b: ID Hong Kong Zone B.

  • cn-hongkong-c: ID Hong Kong Zone C.

  • cn-hongkong-d: ID Hong Kong Zone D.

  • cn-wulanchabu-a: ID Ulanqab Zone A.

  • cn-wulanchabu-b: ID Ulanqab Zone B.

  • cn-wulanchabu-c: ID Ulanqab Zone C.

  • ap-southeast-1a: ID Singapore Zone A.

  • ap-southeast-1b: ID Singapore Zone B.

  • ap-southeast-1c: ID Singapore Zone C.

  • ap-southeast-5a: ID Jakarta Zone A.

  • ap-southeast-5b: ID Jakarta Zone B.

  • ap-southeast-5c: ID Jakarta Zone C.

  • eu-central-1a: ID Frankfurt Zone A.

  • eu-central-1b: ID Frankfurt Zone B.

  • eu-central-1c: ID Frankfurt Zone C.

Catatan
  • Anda harus menentukan properti ini ketika EngineVersion diatur ke 4.4 atau 5.0.

  • Nilai SecondaryZoneId harus berbeda dari nilai ZoneId dan HiddenZoneId.

HiddenZoneId

String

Tidak

Tidak

ID zona node tersembunyi.

Nilai yang valid:

  • cn-hangzhou-g: ID Hangzhou Zone G.

  • cn-hangzhou-h: ID Hangzhou Zone H.

  • cn-hangzhou-i: ID Hangzhou Zone I.

  • cn-hongkong-b: ID Hong Kong Zone B.

  • cn-hongkong-c: ID Hong Kong Zone C.

  • cn-hongkong-d: ID Hong Kong Zone D.

  • cn-wulanchabu-a: ID Ulanqab Zone A.

  • cn-wulanchabu-b: ID Ulanqab Zone B.

  • cn-wulanchabu-c: ID Ulanqab Zone C.

  • ap-southeast-1a: ID Singapore Zone A.

  • ap-southeast-1b: ID Singapore Zone B.

  • ap-southeast-1c: ID Singapore Zone C.

  • ap-southeast-5a: ID Jakarta Zone A.

  • ap-southeast-5b: ID Jakarta Zone B.

  • ap-southeast-5c: ID Jakarta Zone C.

  • eu-central-1a: ID Frankfurt Zone A.

  • eu-central-1b: ID Frankfurt Zone B.

  • eu-central-1c: ID Frankfurt Zone C.

Catatan
  • Anda harus menentukan properti ini ketika EngineVersion diatur ke 4.4 atau 5.0.

  • Nilai HiddenZoneId harus berbeda dari nilai ZoneId dan SecondaryZoneId.

StorageType

String

Tidak

Tidak

Kategori penyimpanan.

Nilai yang valid:

  • cloud_essd1: PL1 Enterprise SSD (ESSD).

  • cloud_essd2: ESSD PL2.

  • cloud_essd3: ESSD PL3.

  • local_ssd: SSD lokal.

Sintaksis Mongos

"Mongos": [
  {
    "Class": String
  }
]

Properti Mongos

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Class

String

Ya

Tidak

Tipe instance node mongos.

Untuk informasi lebih lanjut, lihat Tipe Instance.

Sintaksis ConfigServer

"ConfigServer": [
  {
    "Storage": Integer,
    "Class": String
  }
]

Properti ConfigServer

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Class

String

Ya

Tidak

Tipe instance node Configserver.

Atur nilai menjadi dds.cs.mid.

Catatan

Tipe instance ini memiliki 1 vCPU dan 2 GB memori. Jumlah node Configserver tetap sebanyak 1.

Storage

Integer

Ya

Tidak

Kapasitas penyimpanan node Configserver.

Atur nilai menjadi 20.

Satuan: GB.

Catatan

Kapasitas penyimpanan tetap sebesar 20 GB.

Sintaksis ReplicaSet

"ReplicaSet": [
  {
    "Storage": Integer,
    "Class": String,
    "ReadonlyReplicas": Integer
  }
]

Properti ReplicaSet

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Class

String

Ya

Tidak

Tipe instance node shard.

Untuk informasi lebih lanjut, lihat Tipe instansi.

Storage

Integer

Ya

Tidak

Kapasitas penyimpanan node shard.

Nilai yang valid: 10 hingga 2000.

Satuan: GB.

Nilai harus dalam kelipatan 10 GB.

ReadonlyReplicas

Integer

Tidak

Tidak

Jumlah node baca-saja yang ingin Anda buat.

Nilai yang valid: 1 hingga 5.

Sintaksis Tags

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

Properti Tags

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Key

String

Ya

Tidak

Kunci tag.

Kunci harus 1 hingga 128 karakter panjangnya, dan tidak boleh mengandung http:// atau https://. Tidak boleh dimulai dengan aliyun atau acs:.

Value

String

Tidak

Tidak

Nilai tag.

Nilai dapat hingga 128 karakter panjangnya, dan tidak boleh mengandung http:// atau https://. Tidak boleh dimulai dengan aliyun atau acs:.

Nilai Kembali

Fn::GetAtt

  • DBInstanceStatus: Status instance.

  • DBInstanceId: ID instance.

  • OrderId: ID pesanan.

  • Arn: Alibaba Cloud Resource Name (ARN).

Contoh

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"
        ]
      }
    }
  }
}

Untuk lebih banyak contoh, lihat sharding-instance.yml.