All Products
Search
Document Center

Resource Orchestration Service:ALIYUN::RDS::DBInstanceClone

Last Updated:Sep 08, 2026

Gunakan ALIYUN::RDS::DBInstanceClone untuk memulihkan data historis ke instans baru, yang disebut instans klon.

Sintaks

{
  "Type": "ALIYUN::RDS::DBInstanceClone",
  "Properties": {
    "PeriodType": String,
    "Category": String,
    "PrivateIpAddress": String,
    "DedicatedHostGroupId": String,
    "BackupId": String,
    "RestoreTime": String,
    "InstanceNetworkType": String,
    "DbNames": String,
    "Port": Integer,
    "ConnectionStringPrefix": String,
    "ConnectionStringType": String,
    "TimeoutInMinutes": Integer,
    "PreferredBackupPeriod": List,
    "DBInstanceId": String,
    "SecurityIPList": String,
    "DBInstanceStorage": Integer,
    "BackupType": String,
    "DBMappings": List,
    "MaintainTime": String,
    "Tags": Map,
    "DBInstanceDescription": String,
    "ZoneId": String,
    "SlaveZoneIds": List,
    "DBInstanceClass": String,
    "AllocatePublicConnection": Boolean,
    "SecurityGroupId": String,
    "PreferredBackupTime": String,
    "VSwitchId": String,
    "Period": Integer,
    "PayType": String,
    "DBInstanceStorageType": String,
    "RestoreTable": String,
    "MasterUserPassword": String,
    "MasterUserType": String,
    "VpcId": String,
    "SSLSetting": String,
    "MasterUsername": String,
    "SQLCollectorStatus": String,
    "BackupRetentionPeriod": Number,
    "TableMeta": List
  }
}

Properti

Property

Type

Required

Editable

Description

Constraints

PeriodType

String

No

No

Jenis pembayaran di muka.

Nilai yang valid:

  • Month: langganan bulanan.

  • Year: langganan tahunan.

Properti ini wajib ditentukan ketika PayType diatur ke Prepaid.

Category

String

No

Yes

Edisi instance.

Nilai yang valid:

  • Basic: Edisi Dasar.

  • HighAvailability: Edisi Ketersediaan Tinggi.

  • AlwaysOn: Edisi Kluster.

PrivateIpAddress

String

No

No

Alamat IP internal instans baru.

Alamat IP harus berada dalam rentang alamat vSwitch yang ditentukan. Secara default, sistem menetapkan alamat IP internal berdasarkan VpcId dan VSwitchId.

ConnectionStringPrefix

String

No

Yes

Awalan titik akhir.

Awalan harus terdiri dari 8 hingga 64 karakter dan dapat berisi huruf, angka, serta tanda hubung (-).

ConnectionStringType

String

No

Yes

Jenis titik akhir.

Nilai yang valid:

  • Inner: jaringan internal.

  • Public: jaringan publik.

TimeoutInMinutes

Integer

No

No

Periode timeout untuk membuat instans klon.

Nilai yang valid:

  • 30

  • 60

  • 90

  • 120 (default)

  • 150

  • 180

  • 210

  • 240

  • 270

  • 300

  • 330

  • 360

Unit: menit.

Port

Integer

No

Yes

Port instans baru.

Nilai yang valid: 1 hingga 65535.

DedicatedHostGroupId

String

No

No

ID grup host khusus.

Tidak ada

BackupId

String

No

No

ID set cadangan.

Anda harus menentukan minimal salah satu dari BackupId atau RestoreTime.

RestoreTime

String

No

No

Titik waktu apa pun dalam periode retensi cadangan.

Format: yyyy-MM-ddTHH:mm:ssZ (UTC).

Anda harus menentukan minimal salah satu dari BackupId atau RestoreTime.

InstanceNetworkType

String

No

No

Jenis jaringan instans baru.

Nilai yang valid:

  • VPC: virtual private cloud.

  • Classic: jaringan klasik.

Catatan

Secara default, jenis jaringan sama dengan instans sumber.

DbNames

String

No

No

Nama database yang akan dibuat pada instans baru.

Tidak ada

PreferredBackupPeriod

List

No

Yes

Siklus pencadangan.

Nilai yang valid:

  • Monday

  • Tuesday

  • Wednesday

  • Thursday

  • Friday

  • Saturday

  • Sunday

DBInstanceId

String

Yes

No

ID instans sumber.

Tidak ada

SecurityIPList

String

No

Yes

Daftar putih alamat IP yang mengizinkan akses ke semua database dalam instans baru.

Pisahkan beberapa alamat IP dengan koma (,). Setiap alamat IP harus unik. Anda dapat menentukan hingga 1.000 alamat IP.

Format yang didukung:

  • Alamat IP. Contoh: 10.23.12.24.

  • Blok CIDR. Contoh: 10.23.12.24/24. Dalam notasi Classless Inter-Domain Routing (CIDR), 24 menunjukkan panjang awalan alamat, yang berkisar antara 1 hingga 32.

DBInstanceStorage

Integer

No

Yes

Kapasitas penyimpanan instans baru.

Unit: GB. Nilainya bertambah dengan kelipatan 5 GB.

Untuk informasi lebih lanjut, lihat Tipe instans primer.

Catatan

Secara default, kapasitas penyimpanan sama dengan instans sumber.

BackupType

String

No

No

Jenis pencadangan.

Nilai yang valid:

  • FullBackup: cadangan penuh.

  • IncrementalBackup: cadangan inkremental.

DBMappings

List

No

No

Database instans baru.

Untuk informasi lebih lanjut, lihat properti DBMappings.

MaintainTime

String

No

No

Jendela pemeliharaan instans baru.

Format: HH:mmZ-HH:mmZ (UTC).

Tags

Map

No

Yes

Tag instans baru.

Tidak ada

DBInstanceDescription

String

No

Yes

Deskripsi instans baru.

Deskripsi harus terdiri dari 2 hingga 256 karakter. Harus dimulai dengan huruf atau karakter Tionghoa dan tidak boleh dimulai dengan http:// atau https://. Dapat berisi karakter Tionghoa, huruf, angka, garis bawah (_), dan tanda hubung (-).

ZoneId

String

No

No

ID zona.

Nilai default adalah zona instans sumber.

SlaveZoneIds

List

No

No

Zona sekunder untuk instans Edisi Ketersediaan Tinggi atau instans Edisi Perusahaan tiga node.

Anda dapat menentukan hingga dua zona sekunder. Contoh: ["zone-b"] atau ["zone-b", "zone-c"].

Tentukan satu vSwitch untuk setiap zona primer dan setiap zona sekunder. Misalnya, jika ZoneId adalah "zone-a" dan SlaveZoneIds adalah ["zone-c", "zone-b"], atur VSwitchId menjadi "vsw-zone-a,vsw-zone-c,vsw-zone-b".

Untuk membiarkan sistem memilih zona sekunder, atur nilainya menjadi ["Auto"] atau ["Auto", "Auto"]. Dalam kasus ini, tentukan hanya ID vSwitch zona primer. vSwitch untuk zona sekunder akan dibuat secara otomatis.

DBInstanceClass

String

No

Yes

Tipe instans instans baru.

Untuk informasi lebih lanjut, lihat Tipe instans primer.

Catatan

Secara default, tipe instans sama dengan instans sumber.

AllocatePublicConnection

Boolean

No

No

Menentukan apakah akan mengajukan permohonan titik akhir publik untuk instans baru.

Nilai yang valid:

  • true

  • false

SecurityGroupId

String

No

Yes

ID grup keamanan yang dikaitkan dengan instans baru.

Anda dapat mengaitkan hingga tiga grup keamanan. Pisahkan beberapa ID grup keamanan dengan koma (,).

Untuk menghapus grup keamanan, tentukan string kosong.

PreferredBackupTime

String

No

Yes

Waktu pencadangan.

Format: HH:mmZ-HH:mmZ.

Nilai yang valid: 00:00Z-01:00Z, 01:00Z-02:00Z, 02:00Z-03:00Z, 03:00Z-04:00Z, 04:00Z-05:00Z, 05:00Z-06:00Z, 06:00Z-07:00Z, 07:00Z-08:00Z, 08:00Z-09:00Z, 09:00Z-10:00Z, 10:00Z-11:00Z, 11:00Z-12:00Z, 12:00Z-13:00Z, 13:00Z-14:00Z, 14:00Z-15:00Z, 15:00Z-16:00Z, 16:00Z-17:00Z, 17:00Z-18:00Z, 18:00Z-19:00Z, 19:00Z-20:00Z, 20:00Z-21:00Z, 21:00Z-22:00Z, 22:00Z-23:00Z, 23:00Z-24:00Z.

VSwitchId

String

No

No

ID vSwitch.

Tidak ada

Period

Integer

No

No

Durasi pembayaran di muka.

Nilai yang valid:

  • Jika PeriodType diatur ke Year: 1 hingga 5.

  • Jika PeriodType diatur ke Month: 1 hingga 12, 24, 36, 48, 60.

PayType

String

Yes

No

Metode penagihan instans baru.

Jika properti ini diatur ke Prepaid, PeriodType wajib ditentukan. Nilai yang valid:

  • Postpaid: penagihan bayar sesuai penggunaan.

  • Prepaid: penagihan langganan.

DBInstanceStorageType

String

No

Yes

Jenis penyimpanan instans baru.

Nilai yang valid:

  • local_ssd atau ephemeral_ssd: SSD lokal.

  • cloud_ssd: SSD standar.

  • cloud_essd: ESSD.

RestoreTable

String

No

No

Menentukan apakah akan melakukan pemulihan tingkat tabel.

Ketika nilainya adalah 1, berarti pemulihan database/tabel akan dilakukan; jika tidak, pemulihan tidak akan dilakukan.

MasterUserPassword

String

No

Yes

Password akun master instans database.

Password harus terdiri dari 8 hingga 32 karakter. Dapat berisi huruf, angka, dan garis bawah (_).

MasterUserType

String

No

No

Jenis akun master.

Nilai yang valid:

  • Normal (default): akun standar.

  • Super: akun istimewa.

  • Sysadmin: akun administrator.

    Catatan

    Akun administrator hanya didukung untuk database SQL Server.

VpcId

String

No

No

ID virtual private cloud (VPC).

Tidak ada

SSLSetting

String

No

No

Pengaturan koneksi Secure Sockets Layer (SSL) instans baru.

Nilai yang valid:

  • Disabled (default): SSL dinonaktifkan.

  • EnabledForPublicConnection: titik akhir publik dilindungi oleh sertifikat SSL.

    Catatan

    Jika properti ini diatur ke EnabledForPublicConnection, AllocatePublicConnection harus diatur ke true.

  • EnabledForInnerConnection: titik akhir pribadi dilindungi oleh sertifikat SSL.

MasterUsername

String

No

Yes

Nama akun master instans database.

Nama harus lulus pemeriksaan keunikan.

Nama harus terdiri dari maksimal 16 karakter. Harus dimulai dengan huruf dan dapat berisi huruf, angka, serta garis bawah (_).

SQLCollectorStatus

String

No

Yes

Menentukan apakah akan mengaktifkan Penjelajah SQL (audit SQL).

Nilai yang valid:

  • Enable

  • Disabled

BackupRetentionPeriod

Number

No

Yes

Jumlah hari penyimpanan cadangan.

Nilai yang valid: 7 hingga 30.

Unit: hari.

Nilai default: 7.

TableMeta

List

No

No

Saat melakukan pemulihan tingkat tabel, tentukan informasi tentang database dan tabel yang akan dipulihkan.

Untuk informasi lebih lanjut, lihat properti TableMeta.

Sintaks DBMappings

"DBMappings": [
  {
    "CharacterSetName": String,
    "DBDescription": String,
    "DBName": String
  }
]

Properti DBMappings

Property

Type

Required

Editable

Description

Constraints

CharacterSetName

String

Yes

No

Set karakter.

Nilai yang valid:

  • Mesin MySQL:

    • utf8

    • gbk

    • latin1

    • utf8mb4 (untuk versi 5.5 dan 5.6)

  • Mesin SQL Server:

    • Chinese_PRC_CI_AS

    • Chinese_PRC_CS_AS

    • SQL_Latin1_General_CP1_CI_AS

    • SQL_Latin1_General_CP1_CS_AS

    • Chinese_PRC_BIN

DBName

String

Yes

No

Nama database.

Nama harus lulus pemeriksaan keunikan.

Nama harus terdiri dari maksimal 64 karakter. Harus dimulai dengan huruf dan dapat berisi huruf, angka, serta garis bawah (_).

DBDescription

String

No

No

Deskripsi database.

Deskripsi harus terdiri dari 2 hingga 256 karakter. Harus dimulai dengan huruf atau karakter Tionghoa dan tidak boleh dimulai dengan http:// atau https://. Dapat berisi karakter Tionghoa, huruf, angka, garis bawah (_), dan tanda hubung (-).

Sintaks TableMeta

"TableMeta": [
  {
    "Type": String,
    "Name": String,
    "NewName": String,
    "Tables": List
  }
]

Properti TableMeta

Property

Type

Required

Editable

Description

Constraints

Type

String

No

No

Jenis.

Nilai yang valid: db.

Name

String

No

No

Nama database.

Tidak ada

NewName

String

No

No

Nama database baru.

Tidak ada

Tables

List

No

No

Tabel yang akan dipulihkan.

Untuk informasi lebih lanjut, lihat properti Tables.

Sintaks Tables

"Tables": [
  {
    "Type": String,
    "Name": String,
    "NewName": String
  }
]

Properti Tables

Property

Type

Required

Editable

Description

Constraints

Type

String

No

No

Jenis.

Nilai yang valid: table.

Name

String

No

No

Nama tabel dalam database.

Tidak ada

NewName

String

No

No

Nama tabel baru.

Tidak ada

Nilai kembalian

Fn::GetAtt

  • InnerConnectionString: Titik akhir internal.

  • DBInstanceId: ID instans sumber.

  • InnerIPAddress: Alamat IP internal.

  • PublicConnectionString: Titik akhir publik.

  • PublicIPAddress: Alamat IP publik.

  • PublicPort: Port publik.

  • InnerPort: Port internal.

Contoh

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
 PeriodType:
  Type: String
  Description: Periode penagihan untuk instans yang dibuat.
  AllowedValues:
   - Month
   - Year
  Default: Month
 Category:
  Type: String
  Description: |-
   Edisi instans. Nilai yang valid:
   Basic: menentukan untuk menggunakan Edisi Dasar.
   HighAvailability: menentukan untuk menggunakan Edisi Ketersediaan Tinggi.
   AlwaysOn: menentukan untuk menggunakan Edisi Kluster.
   Finance: menentukan untuk menggunakan Edisi Perusahaan.
  AllowedValues:
   - Basic
   - HighAvailability
   - AlwaysOn
   - Finance
 PrivateIpAddress:
  Type: String
  Description: IP privat untuk instans yang dibuat.
 DedicatedHostGroupId:
  Type: String
  Description: >-
   ID grup host tempat instans berada jika Anda membuat instans dalam grup host.
 Port:
  Type: Number
  Description: Port layanan database.
  MinValue: 1
  MaxValue: 65535
 BackupId:
  Type: String
  Description: >-
   ID set cadangan yang ingin Anda gunakan.

   Anda dapat memanggil operasi DescribeBackups untuk mengambil daftar set
   cadangan terbaru.

   Catatan Anda harus menentukan minimal salah satu parameter BackupId atau
   RestoreTime.
 InstanceNetworkType:
  Type: String
  Description: |-
   Jenis jaringan instans baru. Nilai yang valid:
   - VPC
   - Classic
   Nilai default adalah jenis jaringan instans asli.
 RestoreTime:
  Type: String
  Description: >-
   Titik waktu ke mana Anda ingin memulihkan data instans asli.

   Titik waktu tersebut harus berada dalam periode retensi cadangan log yang
   ditentukan.

   Waktu mengikuti standar ISO 8601 dalam format yyyy-MM-ddTHH:mm:ssZ.

   Waktu harus dalam UTC.
 PreferredBackupPeriod:
  Type: CommaDelimitedList
  Description: >-
   Periode pencadangan. Pisahkan beberapa nilai dengan koma (,). Nilai
   default adalah nilai asli. Nilai yang valid: Monday Tuesday Wednesday
   Thursday Friday Saturday Sunday Catatan Saat parameter BackupPolicyMode
   diatur ke DataBackupPolicy, parameter ini wajib diisi.
 DbNames:
  Type: String
  Description: Nama database yang ingin Anda buat pada instans baru.
 DBInstanceId:
  Type: String
  Description: ID instans
 SecurityIPList:
  Type: String
  Description: >-
   IP keamanan untuk mengakses instans database, gabungkan dengan koma,
   0.0.0.0/0 berarti tanpa batasan.
 DBInstanceStorage:
  Type: Number
  Description: >-
   Ukuran penyimpanan instans database. mysql adalah [5,1000]. sql server
   2008r2 adalah [10,1000], sql server 2012/2012_web/2016-web adalah
   [20,1000]. PostgreSQL dan PPAS adalah [5,2000]. Bertambah setiap 5 GB,
   Satuan dalam GB
 BackupType:
  Type: String
  Description: |-
   Jenis pencadangan yang digunakan oleh instans baru. Nilai yang valid:
   - FullBackup: cadangan penuh
   - IncrementalBackup: cadangan inkremental
  AllowedValues:
   - FullBackup
   - IncrementalBackup
 DBMappings:
  Type: Json
  Description: Pemetaan database untuk disambungkan ke instans db.
 ConnectionStringPrefix:
  Type: String
  Description: >-
   Awalan titik akhir.

   Hanya awalan dari nilai parameter CurrentConnectionString yang dapat
   diubah.

   Awalan harus terdiri dari 8 hingga 64 karakter dan dapat berisi huruf,
   angka, dan tanda hubung (-).
  AllowedPattern: '[a-zA-Z0-9-]{8,64}'
 MaintainTime:
  Type: String
  Description: >-
   Periode saat pemeliharaan dilakukan. Formatnya HH:mmZ-HH:mmZ.
 Tags:
  Type: Json
  Description: >-
   Tag sebuah instans.

   Anda harus memasukkan informasi tag dalam format Pasangan Kunci-Nilai,
   seperti {"key1":"value1","key2":"value2", ... "key5":"value5"}.

   Maksimal 5 tag dapat ditentukan.

   Kunci

   Panjangnya maksimal 64 karakter.

   Tidak boleh diawali dengan aliyun.

   Tidak boleh diawali dengan http:// atau https://.

   Tidak boleh berupa string kosong.

   Nilai

   Panjangnya maksimal 128 karakter.

   Tidak boleh diawali dengan aliyun.

   Tidak boleh diawali dengan http:// atau https://.

   Boleh berupa string kosong.
 DBInstanceDescription:
  Type: String
  Description: Deskripsi instans database yang dibuat.
 ZoneId:
  Type: String
  Description: >-
   Zona yang dipilih untuk membuat instans database. Anda tidak dapat
   mengatur parameter ZoneId jika parameter MultiAZ diatur ke true.
 SlaveZoneIds:
  Type: Json
  Description: >-
   Daftar ID zona sekunder dapat menentukan ID zona sekunder saat membuat
   instans edisi ketersediaan tinggi atau edisi perusahaan. Sementara itu,
   VSwitchId perlu meneruskan ID vswitch yang sesuai ke zona sekunder
   berdasarkan urutan. Misalnya, ZoneId = "zone-a" dan SlaveZoneIds =
   ["zone-c", "zone-b"], maka VSwitchId harus "vsw-zone-a,vsw-zone-c,vsw-zone-b".
   Tentu saja, Anda juga dapat memilih alokasi otomatis, misalnya, ZoneId =
   "zone-a" dan SlaveZoneIds = ["Auto", "Auto"], maka VSwitchId harus
   "vsw-zone-a,Auto,Auto". Daftar berisi maksimal 2 ID zona sekunder,
   dipisahkan dengan koma.
  MaxLength: 2
 DBInstanceClass:
  Type: String
  Description: >-
   Tipe instans database. Lihat referensi tipe instans database RDS, seperti
   'rds.mys2.large', 'rds.mss1.large', 'rds.pg.s1.small' dll.
 AllocatePublicConnection:
  Type: Boolean
  Description: 'Jika true, alokasikan koneksi publik secara otomatis.'
  AllowedValues:
   - 'True'
   - 'true'
   - 'False'
   - 'false'
 PreferredBackupTime:
  Type: String
  Description: >-
   Waktu saat tugas pencadangan dilakukan. Format:
   yyyy-MM-ddZ-HH:mm:ssZ. Catatan Saat parameter BackupPolicyMode diatur ke
   DataBackupPolicy, parameter ini wajib diisi.
 VSwitchId:
  Type: String
  Description: >-
   ID vSwitch instans yang dibuat. Untuk jaringan VPC, properti ini wajib
   diisi.
 SecurityGroupId:
  Type: String
  Description: |
   ID grup keamanan ECS.
   Setiap instans RDS dapat dikaitkan dengan maksimal tiga grup keamanan ECS.
   Anda harus memisahkannya dengan koma (,).
   Untuk menghapus grup Keamanan ECS, biarkan parameter ini kosong.
 Period:
  Type: Number
  Description: >-
   Periode waktu prabayar. Saat memilih bayar per bulan, nilainya bisa dari 1
   hingga 12, 24, 36, 48, 60. Saat memilih bayar per tahun, nilainya bisa
   dari 1 hingga 5.
  MinValue: 1
  MaxValue: 60
  Default: 1
 PayType:
  Type: String
  Description: Jenis penagihan instans yang dibuat.
  AllowedValues:
   - Prepaid
   - Postpaid
  Default: Postpaid
 DBInstanceStorageType:
  Type: String
  Description: >-
   Jenis penyimpanan instans. Nilai yang valid:

   local_ssd: menentukan untuk menggunakan SSD lokal. Ini adalah jenis
   penyimpanan yang direkomendasikan.

   cloud_ssd: menentukan untuk menggunakan SSD standar.

   cloud_essd: menentukan untuk menggunakan SSD ditingkatkan.
 ConnectionStringType:
  Type: String
  Description: 'Jenis titik akhir instans, nilai yang diizinkan: Inner, Public'
  AllowedValues:
   - Inner
   - Public
  Default: Inner
 RestoreTable:
  Type: String
  Description: >-
   Menentukan apakah akan memulihkan database dan tabel tertentu.

   Nilai 1 menentukan untuk memulihkan database dan tabel tertentu.

   Jika Anda tidak ingin memulihkan database atau tabel tertentu, Anda dapat
   memilih untuk tidak menentukan parameter ini.
 MasterUserPassword:
  Type: String
  Description: 'Password master untuk instans database. '
  MinLength: 8
  MaxLength: 32
 MasterUserType:
  Type: String
  Description: |-
   Jenis hak istimewa akun.
   Normal: Hak istimewa biasa.
   Super: Hak istimewa tinggi.
   Sysadmin: Hak istimewa super (SA) (hanya didukung oleh SQL Server)
   Nilai default adalah Normal.
  AllowedValues:
   - Normal
   - Super
   - Sysadmin
  Default: Normal
 VpcId:
  Type: String
  Description: >-
   ID VPC instans database yang dibuat. Untuk jaringan VPC, properti ini
   wajib diisi.
 SSLSetting:
  Type: String
  Description: >-
   Pengaturan tautan Secure Sockets Layer (SSL) instans. Nilai yang valid:

   Disabled: Nonaktifkan SSL

   EnabledForPublicConnection: Alamat koneksi publik akan dilindungi oleh
   sertifikat SSL. Memerlukan AllocatePublicConnection bernilai true.

   EnabledForInnerConnection: Alamat koneksi pribadi akan dilindungi oleh
   sertifikat SSL.

   Nilai default adalah Disabled.
  AllowedValues:
   - Disabled
   - EnabledForPublicConnection
   - EnabledForInnerConnection
  Default: Disabled
 MasterUsername:
  Type: String
  Description: 'Nama pengguna master untuk instans database. '
 SQLCollectorStatus:
  Type: String
  Description: >-
   Menentukan apakah akan mengaktifkan atau menonaktifkan fitur Penjelajah
   SQL (audit SQL).

   Nilai yang valid: Enable | Disabled.
  AllowedValues:
   - Enable
   - Disabled
 BackupRetentionPeriod:
  Type: Number
  Description: >-
   Periode retensi pencadangan data. Rentang nilai: 7 hingga 730. Nilai
   default adalah nilai asli. Catatan Saat parameter BackupPolicyMode diatur
   ke LogBackupPolicy, parameter ini wajib diisi.
  Default: 7
 TableMeta:
  Type: Json
  Description: Informasi tentang database dan tabel yang ingin Anda pulihkan.
 TimeoutInMinutes:
  Type: Number
  Description: >-
   Periode timeout untuk membuat resource instans klon. Unit: Menit. Default:
   120.
  AllowedValues:
   - 30
   - 60
   - 90
   - 120
   - 150
   - 180
   - 210
   - 240
   - 270
   - 300
   - 330
   - 360
  Default: 120
Resources:
 DbInstanceClone:
  Type: 'ALIYUN::RDS::DBInstanceClone'
  Properties:
   PeriodType:
    Ref: PeriodType
   Category:
    Ref: Category
   PrivateIpAddress:
    Ref: PrivateIpAddress
   DedicatedHostGroupId:
    Ref: DedicatedHostGroupId
   Port:
    Ref: Port
   BackupId:
    Ref: BackupId
   InstanceNetworkType:
    Ref: InstanceNetworkType
   RestoreTime:
    Ref: RestoreTime
   PreferredBackupPeriod:
    Ref: PreferredBackupPeriod
   DbNames:
    Ref: DbNames
   DBInstanceId:
    Ref: DBInstanceId
   SecurityIPList:
    Ref: SecurityIPList
   DBInstanceStorage:
    Ref: DBInstanceStorage
   BackupType:
    Ref: BackupType
   DBMappings:
    Ref: DBMappings
   ConnectionStringPrefix:
    Ref: ConnectionStringPrefix
   MaintainTime:
    Ref: MaintainTime
   Tags:
    Ref: Tags
   DBInstanceDescription:
    Ref: DBInstanceDescription
   ZoneId:
    Ref: ZoneId
   SlaveZoneIds:
    Ref: SlaveZoneIds
   DBInstanceClass:
    Ref: DBInstanceClass
   AllocatePublicConnection:
    Ref: AllocatePublicConnection
   PreferredBackupTime:
    Ref: PreferredBackupTime
   VSwitchId:
    Ref: VSwitchId
   SecurityGroupId:
    Ref: SecurityGroupId
   Period:
    Ref: Period
   PayType:
    Ref: PayType
   DBInstanceStorageType:
    Ref: DBInstanceStorageType
   ConnectionStringType:
    Ref: ConnectionStringType
   RestoreTable:
    Ref: RestoreTable
   MasterUserPassword:
    Ref: MasterUserPassword
   MasterUserType:
    Ref: MasterUserType
   VpcId:
    Ref: VpcId
   SSLSetting:
    Ref: SSLSetting
   MasterUsername:
    Ref: MasterUsername
   SQLCollectorStatus:
    Ref: SQLCollectorStatus
   BackupRetentionPeriod:
    Ref: BackupRetentionPeriod
   TableMeta:
    Ref: TableMeta
   TimeoutInMinutes:
    Ref: TimeoutInMinutes
Outputs:
 InnerConnectionString:
  Description: URL koneksi instans DB melalui Intranet.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - InnerConnectionString
 DBInstanceId:
  Description: ID instans instans database yang dibuat.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - DBInstanceId
 InnerIPAddress:
  Description: Alamat IP untuk instans DB yang dibuat melalui Intranet.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - InnerIPAddress
 PublicConnectionString:
  Description: URL koneksi instans DB melalui Internet.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - PublicConnectionString
 PublicIPAddress:
  Description: Alamat IP untuk instans DB yang dibuat melalui Internet.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - PublicIPAddress
 PublicPort:
  Description: Port Internet instans DB yang dibuat.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - PublicPort
 InnerPort:
  Description: Port Intranet instans DB yang dibuat.
  Value:
   'Fn::GetAtt':
    - DbInstanceClone
    - InnerPort
{
 "ROSTemplateFormatVersion": "2015-09-01",
 "Parameters": {
  "PeriodType": {
   "Type": "String",
   "Description": "Periode penagihan untuk instans yang dibuat.",
   "AllowedValues": [
    "Month",
    "Year"
   ],
   "Default": "Month"
  },
  "Category": {
   "Type": "String",
   "Description": "Edisi instans. Nilai yang valid:\nBasic: menentukan untuk menggunakan Edisi Dasar.\nHighAvailability: menentukan untuk menggunakan Edisi Ketersediaan Tinggi.\nAlwaysOn: menentukan untuk menggunakan Edisi Kluster.\nFinance: menentukan untuk menggunakan Edisi Perusahaan.",
   "AllowedValues": [
    "Basic",
    "HighAvailability",
    "AlwaysOn",
    "Finance"
   ]
  },
  "PrivateIpAddress": {
   "Type": "String",
   "Description": "IP privat untuk instans yang dibuat."
  },
  "DedicatedHostGroupId": {
   "Type": "String",
   "Description": "ID grup host tempat instans berada jika Anda membuat instans dalam grup host."
  },
  "Port": {
   "Type": "Number",
   "Description": "Port layanan database.",
   "MinValue": 1,
   "MaxValue": 65535
  },
  "BackupId": {
   "Type": "String",
   "Description": "ID set cadangan yang ingin Anda gunakan. \nAnda dapat memanggil operasi DescribeBackups untuk mengambil daftar set cadangan terbaru. \nCatatan Anda harus menentukan minimal salah satu parameter BackupId atau RestoreTime."
  },
  "InstanceNetworkType": {
   "Type": "String",
   "Description": "Jenis jaringan instans baru. Nilai yang valid: \n- VPC \n- Classic \nNilai default adalah jenis jaringan instans asli."
  },
  "RestoreTime": {
   "Type": "String",
   "Description": "Titik waktu ke mana Anda ingin memulihkan data instans asli. \nTitik waktu tersebut harus berada dalam periode retensi cadangan log yang ditentukan. \nWaktu mengikuti standar ISO 8601 dalam format yyyy-MM-ddTHH:mm:ssZ. \nWaktu harus dalam UTC."
  },
  "PreferredBackupPeriod": {
   "Type": "CommaDelimitedList",
   "Description": "Periode pencadangan. Pisahkan beberapa nilai dengan koma (,). Nilai default adalah nilai asli. Nilai yang valid:Monday Tuesday Wednesday Thursday Friday Saturday Sunday Catatan Saat parameter BackupPolicyMode diatur ke DataBackupPolicy, parameter ini wajib diisi."
  },
  "DbNames": {
   "Type": "String",
   "Description": "Nama database yang ingin Anda buat pada instans baru."
  },
  "DBInstanceId": {
   "Type": "String",
   "Description": "ID instans"
  },
  "SecurityIPList": {
   "Type": "String",
   "Description": "IP keamanan untuk mengakses instans database, gabungkan dengan koma, 0.0.0.0/0 berarti tanpa batasan."
  },
  "DBInstanceStorage": {
   "Type": "Number",
   "Description": "Ukuran penyimpanan instans database. mysql adalah [5,1000]. sql server 2008r2 adalah [10,1000], sql server 2012/2012_web/2016-web adalah [20,1000]. PostgreSQL dan PPAS adalah [5,2000]. Bertambah setiap 5 GB, Satuan dalam GB"
  },
  "BackupType": {
   "Type": "String",
   "Description": "Jenis pencadangan yang digunakan oleh instans baru. Nilai yang valid: \n - FullBackup: cadangan penuh \n - IncrementalBackup: cadangan inkremental",
   "AllowedValues": [
    "FullBackup",
    "IncrementalBackup"
   ]
  },
  "DBMappings": {
   "Type": "Json",
   "Description": "Pemetaan database untuk disambungkan ke instans db."
  },
  "ConnectionStringPrefix": {
   "Type": "String",
   "Description": "Awalan titik akhir. \nHanya awalan dari nilai parameter CurrentConnectionString yang dapat diubah.\nAwalan harus terdiri dari 8 hingga 64 karakter dan dapat berisi huruf, angka, dan tanda hubung (-). ",
   "AllowedPattern": "[a-zA-Z0-9-]{8,64}"
  },
  "MaintainTime": {
   "Type": "String",
   "Description": "Periode saat pemeliharaan dilakukan. Formatnya HH:mmZ-HH:mmZ."
  },
  "Tags": {
   "Type": "Json",
   "Description": "Tag sebuah instans.\nAnda harus memasukkan informasi tag dalam format Pasangan Kunci-Nilai, seperti {\"key1\":\"value1\",\"key2\":\"value2\", ... \"key5\":\"value5\"}.\nMaksimal 5 tag dapat ditentukan.\nKunci\nPanjangnya maksimal 64 karakter.\nTidak boleh diawali dengan aliyun.\nTidak boleh diawali dengan http:// atau https://.\nTidak boleh berupa string kosong.\nNilai\nPanjangnya maksimal 128 karakter.\nTidak boleh diawali dengan aliyun.\nTidak boleh diawali dengan http:// atau https://.\nBoleh berupa string kosong."
  },
  "DBInstanceDescription": {
   "Type": "String",
   "Description": "Deskripsi instans database yang dibuat."
  },
  "ZoneId": {
   "Type": "String",
   "Description": "Zona yang dipilih untuk membuat instans database. Anda tidak dapat mengatur parameter ZoneId jika parameter MultiAZ diatur ke true."
  },
    "SlaveZoneIds": {
     "Type": "Json",
     "Description": "Daftar ID zona sekunder dapat menentukan ID zona sekunder saat membuat instans edisi ketersediaan tinggi atau edisi perusahaan. Sementara itu, VSwitchId perlu meneruskan ID vswitch yang sesuai ke zona sekunder berdasarkan urutan. Misalnya, ZoneId = \"zone-a\" dan SlaveZoneIds = [\"zone-c\", \"zone-b\"], maka VSwitchId harus \"vsw-zone-a,vsw-zone-c,vsw-zone-b\". Tentu saja, Anda juga dapat memilih alokasi otomatis, misalnya, ZoneId = \"zone-a\" dan SlaveZoneIds = [\"Auto\", \"Auto\"], maka VSwitchId harus \"vsw-zone-a,Auto,Auto\". Daftar berisi maksimal 2 ID zona sekunder, dipisahkan dengan koma.",
     "MaxLength": 2
    },
  "DBInstanceClass": {
   "Type": "String",
   "Description": "Tipe instans database. Lihat referensi tipe instans database RDS, seperti 'rds.mys2.large', 'rds.mss1.large', 'rds.pg.s1.small' dll."
  },
  "AllocatePublicConnection": {
   "Type": "Boolean",
   "Description": "Jika true, alokasikan koneksi publik secara otomatis.",
   "AllowedValues": [
    "True",
    "true",
    "False",
    "false"
   ]
  },
  "PreferredBackupTime": {
   "Type": "String",
   "Description": "Waktu saat tugas pencadangan dilakukan. Format: yyyy-MM-ddZ-HH:mm:ssZ.Catatan Saat parameter BackupPolicyMode diatur ke DataBackupPolicy, parameter ini wajib diisi."
  },
  "VSwitchId": {
   "Type": "String",
   "Description": "ID vSwitch instans yang dibuat. Untuk jaringan VPC, properti ini wajib diisi."
  },
  "SecurityGroupId": {
   "Type": "String",
   "Description": "ID grup keamanan ECS. \nSetiap instans RDS dapat dikaitkan dengan maksimal tiga grup keamanan ECS. \nAnda harus memisahkannya dengan koma (,). \nUntuk menghapus grup Keamanan ECS, biarkan parameter ini kosong. \n"
  },
  "Period": {
   "Type": "Number",
   "Description": "Periode waktu prabayar. Saat memilih bayar per bulan, nilainya bisa dari 1 hingga 12, 24, 36, 48, 60. Saat memilih bayar per tahun, nilainya bisa dari 1 hingga 5.",
   "MinValue": 1,
   "MaxValue": 60,
   "Default": 1
  },
  "PayType": {
   "Type": "String",
   "Description": "Jenis penagihan instans yang dibuat.",
   "AllowedValues": [
    "Prepaid",
    "Postpaid"
   ],
   "Default": "Postpaid"
  },
  "DBInstanceStorageType": {
   "Type": "String",
   "Description": "Jenis penyimpanan instans. Nilai yang valid:\nlocal_ssd: menentukan untuk menggunakan SSD lokal. Ini adalah jenis penyimpanan yang direkomendasikan.\ncloud_ssd: menentukan untuk menggunakan SSD standar.\ncloud_essd: menentukan untuk menggunakan SSD ditingkatkan."
  },
  "ConnectionStringType": {
   "Type": "String",
   "Description": "Jenis titik akhir instans, nilai yang diizinkan: Inner, Public",
   "AllowedValues": [
    "Inner",
    "Public"
   ],
   "Default": "Inner"
  },
  "RestoreTable": {
   "Type": "String",
   "Description": "Menentukan apakah akan memulihkan database dan tabel tertentu. \nNilai 1 menentukan untuk memulihkan database dan tabel tertentu. \nJika Anda tidak ingin memulihkan database atau tabel tertentu, Anda dapat memilih untuk tidak menentukan parameter ini."
  },
  "MasterUserPassword": {
   "Type": "String",
   "Description": "Password master untuk instans database. ",
   "MinLength": 8,
   "MaxLength": 32
  },
  "MasterUserType": {
   "Type": "String",
   "Description": "Jenis hak istimewa akun.\n Normal: Hak istimewa biasa. \n Super: Hak istimewa tinggi. \nSysadmin: Hak istimewa super (SA) (hanya didukung oleh SQL Server)\nNilai default adalah Normal.",
   "AllowedValues": [
    "Normal",
    "Super",
    "Sysadmin"
   ],
   "Default": "Normal"
  },
  "VpcId": {
   "Type": "String",
   "Description": "ID VPC instans database yang dibuat. Untuk jaringan VPC, properti ini wajib diisi."
  },
  "SSLSetting": {
   "Type": "String",
   "Description": "Pengaturan tautan Secure Sockets Layer (SSL) instans. Nilai yang valid:\nDisabled: Nonaktifkan SSL\nEnabledForPublicConnection: Alamat koneksi publik akan dilindungi oleh sertifikat SSL. Memerlukan AllocatePublicConnection bernilai true.\nEnabledForInnerConnection: Alamat koneksi pribadi akan dilindungi oleh sertifikat SSL.\nNilai default adalah Disabled.",
   "AllowedValues": [
    "Disabled",
    "EnabledForPublicConnection",
    "EnabledForInnerConnection"
   ],
   "Default": "Disabled"
  },
  "MasterUsername": {
   "Type": "String",
   "Description": "Nama pengguna master untuk instans database. "
  },
  "SQLCollectorStatus": {
   "Type": "String",
   "Description": "Menentukan apakah akan mengaktifkan atau menonaktifkan fitur Penjelajah SQL (audit SQL). \nNilai yang valid:Enable | Disabled.",
   "AllowedValues": [
    "Enable",
    "Disabled"
   ]
  },
  "BackupRetentionPeriod": {
   "Type": "Number",
   "Description": "Periode retensi pencadangan data. Rentang nilai: 7 hingga 730. Nilai default adalah nilai asli. Catatan Saat parameter BackupPolicyMode diatur ke LogBackupPolicy, parameter ini wajib diisi.",
   "Default": 7
  },
  "TableMeta": {
   "Type": "Json",
   "Description": "Informasi tentang database dan tabel yang ingin Anda pulihkan."
  },
  "TimeoutInMinutes": {
   "Type": "Number",
   "Description": "Periode timeout untuk membuat resource instans klon. Unit: Menit. Default: 120.",
   "AllowedValues": [
    30,
    60,
    90,
    120,
    150,
    180,
    210,
    240,
    270,
    300,
    330,
    360
   ],
   "Default": 120
  }
 },
 "Resources": {
  "DbInstanceClone": {
   "Type": "ALIYUN::RDS::DBInstanceClone",
   "Properties": {
    "PeriodType": {
     "Ref": "PeriodType"
    },
    "Category": {
     "Ref": "Category"
    },
    "PrivateIpAddress": {
     "Ref": "PrivateIpAddress"
    },
    "DedicatedHostGroupId": {
     "Ref": "DedicatedHostGroupId"
    },
    "Port": {
     "Ref": "Port"
    },
    "BackupId": {
     "Ref": "BackupId"
    },
    "InstanceNetworkType": {
     "Ref": "InstanceNetworkType"
    },
    "RestoreTime": {
     "Ref": "RestoreTime"
    },
    "PreferredBackupPeriod": {
     "Ref": "PreferredBackupPeriod"
    },
    "DbNames": {
     "Ref": "DbNames"
    },
        "SlaveZoneIds": {
         "Ref": "SlaveZoneIds"
        },
    "DBInstanceId": {
     "Ref": "DBInstanceId"
    },
    "SecurityIPList": {
     "Ref": "SecurityIPList"
    },
    "DBInstanceStorage": {
     "Ref": "DBInstanceStorage"
    },
    "BackupType": {
     "Ref": "BackupType"
    },
    "DBMappings": {
     "Ref": "DBMappings"
    },
    "ConnectionStringPrefix": {
     "Ref": "ConnectionStringPrefix"
    },
    "MaintainTime": {
     "Ref": "MaintainTime"
    },
    "Tags": {
     "Ref": "Tags"
    },
    "DBInstanceDescription": {
     "Ref": "DBInstanceDescription"
    },
    "ZoneId": {
     "Ref": "ZoneId"
    },
    "DBInstanceClass": {
     "Ref": "DBInstanceClass"
    },
    "AllocatePublicConnection": {
     "Ref": "AllocatePublicConnection"
    },
    "PreferredBackupTime": {
     "Ref": "PreferredBackupTime"
    },
    "VSwitchId": {
     "Ref": "VSwitchId"
    },
    "SecurityGroupId": {
     "Ref": "SecurityGroupId"
    },
    "Period": {
     "Ref": "Period"
    },
    "PayType": {
     "Ref": "PayType"
    },
    "DBInstanceStorageType": {
     "Ref": "DBInstanceStorageType"
    },
    "ConnectionStringType": {
     "Ref": "ConnectionStringType"
    },
    "RestoreTable": {
     "Ref": "RestoreTable"
    },
    "MasterUserPassword": {
     "Ref": "MasterUserPassword"
    },
    "MasterUserType": {
     "Ref": "MasterUserType"
    },
    "VpcId": {
     "Ref": "VpcId"
    },
    "SSLSetting": {
     "Ref": "SSLSetting"
    },
    "MasterUsername": {
     "Ref": "MasterUsername"
    },
    "SQLCollectorStatus": {
     "Ref": "SQLCollectorStatus"
    },
    "BackupRetentionPeriod": {
     "Ref": "BackupRetentionPeriod"
    },
    "TableMeta": {
     "Ref": "TableMeta"
    },
    "TimeoutInMinutes": {
     "Ref": "TimeoutInMinutes"
    }
   }
  }
 },
 "Outputs": {
  "InnerConnectionString": {
   "Description": "URL koneksi instans DB melalui Intranet.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "InnerConnectionString"
    ]
   }
  },
  "DBInstanceId": {
   "Description": "ID instans instans database yang dibuat.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "DBInstanceId"
    ]
   }
  },
  "InnerIPAddress": {
   "Description": "Alamat IP untuk instans DB yang dibuat melalui Intranet.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "InnerIPAddress"
    ]
   }
  },
  "PublicConnectionString": {
   "Description": "URL koneksi instans DB melalui Internet.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "PublicConnectionString"
    ]
   }
  },
  "PublicIPAddress": {
   "Description": "Alamat IP untuk instans DB yang dibuat melalui Internet.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "PublicIPAddress"
    ]
   }
  },
  "PublicPort": {
   "Description": "Port Internet instans DB yang dibuat.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "PublicPort"
    ]
   }
  },
  "InnerPort": {
   "Description": "Port Intranet instans DB yang dibuat.",
   "Value": {
    "Fn::GetAtt": [
     "DbInstanceClone",
     "InnerPort"
    ]
   }
  }
 }
}