全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::ECS::Instance

更新时间:Jul 06, 2025

ALIYUN::ECS::Instance digunakan untuk membuat instance Elastic Compute Service (ECS).

Penting

Jenis sumber daya ini tidak lagi diiterasi atau diperbarui. Kami merekomendasikan Anda menggunakan ALIYUN::ECS::InstanceGroup.

Sintaksis

{
  "Type": "ALIYUN::ECS::Instance",
  "Properties": {
    "DedicatedHostId": String,
    "Period": Number,
    "AutoRenew": String,
    "RamRoleName": String,
    "IoOptimized": String,
    "InternetChargeType": String,
    "PrivateIpAddress": String,
    "KeyPairName": String,
    "SystemDiskDiskName": String,
    "PeriodUnit": String,
    "Description": String,
    "Tags": List,
    "HostName": String,
    "AutoRenewPeriod": Number,
    "ImageId": String,
    "ResourceGroupId": String,
    "InstanceChargeType": String,
    "VSwitchId": String,
    "Password": String,
    "PasswordInherit": Boolean,
    "InstanceType": String,
    "SystemDiskCategory": String,
    "SubscriptionDeletionForce": Boolean,
    "UserData": String,
    "SystemDiskSize": Number,
    "ZoneId": String,
    "InternetMaxBandwidthOut": Integer,
    "VpcId": String,
    "SpotStrategy": String,
    "InstanceName": String,
    "DeletionProtection": Boolean,
    "DeploymentSetId": String,
    "SecurityGroupIds": List,
    "SecurityGroupId": String,
    "SecurityEnhancementStrategy": String,
    "SpotPriceLimit": String,
    "HpcClusterId": String,
    "AllocatePublicIP": Boolean,
    "SystemDiskDescription": String,
    "SystemDiskPerformanceLevel": String,
    "DiskMappings": List,
    "SpotInterruptionBehavior": String,
    "ZoneIds": List,
    "SpotDuration": Integer,
    "CreditSpecification": String,
    "PrivatePoolOptions": Map,
    "StorageSetId": String,
    "HttpTokens": String,
    "HttpEndpoint": String,
    "Tenancy": String,
    "StorageSetPartitionNumber": Integer,
    "DeploymentSetGroupNo": Integer,
    "Affinity": String,
    "UseAdditionalService": Boolean,
    "ImageFamily": String
  }
}

Properti

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

ResourceGroupId

String

Tidak

Ya

ID grup sumber daya.

Tidak ada.

SpotInterruptionBehavior

String

Tidak

Tidak

Mode interupsi dari instance preemptible.

Atur nilainya ke Terminate. Nilai Terminate menentukan bahwa sistem langsung melepaskan instance preemptible. Nilai default: Terminate.

ZoneIds

List

Tidak

Tidak

Zona.

Tidak ada.

SpotDuration

Integer

Tidak

Tidak

Periode perlindungan dari instance preemptible.

Nilai valid: 0 hingga 6.

Satuan: jam.

  • 0: Jika Anda mengatur properti ini ke 0, instance preemptible tidak memiliki periode perlindungan.

  • 2 hingga 6: Periode retensi 2, 3, 4, 5, dan 6 jam dalam pratinjau undangan. Jika Anda ingin mengatur properti ini ke salah satu nilai tersebut, ajukan tiket.

  • 1 (default).

SecurityGroupIds

List

Tidak

Tidak

ID grup keamanan.

Anda harus menentukan SecurityGroupId atau SecurityGroupIds.

ImageId

String

Tidak

Ya

ID gambar. Anda dapat menggunakan gambar publik, gambar kustom, atau gambar dari Alibaba Cloud Marketplace.

Untuk menentukan gambar publik, Anda dapat memasukkan ID gambar sebagian alih-alih ID gambar lengkap. Gambar publik mendukung pencarian fuzzy. Contoh:

  • Jika Anda memasukkan ubuntu, sistem akan mencocokkannya dengan ID gambar berikut: ubuntu16_0402_64_20G_alibase_20170818.vhd.

  • Jika Anda memasukkan ubuntu_14, sistem akan mencocokkannya dengan ID gambar berikut: ubuntu_14_0405_64_20G_alibase_20170824.vhd.

  • Jika Anda memasukkan ubuntu*14*32, sistem akan mencocokkannya dengan ID gambar berikut: ubuntu_14_0405_32_40G_alibase_20170711.vhd.

  • Jika Anda memasukkan ubuntu_16_0402_32, sistem akan mencocokkannya dengan ID gambar berikut: ubuntu_16_0402_32_40G_alibase_20170711.vhd.

InstanceType

String

Ya

Ya

Tipe instance ECS.

Untuk informasi lebih lanjut tentang tipe instance ECS, lihat Ikhtisar keluarga instance.

SecurityGroupId

String

Tidak

Tidak

ID grup keamanan.

Anda harus menentukan SecurityGroupId atau SecurityGroupIds.

SecurityEnhancementStrategy

String

Tidak

Tidak

Menentukan apakah akan mengaktifkan penguatan keamanan.

Nilai valid:

  • Active: mengaktifkan penguatan keamanan. Nilai ini hanya valid untuk gambar publik.

  • Deactive (default): menonaktifkan penguatan keamanan. Nilai ini valid untuk semua jenis gambar.

Description

String

Tidak

Ya

Deskripsi.

Deskripsi harus memiliki panjang 2 hingga 256 karakter.

InstanceName

String

Tidak

Ya

Nama instance ECS.

Nama harus memiliki panjang 2 hingga 128 karakter. Harus dimulai dengan huruf dan tidak boleh dimulai dengan http:// atau https://. Bisa mengandung huruf, angka, titik dua (:), garis bawah (_), dan tanda hubung (-).

Jika Anda meninggalkan properti ini kosong, ID instance digunakan secara default.

Password

String

Tidak

Ya

Kata sandi logon instance ECS.

Kata sandi harus memiliki panjang 8 hingga 30 karakter. Harus mengandung setidaknya tiga dari jenis karakter berikut: huruf besar, huruf kecil, angka, dan karakter khusus. Karakter khusus yang didukung adalah: ( ) ' ~ ! @ # $ % ^ & * - + = | { } [ ] : ; < > , . ? / -. Jika Anda menentukan properti ini, kami sarankan Anda memanggil operasi API Layanan Orkestrasi Sumber Daya (ROS) melalui HTTPS untuk mencegah kebocoran kata sandi.

PasswordInherit

Boolean

Tidak

Tidak

Menentukan apakah akan menggunakan kata sandi preset dari gambar.

Nilai valid:

  • true

  • false (default)

Catatan

Jika Anda mengatur properti ini ke true, Anda harus meninggalkan Password kosong dan memastikan bahwa gambar yang dipilih memiliki kata sandi preset.

HostName

String

Tidak

Ya

Nama host instance ECS.

Nama host harus minimal dua karakter panjangnya. Tidak boleh dimulai atau diakhiri dengan titik (.) atau tanda hubung (-). Tidak boleh mengandung titik (.) atau tanda hubung (-) berturut-turut.

  • Windows: Nama host bisa maksimal 15 karakter panjangnya, dan bisa mengandung huruf, angka, dan tanda hubung (-). Tidak boleh mengandung titik (.) atau hanya angka.

  • Sistem operasi lain seperti Linux: Nama host bisa maksimal 30 karakter panjangnya. Pisahkan beberapa segmen dalam nama host dengan titik (.). Setiap segmen bisa mengandung huruf, angka, dan tanda hubung (-).

AllocatePublicIP

Boolean

Tidak

Tidak

Menentukan apakah akan menetapkan alamat IP publik.

Nilai valid:

  • true (default)

  • false

Catatan

Jika Anda mengatur InternetMaxBandwidthOut ke nilai yang lebih besar dari 0, sistem akan menetapkan alamat IP publik.

PrivateIpAddress

String

Tidak

Tidak

Alamat IP privat instance ECS dalam virtual private cloud (VPC).

Alamat IP yang ditentukan tidak boleh digunakan oleh instance lain dalam VPC.

InternetChargeType

String

Tidak

Ya

Metode penagihan untuk penggunaan internet.

Nilai valid:

  • PayByBandwidth: bayar-per-lebar-pita

  • PayByTraffic (default): bayar-per-transfer-data

InternetMaxBandwidthOut

Integer

Tidak

Ya

Lebar pita keluar publik maksimum.

Nilai valid: 0 hingga 100.

Nilai default: 0.

Satuan: Mbit/s.

IoOptimized

String

Tidak

Tidak

Menentukan apakah akan membuat instance yang dioptimalkan I/O.

Nilai valid:

  • none: tidak membuat instance yang dioptimalkan I/O.

  • optimized (default): membuat instance yang dioptimalkan I/O.

DiskMappings

List

Tidak

Ya

Disk data yang ingin Anda lampirkan ke instance ECS.

Anda bisa melampirkan hingga 16 disk data.

Untuk informasi lebih lanjut, lihat Sintaksis DiskMappings dan Properti DiskMappings.

SystemDiskCategory

String

Tidak

Ya

Kategori disk sistem.

Nilai valid:

  • cloud: disk dasar

  • cloud_ssd: SSD standar

  • cloud_efficiency: disk ultra

  • cloud_essd: Enterprise SSD (ESSD)

  • ephemeral_ssd: SSD lokal

Untuk instance non-I/O optimized dari tipe instance yang sudah pensiun, nilai defaultnya adalah cloud. Untuk instance dari tipe lain, nilai defaultnya adalah cloud_efficiency.

SystemDiskDescription

String

Tidak

Tidak

Deskripsi disk sistem.

Tidak ada.

SystemDiskDiskName

String

Tidak

Tidak

Nama disk sistem.

Nama harus memiliki panjang 2 hingga 128 karakter. Harus dimulai dengan huruf dan tidak boleh dimulai dengan http:// atau https://. Bisa mengandung huruf, angka, titik dua (:), garis bawah (_), dan tanda hubung (-).

SystemDiskSize

Number

Tidak

Ya

Ukuran disk sistem.

Nilai valid: 20 hingga 500.

Satuan: GB.

Jika Anda menggunakan gambar kustom untuk membuat disk sistem, pastikan ukuran disk sistem lebih besar daripada ukuran gambar kustom.

Tags

List

Tidak

Ya

Tag kustom yang ingin Anda tambahkan ke instance ECS.

Anda bisa menentukan hingga 20 tag dalam format berikut: [{"Key": "tagKey", "Value": "tagValue"},{"Key": "tagKey2", "Value": "tagValue2"}].

Untuk informasi lebih lanjut, lihat Sintaksis Tags dan Properti Tags.

UserData

String

Tidak

Ya

Data pengguna yang ingin Anda tentukan saat membuat Instance ECS.

Data pengguna bisa maksimal 16 KB ukurannya. Anda tidak perlu mengonversi data menjadi string berkode Base64. Jika data pengguna mengandung karakter khusus, Anda harus menambahkan karakter escape (\) sebelum setiap karakter khusus.

ZoneId

String

Tidak

Tidak

ID zona.

Tidak ada.

HpcClusterId

String

Tidak

Tidak

ID kluster Elastic High Performance Computing (E-HPC) tempat instance ECS milik.

Tidak ada.

VpcId

String

Tidak

Tidak

ID VPC.

Tidak ada.

VSwitchId

String

Tidak

Tidak

ID vSwitch.

Tidak ada.

InstanceChargeType

String

Tidak

Tidak

Metode penagihan instance ECS.

Nilai valid:

  • PrePaid: langganan. Jika Anda mengatur properti ini ke PrePaid, pastikan akun Anda memiliki saldo yang cukup. Jika akun Anda tidak memiliki saldo yang cukup, pembuatan instance ECS akan gagal.

  • PostPaid (default): bayar sesuai pemakaian.

Period

Number

Tidak

Tidak

Siklus penagihan.

Period diperlukan jika InstanceChargeType diatur ke PrePaid. Period opsional jika InstanceChargeType diatur ke PostPaid.

KeyPairName

String

Tidak

Ya

Nama pasangan kunci yang digunakan untuk logon ke instance ECS.

Untuk instance ECS Windows, Anda bisa mengabaikan KeyPairName. Untuk instance ECS Linux, logon berbasis kata sandi dinonaktifkan selama inisialisasi. Untuk meningkatkan keamanan instance Anda, kami sarankan Anda menggunakan pasangan kunci untuk logon.

RamRoleName

String

Tidak

Tidak

Nama peran Resource Access Management (RAM) untuk instance ECS.

Untuk informasi lebih lanjut, lihat CreateRole dan ListRoles.

SpotPriceLimit

String

Tidak

Tidak

Harga maksimum per jam dari instance ECS.

Nilai properti ini bisa mengandung hingga tiga tempat desimal. Properti ini berlaku ketika SpotStrategy diatur ke SpotWithPriceLimit.

SpotStrategy

String

Tidak

Tidak

Kebijakan penawaran untuk instance bayar sesuai pemakaian.

Anda harus menentukan properti ini ketika InstanceChargeType diatur ke PostPaid.

Nilai valid:

  • NoSpot (default): Instance dibuat sebagai instance bayar sesuai pemakaian biasa.

  • SpotWithPriceLimit: Instance dibuat sebagai instance preemptible yang memiliki harga maksimum per jam yang ditentukan pengguna.

  • SpotAsPriceGo: Instance dibuat sebagai instance preemptible yang harga penawarannya didasarkan pada harga pasar saat pembelian. Harga pasar bisa mencapai harga bayar sesuai pemakaian.

DedicatedHostId

String

Tidak

Tidak

ID host khusus tempat Anda ingin membuat instance ECS.

Anda dapat memanggil operasi DescribeDedicatedHosts untuk menanyakan ID host khusus.

Anda tidak dapat membuat instance preemptible pada host khusus. Jika Anda menentukan properti ini, sistem mengabaikan nilai SpotStrategy dan SpotPriceLimit dalam permintaan.

PeriodUnit

String

Tidak

Tidak

Unit siklus penagihan instance ECS.

Nilai valid:

  • Week

  • Month (default)

AutoRenewPeriod

Number

Tidak

Tidak

Periode perpanjangan otomatis.

Anda harus menentukan properti ini ketika AutoRenew diatur ke True.

  • Nilai valid ketika PeriodUnit diatur ke Week: 1, 2, dan 3.

  • Nilai valid ketika PeriodUnit diatur ke Month: 1, 2, 3, 6, dan 12.

AutoRenew

String

Tidak

Tidak

Menentukan apakah akan mengaktifkan perpanjangan otomatis.

Nilai valid:

  • True

  • False (default)

Anda harus menentukan properti ini ketika InstanceChargeType diatur ke PrePaid.

DeletionProtection

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan perlindungan penghapusan untuk instance ECS. Anda dapat menggunakan properti ini untuk menentukan apakah Anda dapat menghapus instance dengan menggunakan konsol ECS atau operasi DeleteInstance.

Nilai valid:

  • true

  • false (default)

Catatan

Properti ini hanya berlaku untuk instance bayar sesuai pemakaian. Properti ini dapat melindungi instance dari penghapusan manual tetapi tidak dapat melindungi instance dari penghapusan otomatis.

DeploymentSetId

String

Tidak

Tidak

ID set penyebaran.

Tidak ada.

SystemDiskPerformanceLevel

String

Tidak

Ya

Tingkat performa (PL) ESSD yang ingin Anda gunakan sebagai disk sistem.

Nilai valid:

  • PL0: ESSD dapat memberikan hingga 10.000 IOPS baca/tulis acak.

  • PL1 (default): ESSD dapat memberikan hingga 50.000 IOPS baca/tulis acak.

  • PL2: ESSD dapat memberikan hingga 100.000 IOPS baca/tulis acak.

  • PL3: ESSD dapat memberikan hingga 1.000.000 IOPS baca/tulis acak.

Untuk informasi lebih lanjut tentang cara memilih PL ESSD, lihat ESSDs.

CreditSpecification

String

Tidak

Ya

Mode performa dari instance burstable.

Nilai valid:

  • Standard: mode standar. Untuk informasi lebih lanjut, lihat bagian "Standard mode" dari topik Ikhtisar.

  • Unlimited: mode tanpa batas. Untuk informasi lebih lanjut, lihat bagian "Unlimited mode" dari topik Ikhtisar.

PrivatePoolOptions

Peta

Tidak

Tidak

Opsi kolam pribadi yang digunakan untuk memulai Instance ECS.

Untuk informasi lebih lanjut, lihat properti PrivatePoolOptions.

StorageSetId

String

Tidak

Tidak

ID dari set penyimpanan.

Tidak ada.

HttpTokens

String

Tidak

Ya

Menentukan apakah akan secara paksa menggunakan mode penguatan keamanan (IMDSv2) untuk mengakses metadata instans.

Nilai yang valid:

  • opsional (default): tidak secara paksa menggunakan mode penguatan keamanan (IMDSv2) untuk mengakses metadata instans.

  • required: secara paksa menggunakan mode penguatan keamanan (IMDSv2) untuk mengakses metadata instans. Setelah Anda mengatur properti ini ke required, Anda tidak dapat mengakses metadata instans dalam mode normal.

Catatan

Untuk informasi lebih lanjut tentang mode akses metadata instans, lihat Instance metadata.

SubscriptionDeletionForce

Boolean

Tidak

Tidak

Properti ini hanya berlaku untuk instance berlangganan. Jika Anda mengatur properti ini ke true untuk instance berlangganan, instance tersebut akan diubah menjadi bayar sesuai pemakaian sebelum instance dihapus secara paksa. Jika Anda mengatur properti ini ke false untuk instance berlangganan, instance tidak akan dihapus secara paksa. Properti ini melibatkan biaya tambahan. Berhati-hatilah saat menentukan properti ini.

Tidak ada.

HttpEndpoint

String

Tidak

Ya

Menentukan apakah akan mengaktifkan saluran akses untuk metadata instans.

Nilai yang valid:

  • enabled (bawaan)

  • disabled

Catatan

Untuk informasi lebih lanjut tentang metadata instans, lihat Instance metadata.

Tenancy

String

Tidak

Tidak

Menentukan apakah akan membuat Instance ECS pada host khusus.

Nilai yang valid:

  • default (bawaan): tidak membuat Instance ECS pada host spesifikasi khusus.

  • host: membuat Instance ECS pada host spesifikasi khusus. Jika Anda tidak menentukan DedicatedHostId, Alibaba Cloud akan memilih host spesifikasi khusus untuk instance tersebut.

StorageSetPartitionNumber

Bilangan Bulat

Tidak

Tidak

Jumlah maksimum partisi dalam kumpulan penyimpanan.

Nilai yang valid: bilangan bulat lebih besar dari atau sama dengan 2.

DeploymentSetGroupNo

Bilangan Bulat

Tidak

Tidak

Nomor kelompok dari kelompok set penyebaran tempat Anda ingin menerapkan instance. Jika set penyebaran yang ditentukan oleh DeploymentSetId menggunakan strategi kelompok ketersediaan tinggi (AvailabilityGroup), Anda dapat menggunakan DeploymentSetGroupNo untuk menentukan kelompok set penyebaran dalam set penyebaran tersebut.

Nilai valid: 1 hingga 7.

Afinitas

String

Tidak

Tidak

Menentukan apakah akan mengaitkan Instance ECS pada host khusus dengan host khusus tersebut.

Nilai yang valid:

  • default (bawaan): tidak mengasosiasikan Instance ECS pada host khusus dengan host khusus. Saat Anda memulai ulang instance yang dihentikan dalam mode ekonomis dan host khusus asli dari instance tersebut memiliki sumber daya yang tidak mencukupi, instance akan ditempatkan ke host khusus lainnya di dalam kumpulan sumber daya penyebaran otomatis.

  • host: mengasosiasikan Instance ECS pada host khusus dengan host khusus. Saat Anda memulai ulang instance yang dihentikan dalam mode ekonomis, instance tetap berada di host khusus aslinya. Jika host khusus asli memiliki sumber daya yang tidak mencukupi, instance gagal untuk dimulai ulang.

GunakanLayananTambahan

Boolean

Tidak

Tidak

Menentukan apakah akan menggunakan konfigurasi sistem untuk mesin virtual. Alibaba Cloud menyediakan konfigurasi sistem Network Time Protocol (NTP) dan Key Management Service (KMS) untuk Windows serta konfigurasi sistem NTP dan Yellowdog Updater, Modified (YUM) untuk Linux.

Nilai yang valid:

  • true

  • false

ImageFamily

String

Tidak

Tidak

Nama dari keluarga gambar.

Anda dapat menentukan properti ini untuk menanyakan gambar paling baru yang tersedia yang termasuk dalam keluarga gambar tertentu dan menggunakan gambar tersebut untuk membuat instance.

  • Jika Anda menentukan ImageId, Anda tidak dapat menentukan ImageFamily.

  • Jika Anda tidak menentukan ImageId tetapi menggunakan LaunchTemplateId atau LaunchTemplateName untuk menentukan templat peluncuran di mana ImageId didefinisikan, Anda tidak dapat menentukan ImageFamily.

  • Jika Anda tidak menentukan ImageId tetapi menggunakan LaunchTemplateId atau LaunchTemplateName untuk menentukan templat peluncuran di mana ImageId tidak didefinisikan, Anda dapat menentukan ImageFamily.

  • Jika Anda tidak menentukan ImageId, LaunchTemplateId, atau LaunchTemplateName, Anda dapat menentukan ImageFamily.

Catatan

Untuk informasi lebih lanjut tentang keluarga gambar yang terkait dengan gambar resmi Alibaba Cloud, lihat Ikhtisar.

Sintaksis DiskMappings

"DiskMappings": [
  {
    "Category": String,
    "DiskName": String,
    "Description": String,
    "Device": String,
    "SnapshotId": String,
    "PerformanceLevel": String,
    "Size": String
  }
]

Properti DiskMappings

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Size

String

Ya

Tidak

Ukuran disk data.

Nilai valid: 20 hingga 500.

Satuan: GB.

Category

String

Tidak

Tidak

Kategori disk data.

Nilai valid:

  • cloud: disk dasar

  • cloud_ssd: SSD standar

  • cloud_essd: ESSD

  • cloud_efficiency: disk ultra

  • ephemeral_ssd: SSD lokal

Untuk instance dioptimalkan I/O, nilai defaultnya adalah cloud_efficiency. Untuk instance non-I/O optimized, nilai defaultnya adalah cloud.

Jika gambar kustom berisi disk data, Anda dapat mengubah kategori disk dengan mengatur Kategori ke kategori disk data yang diinginkan dalam template ROS saat Anda membuat instance ECS. Contoh template:

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Resources": {
    "Instance": {
      "Type": "ALIYUN::ECS::Instance",
      "Properties": {
        "InstanceName": "rostest",
        "ImageId": "m-2ze5ysugu8ss7nxr****",
        "InstanceType": "ecs.g6e.large",
        "Password": "Ros1****",
        "IoOptimized": "optimized",
        "VSwitchId": "vsw-2zej7phc6euuelo8l****",
        "VpcId": "vpc-2zebbi27bn7w42n30****",
        "SecurityGroupId": "sg-2ze5bdyyg7sfrcv6****",
        "SystemDiskCategory": "cloud_essd",
        "DiskMappings": [
          {
            "Category": "cloud_essd",
            "Size": 40,
            "Device": "/dev/xvdb"
          }
        ]
      }
    }
  }
}
                                

DiskName

String

Tidak

Tidak

Nama disk data.

Nama harus memiliki panjang 2 hingga 128 karakter. Harus dimulai dengan huruf dan tidak boleh dimulai dengan http:// atau https://. Bisa mengandung huruf, angka, garis bawah (_), titik dua (:), dan tanda hubung (-).

Description

String

Tidak

Tidak

Deskripsi.

Deskripsi harus memiliki panjang 2 hingga 256 karakter, dan tidak boleh dimulai dengan http:// atau https://.

Device

String

Tidak

Tidak

Target mount.

Tidak ada.

PerformanceLevel

String

Tidak

Tidak

PL dari ESSD yang ingin Anda gunakan sebagai disk data.

Nilai valid:

  • PL1 (default): ESSD dapat memberikan hingga 50.000 IOPS baca/tulis acak.

  • PL2: ESSD dapat memberikan hingga 100.000 IOPS baca/tulis acak.

  • PL3: ESSD dapat memberikan hingga 1.000.000 IOPS baca/tulis acak.

Untuk informasi lebih lanjut tentang cara memilih PL ESSD, lihat ESSDs.

SnapshotId

String

Tidak

Tidak

ID snapshot yang ingin Anda gunakan untuk disk data.

Tidak ada.

Sintaksis Tags

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

Properti Tags

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Key

String

Ya

Tidak

Kunci tag.

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

Value

String

Tidak

Tidak

Nilai tag.

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

Sintaksis PrivatePoolOptions

"PrivatePoolOptions": [
  {
    "Id": String,
    "MatchCriteria": String
  }
]

Properti PrivatePoolOptions

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Id

String

Tidak

Tidak

ID kolam pribadi. ID kolam pribadi sama dengan ID jaminan elastisitas atau reservasi kapasitas tempat kolam pribadi dibuat.

Tidak ada.

MatchCriteria

String

Tidak

Tidak

Jenis kolam pribadi yang digunakan untuk memulai instance ECS. Kolam pribadi dibuat setelah jaminan elastisitas atau reservasi kapasitas berlaku.

Nilai valid:

  • Open: kolam pribadi terbuka. Sistem menggunakan kapasitas dalam kolam pribadi terbuka yang cocok. Jika tidak ada kolam pribadi terbuka yang cocok, sistem menggunakan kapasitas dalam kolam publik. Jika Anda mengatur properti ini ke Open, Anda tidak perlu menentukan PrivatePoolOptions.Id.

  • Target: kolam pribadi tertentu. Sistem menggunakan kapasitas dalam kolam pribadi tertentu. Jika tidak ada kapasitas yang tersedia dalam kolam pribadi tertentu, instance gagal dimulai. Jika Anda mengatur properti ini ke Target, Anda harus menentukan PrivatePoolOptions.Id.

  • None (default): tidak ada kolam pribadi. Sistem tidak menggunakan kapasitas dalam kolam pribadi.

PrivatePoolOptions.MatchCriteria harus diatur ke None atau dibiarkan kosong dalam skenario berikut:

  • Buat instance preemptible.

  • Buat instance ECS dalam jaringan klasik.

  • Buat instance ECS pada host khusus.

Nilai Pengembalian

Fn::GetAtt

  • InstanceId: ID instance ECS. ID instance adalah GUID yang dihasilkan oleh sistem untuk instance.

  • PrivateIp: Alamat IP privat instance ECS dalam VPC.

  • InnerIp: Alamat IP privat instance ECS dalam jaringan klasik.

  • PublicIp: Alamat IP publik instance ECS dalam jaringan klasik.

  • ZoneId: ID zona.

  • HostName: Nama host instance ECS.

  • PrimaryNetworkInterfaceId: ID antarmuka jaringan elastis utama (ENI).

  • SecurityGroupIds: ID grup keamanan tempat instance ECS milik.

Contoh

Kode sampel berikut menunjukkan cara membuat instance ECS OpsEcsInstance dan ProdEcsInstance serta mengonfigurasi logon tanpa kata sandi untuk instance OpsEcsInstance pada instance ProdEcsInstance.

Untuk menerima sinyal hasil eksekusi skrip user-data dari instance ECS, Anda dapat mengonfigurasi ALIYUN::ROS::WaitCondition dan ALIYUN::ROS::WaitConditionHandle. Untuk informasi lebih lanjut, lihat ALIYUN::ROS::WaitConditionHandle dan ALIYUN::ROS::WaitCondition.

ROSTemplateFormatVersion: '2015-09-01'
Description: Membuat instance ECS VPC
Metadata: {}
Parameters:
  VpcId:
    AssociationProperty: ALIYUN::ECS::VPC::VPCId
    Type: String
    Description:
      en: Silakan cari ID yang dimulai dengan (vpc-xxx) dari konsol-Virtual Private Cloud
         
    Label:
      en: ID VPC
         
  VSwitchZoneId:
    AssociationProperty: ALIYUN::ECS::Instance:ZoneId
    Type: String
    Description:
          
      en: ID Zona.<b>Catatan:<font color='blue'>Sebelum Anda menentukan ID zona, periksa apakah spesifikasi instance ECS tersedia di zona tersebut. Kami sarankan Anda memilih zona tempat vSwitch yang ditentukan tidak berada.</font>
    Label:
         
      en: Zona Ketersediaan VSwitch
  VSwitchId:
    AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
      ZoneId: ${VSwitchZoneId}
    Type: String
    Description:
      en: ID instance saklar jaringan bisnis yang ada, konsol-Virtual Private Cloud-Switches V bawah query
         
    Label:
      en: ID VSwitch
         
  SecurityGroupId:
    Type: String
    AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
    Description:
      en: Silakan cari ID grup keamanan bisnis yang dimulai dengan(sg-xxx)dari konsol-ECS-Jaringan & Keamanan
         
    Label:
      en: ID Grup Keamanan Bisnis
         
  InstanceType:
    Type: String
    Description:
         
      en: Isi spesifikasi yang tersedia di bawah zona ketersediaan VSwitch.
    Label:
         
      en: Tipe Instance
    AssociationProperty: ALIYUN::ECS::Instance::InstanceType
    AssociationPropertyMetadata:
      ZoneId: ${VSwitchZoneId}
  SystemDiskCategory:
    Type: String
    AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
    AssociationPropertyMetadata:
      ZoneId: ${VSwitchZoneId}
      InstanceType: ${InstanceType}
    Label:
      en: Jenis Disk Sistem
         
    Description:
      en: '<font color=''blue''></font><br>[cloud_efficiency: <font color=''green''>Disk Cloud Efisien</font>]<br>[cloud_ssd: <font color=''green''>Disk SSD Cloud</font>]<br>[cloud_essd: <font color=''green''>Disk ESSD Cloud</font>]<br>[cloud: <font color=''green''>Disk Cloud</font>]<br>[ephemeral_ssd: <font color=''green''>Disk SSD Lokal Cloud</font>]'
         
  SystemDiskSize:
    Default: 40
    Type: Number
    Description:
         
      en: Ukuran disk sistem, rentang nilai: 40-500, satuan: GB.
    Label:
         
      en: Ruang Disk Sistem
Resources:
  OpsEcsInstance:
    Type: ALIYUN::ECS::Instance
    Properties:
      HostName: OpsEcsInstance
      UserData:
        Fn::Sub:
          - |
            #!/bin/bash
            RootPassword=${RootPassword}
            ProdIP=${ProdIP}
            SSHConfig() {
            echo '[ !  -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh
            echo 'while read line;do' >> /tmp/auto_ssh.sh
            echo '        ip=`echo $line | cut -d " " -f1`' >> /tmp/auto_ssh.sh
            echo '        user_name=`echo $line | cut -d " " -f2`' >> /tmp/auto_ssh.sh
            echo '        pass_word=`echo $line | cut -d " " -f3`' >> /tmp/auto_ssh.sh
            echo 'expect <<EOF' >> /tmp/auto_ssh.sh
            echo '        spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh
            echo '        expect {' >> /tmp/auto_ssh.sh
            echo '                  "yes/no" { send "yes\n";exp_continue}' >> /tmp/auto_ssh.sh
            echo '                  "password" { send "$pass_word\n"}' >> /tmp/auto_ssh.sh
            echo '        }' >> /tmp/auto_ssh.sh
            echo '        expect eof' >> /tmp/auto_ssh.sh
            echo 'EOF' >> /tmp/auto_ssh.sh
            echo 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh
            }
            SetHostsConfig() {
            echo "`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}" >> /tmp/host_ip.txt
            echo "${ProdIP} root ${RootPassword}" >> /tmp/host_ip.txt
            sh /tmp/auto_ssh.sh
            }
            main() {
            yum install -y expect
            SSHConfig
            SetHostsConfig
            rm -rf /tmp/host_ip.txt
            }
            main
          - ProdIP:
              Fn::GetAtt:
                - ProdEcsInstance
                - PrivateIp
            RootPassword: Admin@123!
      VpcId:
        Ref: VpcId
      SecurityGroupId:
        Ref: SecurityGroupId
      VSwitchId:
        Ref: VSwitchId
      ImageId: centos_7
      AllocatePublicIP: false
      InstanceType:
        Ref: InstanceType
      SystemDiskSize: 40,
      SystemDiskCategory:
        Ref: SystemDiskCategory
      Password: Admin@123!
  ProdEcsInstance:
    Type: ALIYUN::ECS::Instance
    Properties:
      HostName: ProdEcsInstance
      SystemDiskCategory:
        Ref: SystemDiskCategory
      VpcId:
        Ref: VpcId
      SecurityGroupId:
        Ref: SecurityGroupId
      SystemDiskSize: 40
      ImageId: centos_7
      VSwitchId:
        Ref: VSwitchId
      Password: Admin@123!
      InstanceType:
        Ref: InstanceType
      AllocatePublicIP: false
Outputs: {}
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Description": "Membuat instance ECS VPC",
  "Metadata": {},
  "Parameters": {
    "VpcId": {
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
      "Type": "String",
      "Description": {
        "en": "Silakan cari ID yang dimulai dengan (vpc-xxx) dari konsol-Virtual Private Cloud",
         
      },
      "Label": {
        "en": "VPC ID",
         
      }
    },
    "VSwitchZoneId": {
      "AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
      "Type": "String",
      "Description": {
          
        "en": "ID Zona.<b>Catatan:<font color='blue'>Sebelum Anda menentukan ID zona, periksa apakah spesifikasi instance ECS tersedia di zona tersebut. Kami sarankan Anda memilih zona di mana vSwitch yang ditentukan tidak berada.</font>"
      },
      "Label": {
         
        "en": "Zona Ketersediaan VSwitch"
      }
    },
    "VSwitchId": {
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}",
        "ZoneId": "${VSwitchZoneId}"
      },
      "Type": "String",
      "Description": {
        "en": "ID instance dari switch jaringan bisnis yang ada, konsol-Virtual Private Cloud-VSwitches di bawah pencarian",
         
      },
      "Label": {
        "en": "VSwitch ID",
         
      }
    },
    "SecurityGroupId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}"
      },
      "Description": {
        "en": "Silakan cari ID grup keamanan bisnis yang dimulai dengan(sg-xxx)dari konsol-ECS-Jaringan & Keamanan",
         
      },
      "Label": {
        "en": "ID Grup Keamanan Bisnis",
         
      }
    },
    "InstanceType": {
      "Type": "String",
      "Description": {
         
        "en": "Isi spesifikasi yang dapat digunakan di bawah zona ketersediaan VSwitch."
      },
      "Label": {
         
        "en": "Tipe Instance"
      },
      "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
      "AssociationPropertyMetadata": {
        "ZoneId": "${VSwitchZoneId}"
      }
    },
    "SystemDiskCategory": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
      "AssociationPropertyMetadata": {
        "ZoneId": "${VSwitchZoneId}",
        "InstanceType": "${InstanceType}"
      },
      "Label": {
        "en": "Tipe Disk Sistem",
         
      },
      "Description": {
        "en": "<font color='blue'></font><br>[cloud_efficiency: <font color='green'>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color='green'>SSD Cloud Disk</font>]<br>[cloud_essd: <font color='green'>ESSD Cloud Disk</font>]<br>[cloud: <font color='green'>Cloud Disk</font>]<br>[ephemeral_ssd: <font color='green'>Local SSD Cloud Disk</font>]",
         
      }
    },
    "SystemDiskSize": {
      "Default": 40,
      "Type": "Number",
      "Description": {
         
        "en": "Ukuran disk sistem, rentang nilai: 40-500, satuan: GB."
      },
      "Label": {
         
        "en": "Ruang Disk Sistem"
      }
    }
  },
  "Resources": {
    "OpsEcsInstance": {
      "Type": "ALIYUN::ECS::Instance",
      "Properties": {
        "HostName": "OpsEcsInstance",
        "UserData": {
          "Fn::Sub": [
            "#!/bin/bash\nRootPassword=${RootPassword}\nProdIP=${ProdIP}\nSSHConfig() {\necho '[ !  -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh\necho 'while read line;do' >> /tmp/auto_ssh.sh\necho '        ip=`echo $line | cut -d \" \" -f1`' >> /tmp/auto_ssh.sh\necho '        user_name=`echo $line | cut -d \" \" -f2`' >> /tmp/auto_ssh.sh\necho '        pass_word=`echo $line | cut -d \" \" -f3`' >> /tmp/auto_ssh.sh\necho 'expect <<EOF' >> /tmp/auto_ssh.sh\necho '        spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh\necho '        expect {' >> /tmp/auto_ssh.sh\necho '                  \"yes/no\" { send \"yes\\n\";exp_continue}' >> /tmp/auto_ssh.sh\necho '                  \"password\" { send \"$pass_word\\n\"}' >> /tmp/auto_ssh.sh\necho '        }' >> /tmp/auto_ssh.sh\necho '        expect eof' >> /tmp/auto_ssh.sh\necho 'EOF' >> /tmp/auto_ssh.sh\necho 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh\n}\nSetHostsConfig() {\necho \"`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}\" >> /tmp/host_ip.txt\necho \"${ProdIP} root ${RootPassword}\" >> /tmp/host_ip.txt\nsh /tmp/auto_ssh.sh\n}\nmain() {\nyum install -y expect\nSSHConfig\nSetHostsConfig\nrm -rf /tmp/host_ip.txt\n}\nmain\n",
            {
              "ProdIP": {
                "Fn::GetAtt": [
                  "ProdEcsInstance",
                  "PrivateIp"
                ]
              },
              "RootPassword": "Admin@123!"
            }
          ]
        },
        "VpcId": {
          "Ref": "VpcId"
        },
        "SecurityGroupId": {
          "Ref": "SecurityGroupId"
        },
        "VSwitchId": {
          "Ref": "VSwitchId"
        },
        "ImageId": "centos_7",
        "AllocatePublicIP": false,
        "InstanceType": {
          "Ref": "InstanceType"
        },
        "SystemDiskSize": 40,
        "SystemDiskCategory": {
          "Ref": "SystemDiskCategory"
        },
        "Password": "Admin@123!"
      }
    },
    "ProdEcsInstance": {
      "Type": "ALIYUN::ECS::Instance",
      "Properties": {
        "HostName": "ProdEcsInstance",
        "SystemDiskCategory": {
          "Ref": "SystemDiskCategory"
        },
        "VpcId": {
          "Ref": "VpcId"
        },
        "SecurityGroupId": {
          "Ref": "SecurityGroupId"
        },
        "SystemDiskSize": 40,
        "ImageId": "centos_7",
        "VSwitchId": {
          "Ref": "VSwitchId"
        },
        "Password": "Admin@123!",
        "InstanceType": {
          "Ref": "InstanceType"
        },
        "AllocatePublicIP": false
      }
    }
  },
  "Outputs": {}
}