Membuat instance ECS.
Resource ini tidak lagi diperbarui. Gunakan resource ALIYUN::ECS::InstanceGroup sebagai gantinya.
Sintaks
{
"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
|
Nama properti |
Tipe |
Wajib |
Boleh diperbarui |
Deskripsi |
Batasan |
|
ResourceGroupId |
String |
Tidak |
Ya |
ID kelompok sumber daya. |
Tidak ada |
|
SpotInterruptionBehavior |
String |
Tidak |
Tidak |
Mode interupsi untuk spot instans. |
Hanya Terminate yang didukung. Nilai ini melepas instans segera. Terminate adalah nilai default. |
|
ZoneIds |
List |
Tidak |
Tidak |
Daftar zona. |
Properti ini hanya berlaku saat Anda memilih parameter di konsol. |
|
SpotDuration |
Integer |
Tidak |
Tidak |
Periode retensi untuk spot instans. |
Nilai valid: 0 hingga 6. Unit: jam.
|
|
SecurityGroupIds |
List |
Tidak |
Tidak |
Daftar ID grup keamanan. |
Anda dapat menentukan SecurityGroupId atau SecurityGroupIds, tetapi tidak keduanya. |
|
ImageId |
String |
Tidak |
Ya |
ID gambar. Nilai valid mencakup gambar publik, gambar kustom, dan gambar Marketplace Alibaba Cloud. |
Untuk menentukan gambar publik, Anda dapat memasukkan ID gambar parsial alih-alih ID gambar lengkap. Gambar publik mendukung pencarian fuzzy. Contohnya:
|
|
InstanceType |
String |
Ya |
Ya |
Tipe instans ECS. |
Tipe yang didukung: Famili instans. |
|
SecurityGroupId |
String |
Tidak |
Tidak |
ID grup keamanan. |
Anda dapat menentukan SecurityGroupId atau SecurityGroupIds, tetapi tidak keduanya. |
|
SecurityEnhancementStrategy |
String |
Tidak |
Tidak |
Menentukan apakah akan mengaktifkan Penguatan Keamanan. |
Nilai valid adalah:
|
|
Description |
String |
Tidak |
Ya |
Deskripsi. |
Panjang: 2 hingga 256 karakter. |
|
InstanceName |
String |
Tidak |
Ya |
Nama instans. |
Nama harus terdiri dari 2 hingga 128 karakter. Nama harus dimulai dengan huruf Inggris atau karakter Tionghoa dan tidak boleh dimulai dengan Jika Anda mengosongkan properti ini, ID instans digunakan secara default. |
|
Password |
String |
Tidak |
Ya |
Kata sandi logon untuk instance ECS. |
Panjang: 8 hingga 30 karakter. Kata sandi harus berisi minimal tiga dari jenis karakter berikut: huruf kapital, huruf kecil, angka, dan karakter khusus. Karakter khusus yang valid: |
|
PasswordInherit |
Boolean |
Tidak |
Tidak |
Menentukan apakah akan menggunakan kata sandi yang telah ditetapkan dalam gambar. |
Nilai valid adalah:
Catatan
Atur Password menjadi kosong saat menggunakan properti ini. Pastikan juga citra runtime yang Anda gunakan telah dikonfigurasi dengan kata sandi. |
|
HostName |
String |
Tidak |
Ya |
Hostname instance ECS. |
Hostname harus terdiri dari minimal dua karakter. Hostname tidak boleh dimulai atau diakhiri dengan titik (.) atau tanda hubung (-), serta tidak boleh berisi titik (.) atau tanda hubung (-) berurutan.
|
|
AllocatePublicIP |
Boolean |
Tidak |
Tidak |
Menentukan apakah akan menetapkan alamat IP publik. |
Nilai:
Catatan
IP publik ditetapkan jika InternetMaxBandwidthOut lebih besar dari 0. |
|
PrivateIpAddress |
String |
Tidak |
Tidak |
Alamat IP pribadi dalam virtual private cloud (VPC). |
Alamat IP tidak boleh sama dengan alamat IP instans lain di VPC tersebut. |
|
InternetChargeType |
String |
Tidak |
Ya |
Metode penagihan untuk akses jaringan publik. |
Nilai valid:
|
|
InternetMaxBandwidthOut |
Integer |
Tidak |
Ya |
Bandwidth publik keluar maksimum. |
Nilai valid: 0 hingga 100. Nilai default: 0. Unit: Mbit/s. |
|
IoOptimized |
String |
Tidak |
Tidak |
Menentukan apakah akan membuat instans I/O teroptimasi. |
Nilai valid:
|
|
DiskMappings |
List |
Tidak |
Ya |
Disk data yang akan disambungkan. |
Anda dapat menentukan hingga 16 disk data. |
|
SystemDiskCategory |
String |
Tidak |
Ya |
Kategori disk sistem. |
Nilai valid adalah:
Untuk instans non-I/O teroptimasi dari tipe instans yang telah ditarik, nilai default adalah cloud. Untuk instans tipe lainnya, nilai default adalah cloud_efficiency. |
|
SystemDiskDescription |
String |
Tidak |
Tidak |
Deskripsi disk sistem. |
Tidak ada |
|
SystemDiskDiskName |
String |
Tidak |
Tidak |
Nama disk sistem. |
Panjang: 2 hingga 128 karakter. Nama harus dimulai dengan huruf atau karakter Tionghoa. Nama tidak boleh dimulai dengan |
|
SystemDiskSize |
Number |
Tidak |
Ya |
Ukuran disk sistem. |
Nilai valid: 20 hingga 500. Unit: GB. Jika Anda menggunakan gambar kustom untuk membuat disk sistem, pastikan ukuran disk sistem lebih besar daripada ukuran gambar kustom tersebut. |
|
Tags |
List |
Tidak |
Ya |
Tag kustom. |
Anda dapat menentukan hingga 20 tag. Format: |
|
UserData |
String |
Tidak |
Ya |
Data pengguna yang diteruskan saat membuat instance ECS. |
Konten harus kurang dari 16 KiB. Jangan encode konten dalam Base64. Escape karakter khusus dengan backslash (\). |
|
ZoneId |
String |
Tidak |
Tidak |
ID zona. |
Tidak ada |
|
HpcClusterId |
String |
Tidak |
Tidak |
ID kluster HPC tempat instans berada. |
Tidak ada |
|
VpcId |
String |
Tidak |
Tidak |
ID virtual private cloud (VPC). |
Tidak ada |
|
VSwitchId |
String |
Tidak |
Tidak |
ID vSwitch. |
Tidak ada |
|
InstanceChargeType |
String |
Tidak |
Tidak |
Metode penagihan untuk instance ECS. |
Nilai valid adalah:
|
|
Period |
Number |
Tidak |
Tidak |
Periode penagihan. |
Jika InstanceChargeType adalah PrePaid, Period wajib diisi. Jika InstanceChargeType adalah PostPaid, Period opsional. |
|
KeyPairName |
String |
Tidak |
Ya |
Nama pasangan kunci yang diikat ke instance ECS. |
Jika tipe instans adalah Windows, abaikan properti ini. Jika tipe instans adalah Linux, logon berbasis kata sandi dinonaktifkan selama inisialisasi. Untuk meningkatkan keamanan, gunakan logon berbasis pasangan kunci. |
|
RamRoleName |
String |
Tidak |
Tidak |
Nama Peran RAM Instans. |
|
|
SpotPriceLimit |
String |
Tidak |
Tidak |
Harga maksimum per jam untuk instans. |
Mendukung hingga tiga tempat desimal. Properti ini hanya berlaku saat SpotStrategy adalah SpotWithPriceLimit. |
|
SpotStrategy |
String |
Tidak |
Tidak |
Strategi penawaran untuk instans bayar sesuai penggunaan. |
Anda harus menentukan properti ini saat InstanceChargeType diatur ke PostPaid. Nilai:
|
|
DedicatedHostId |
String |
Tidak |
Tidak |
Dedicated Host tempat instance ECS dibuat. |
Anda dapat mengkueri daftar ID Dedicated Host dengan memanggil API DescribeDedicatedHosts. Anda tidak dapat membuat spot instans pada Dedicated Host. Jika Anda menentukan DedicatedHostId, sistem secara otomatis mengabaikan pengaturan SpotStrategy dan SpotPriceLimit dalam permintaan. |
|
PeriodUnit |
String |
Tidak |
Tidak |
Durasi pembelian. |
Nilai valid adalah:
|
|
AutoRenewPeriod |
Number |
Tidak |
Tidak |
Durasi setiap perpanjangan otomatis. |
AutoRenewPeriod adalah properti wajib saat AutoRenew diatur ke True. Nilai:
|
|
AutoRenew |
String |
Tidak |
Tidak |
Menentukan apakah akan mengaktifkan perpanjangan otomatis. |
Nilai valid:
Properti ini wajib diisi saat Anda mengatur properti InstanceChargeType ke PrePaid. |
|
DeletionProtection |
Boolean |
Tidak |
Ya |
Pengaturan perlindungan pelepasan instans. Menentukan apakah pelepasan instans melalui konsol atau operasi DeleteInstance diizinkan. |
Nilai:
Catatan
Properti ini hanya berlaku untuk instans bayar sesuai penggunaan. Properti ini hanya membatasi operasi pelepasan manual. Properti ini tidak memengaruhi operasi pelepasan yang diprakarsai sistem. |
|
DeploymentSetId |
String |
Tidak |
Tidak |
ID set penyebaran. |
Tidak ada |
|
SystemDiskPerformanceLevel |
String |
Tidak |
Ya |
Anda dapat mengatur tingkat kinerja saat membuat SSD Perusahaan sebagai disk sistem. |
Nilai valid:
Panduan pemilihan ESSD: SSD Perusahaan. |
|
CreditSpecification
|
String |
Tidak |
Ya |
Mode menjalankan untuk instance burstable. |
Nilai valid:
|
|
PrivatePoolOptions |
Map |
Tidak |
Tidak |
Opsi kapasitas kolam pribadi untuk startup instans. |
|
|
StorageSetId |
String |
Tidak |
Tidak |
ID set penyimpanan. |
Tidak ada |
|
HttpTokens |
String |
Tidak |
Ya |
Menentukan apakah akan menerapkan mode hardened (IMDSv2) saat mengakses metadata instans. |
Nilai valid adalah:
Catatan
Pola akses: Metadata instans. |
|
SubscriptionDeletionForce |
Boolean |
Tidak |
Tidak |
Properti ini hanya berlaku untuk instansi langganan. Jika properti ini true, instans dikonversi menjadi instans bayar sesuai penggunaan sebelum dihapus. Jika properti ini false, penghapusan paksa tidak terjadi. Tindakan ini menimbulkan biaya tambahan. Gunakan dengan hati-hati. |
Tidak ada |
|
HttpEndpoint |
String |
Tidak |
Ya |
Menentukan apakah akan mengaktifkan titik akhir metadata instans. |
Nilai valid mencakup hal berikut:
Catatan
|
|
Tenancy |
String |
Tidak |
Tidak |
Menentukan apakah akan membuat instans pada Dedicated Host. |
Nilai valid adalah:
|
|
StorageSetPartitionNumber |
Integer |
Tidak |
Tidak |
Jumlah partisi maksimum dalam set penyimpanan. |
Nilai valid: bilangan bulat lebih besar dari atau sama dengan 2. |
|
DeploymentSetGroupNo |
Integer |
Tidak |
Tidak |
Jika set penyebaran menggunakan kebijakan AvailabilityGroup, gunakan parameter ini untuk menentukan nomor grup instans dalam set penyebaran. |
Nilai valid: 1 hingga 7. |
|
Affinity |
String |
Tidak |
Tidak |
Menentukan apakah instans Dedicated Host dikaitkan dengan Dedicated Host. |
Nilai valid:
|
|
UseAdditionalService |
Boolean |
Tidak |
Tidak |
Menentukan apakah akan menggunakan konfigurasi sistem VM yang disediakan Alibaba Cloud (Windows: NTP dan KMS; Linux: NTP dan YUM). |
Nilai valid adalah:
|
|
ImageFamily |
String |
Tidak |
Tidak |
Nama keluarga gambar. |
Anda dapat menentukan parameter ini untuk mengkueri gambar terbaru yang tersedia dalam keluarga gambar saat ini dan menggunakan gambar tersebut untuk membuat instans.
Catatan
Keluarga gambar yang tersedia: gambar publik. |
Sintaks DiskMappings
"DiskMappings": [
{
"Category": String,
"DiskName": String,
"Description": String,
"Device": String,
"SnapshotId": String,
"PerformanceLevel": String,
"Size": String
}
]
Properti DiskMappings
|
Nama properti |
Tipe |
Wajib |
Boleh diperbarui |
Deskripsi |
Batasan |
|
Size |
String |
Ya |
Tidak |
Ukuran disk data. |
Rentang valid: 20 hingga 500. Unit: GB. |
|
Category |
String |
Tidak |
Tidak |
Kategori disk data. |
Nilai valid adalah:
Untuk instans I/O teroptimasi, nilai default adalah cloud_efficiency. Untuk instans non-I/O teroptimasi, nilai default adalah cloud. Jika gambar kustom berisi disk data, Anda dapat mengatur properti Category ke kategori disk data yang ingin Anda gunakan dalam templat ROS saat membuat instance ECS. Contohnya:
|
|
DiskName |
String |
Tidak |
Tidak |
Nama disk data. |
Panjang: 2 hingga 128 karakter. Nama harus dimulai dengan huruf atau karakter Tionghoa. Nama tidak boleh dimulai dengan |
|
Description |
String |
Tidak |
Tidak |
Deskripsi. |
Panjang: 2 hingga 256 karakter. Deskripsi tidak boleh dimulai dengan |
|
Device |
String |
Tidak |
Tidak |
Titik pemasangan. |
Tidak ada |
|
PerformanceLevel |
String |
Tidak |
Tidak |
Tingkat kinerja SSD Perusahaan yang digunakan sebagai disk data. |
Nilai valid adalah:
Panduan pemilihan ESSD: SSD Perusahaan. |
|
SnapshotId |
String |
Tidak |
Tidak |
ID snapshot yang digunakan untuk disk data. |
Tidak ada |
Sintaks Tags
"Tags": [
{
"Value": String,
"Key": String
}
]
Properti Tags
|
Nama properti |
Tipe |
Wajib |
Boleh diperbarui |
Deskripsi |
Batasan |
|
Key |
String |
Ya |
Tidak |
Kunci tag. |
Panjang: 1 hingga 128 karakter. Kunci tidak boleh dimulai dengan |
|
Value |
String |
Tidak |
Tidak |
Nilai tag. |
Panjang: 0 hingga 128 karakter. Nilai tidak boleh dimulai dengan |
Sintaks PrivatePoolOptions
"PrivatePoolOptions": [
{
"Id": String,
"MatchCriteria": String
}
]
Properti PrivatePoolOptions
|
Nama properti |
Tipe |
Wajib |
Boleh diperbarui |
Deskripsi |
Batasan |
|
Id |
String |
Tidak |
Tidak |
ID kolam pribadi. Ini adalah ID layanan jaminan elastis atau layanan reservasi kapasitas. |
Tidak ada |
|
MatchCriteria |
String |
Tidak |
Tidak |
Setelah layanan jaminan elastis atau layanan reservasi kapasitas berlaku, layanan tersebut menghasilkan kapasitas kolam pribadi untuk startup instans. |
Nilai valid:
Dalam skenario berikut, opsi kapasitas kolam pribadi untuk peluncuran instans hanya dapat diatur ke
|
Nilai kembalian
Fn::GetAtt
-
InstanceId: ID instans. Ini adalah pengidentifikasi unik global yang dihasilkan oleh sistem.
-
PrivateIp: Alamat IP pribadi instans tipe VPC.
-
InnerIp: Alamat IP internal instans tipe klasik.
-
PublicIp: Alamat IP publik instans tipe klasik.
-
ZoneId: ID zona.
-
HostName: Hostname instance ECS.
-
PrimaryNetworkInterfaceId: ID NIC primer.
-
SecurityGroupIds: Daftar ID grup keamanan untuk instans yang dibuat.
Contoh
Skenario 1: Buat dua instance ECS dan aktifkan logon tanpa kata sandi.
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 diawali dengan (vpc-xxx) dari konsol-Virtual Private Cloud
zh-cn: 现有专有网络的实例ID
Label:
en: ID VPC
zh-cn: 专有网络VPC实例ID
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: 可用区ID。
<b>注: <font color='blue'>选择前请确认该可用区是否支持创建ECS资源的规格,建议与其他交换机可用区不同</font>
en: ID Zona Ketersediaan.
<b>catatan:<font color='blue'>sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi pembuatan sumber daya ECS, yang direkomendasikan untuk berbeda dari Zona Ketersediaan VSwitch lainnya</font>
Label:
zh-cn: 交换机可用区
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, kueri di bawah konsol-Virtual Private Cloud-VSwitches
zh-cn: 现有业务网络交换机的实例ID
Label:
en: ID VSwitch
zh-cn: 交换机实例ID
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Description:
en: Silakan cari ID grup keamanan bisnis yang diawali dengan (sg-xxx) dari konsol-ECS-Jaringan & Keamanan
zh-cn: 现有业务安全组的实例ID
Label:
en: ID Grup Keamanan Bisnis
zh-cn: 业务安全组ID
InstanceType:
Type: String
Description:
zh-cn: 填写VSwitch可用区下可使用的规格。
en: Isi spesifikasi yang dapat digunakan di bawah zona ketersediaan VSwitch.
Label:
zh-cn: 实例规格
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
zh-cn: 系统盘类型
Description:
en: '<font color=''blue''>Nilai opsional:</font>
[cloud_efficiency: <font color=''green''>Disk Cloud Efisien</font>]<br>[cloud_ssd: <font color=''green''>Disk Cloud SSD</font>]<br>[cloud_essd: <font color=''green''>Disk Cloud ESSD</font>]<br>[cloud: <font color=''green''>Disk Cloud</font>]<br>[ephemeral_ssd: <font color=''green''>Disk Cloud SSD Lokal</font>]'
zh-cn: '<font color=''blue''><b>可选值:</font><br>[cloud_efficiency: <font color=''green''>高效云盘</font>]<br>[cloud_ssd: <font color=''green''>SSD云盘</font>]<br>[cloud_essd: <font color=''green''>ESSD云盘</font>]<br>[cloud: <font color=''green''>普通云盘</font>]<br>[ephemeral_ssd: <font color=''green''>本地SSD盘</font>]'
SystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: 系统盘大小, 取值范围:[40, 500], 单位:GB。
en: 'Ukuran disk sistem, rentang nilai: 40-500, unit: GB.'
Label:
zh-cn: 系统盘空间
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 diawali dengan (vpc-xxx) dari konsol-Virtual Private Cloud",
"zh-cn": "现有专有网络的实例ID"
},
"Label": {
"en": "ID VPC",
"zh-cn": "专有网络VPC实例ID"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "可用区ID。
<b>注: <font color='blue'>选择前请确认该可用区是否支持创建ECS资源的规格,建议与其他交换机可用区不同</font>",
"en": "ID Zona Ketersediaan.
<b>catatan:<font color='blue'>sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi pembuatan sumber daya ECS, yang direkomendasikan untuk berbeda dari Zona Ketersediaan VSwitch lainnya</font>"
},
"Label": {
"zh-cn": "交换机可用区",
"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, kueri di bawah konsol-Virtual Private Cloud-VSwitches",
"zh-cn": "现有业务网络交换机的实例ID"
},
"Label": {
"en": "ID VSwitch",
"zh-cn": "交换机实例ID"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
},
"Description": {
"en": "Silakan cari ID grup keamanan bisnis yang diawali dengan (sg-xxx) dari konsol-ECS-Jaringan & Keamanan",
"zh-cn": "现有业务安全组的实例ID"
},
"Label": {
"en": "ID Grup Keamanan Bisnis",
"zh-cn": "业务安全组ID"
}
},
"InstanceType": {
"Type": "String",
"Description": {
"zh-cn": "填写VSwitch可用区下可使用的规格。",
"en": "Isi spesifikasi yang dapat digunakan di bawah zona ketersediaan VSwitch."
},
"Label": {
"zh-cn": "实例规格",
"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",
"zh-cn": "系统盘类型"
},
"Description": {
"en": "<font color='blue'>Nilai opsional:</font>
[cloud_efficiency: <font color='green'>Disk Cloud Efisien</font>]<br>[cloud_ssd: <font color='green'>Disk Cloud SSD</font>]<br>[cloud_essd: <font color='green'>Disk Cloud ESSD</font>]<br>[cloud: <font color='green'>Disk Cloud</font>]<br>[ephemeral_ssd: <font color='green'>Disk Cloud SSD Lokal</font>]",
"zh-cn": "<font color='blue'><b>可选值:</font><br>[cloud_efficiency: <font color='green'>高效云盘</font>]<br>[cloud_ssd: <font color='green'>SSD云盘</font>]<br>[cloud_essd: <font color='green'>ESSD云盘</font>]<br>[cloud: <font color='green'>普通云盘</font>]<br>[ephemeral_ssd: <font color='green'>本地SSD盘</font>]"
}
},
"SystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "系统盘大小, 取值范围:[40, 500], 单位:GB。",
"en": "Ukuran disk sistem, rentang nilai: 40-500, unit: GB."
},
"Label": {
"zh-cn": "系统盘空间",
"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": {}
} Skenario 2: Buat instance ECS dengan beberapa alamat IP pribadi.
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建ECS实例,配置VPC、安全组、多IP地址、系统盘及网络接口,支持自定义实例规格、镜像和网络设置。
en: Buat instance ECS, konfigurasikan VPC, grup keamanan, beberapa alamat IP, disk sistem dan antarmuka jaringan, dan mendukung penyesuaian spesifikasi instans, image, dan pengaturan jaringan.
Parameters:
EcsInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: VSwitchZoneId
Type: String
Description:
zh-cn: <font color='blue'>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</font>
<font color='blue'><b>2.可选机型列表</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB 内网带宽1Gbps 内网收发包30万PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB 内网带宽1.5Gbps 内网收发包50万PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB 内网带宽2.5Gbps 内网收发包80万PPS</font>]
en: <font color='blue'>1.Sebelum memilih model, harap konfirmasi bahwa model di zona ketersediaan saat ini tersedia, beberapa model perlu diajukan terlebih dahulu</font>
<font color='blue'><b>2.Daftar model opsional</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB bandwidth Intranet 1Gbps Pengiriman dan penerimaan paket intranet 30 Juta PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB bandwidth Intranet 1.5Gbps Pengiriman dan penerimaan paket intranet 50 Juta PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB bandwidth Intranet 2.5Gbps Pengiriman dan penerimaan paket intranet 80 Juta PPS</font>]
Label:
zh-cn: 实例规格
en: Tipe Instans
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: 可用区ID,
<b>注: <font color='blue'>选择可用区前请确认该可用区是否支持创建ECS资源的规格</font>
en: ID Zona Ketersediaan,
<b>catatan: <font color='blue'>Sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi untuk membuat sumber daya ECS</font>
Label:
zh-cn: 交换机可用区
en: Zona Ketersediaan VSwitch
EcsSystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: 系统盘大小, 取值范围:[40, 500], 单位:GB。
en: 'Ukuran disk sistem, rentang nilai: 40-500, unit: GB.'
Label:
zh-cn: 系统盘空间
en: Ruang Disk Sistem
EcsPassword:
Description:
zh-cn: 服务器登录密码,长度8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。
en: Kata sandi login server, Panjang 8-30, harus berisi tiga dari (Huruf besar, huruf kecil, angka, simbol khusus dalam ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ ).
Type: String
Label:
zh-cn: 实例密码
en: Kata Sandi Instans
NoEcho: true
AssociationProperty: ALIYUN::ECS::Instance::Password
ConstraintDescription:
zh-cn: 长度 8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。
en: Panjang 8-30, harus berisi tiga dari (Huruf besar, huruf kecil, angka, simbol khusus dalam ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ ).
EcsImageId:
AssociationPropertyMetadata:
InstanceType: ${EcsInstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Description:
zh-cn: 实例镜像,详见:<a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>查找镜像</font></a>
en: 'ID Image Instans. lihat detail: <a href=''https://www.alibabacloud.com/help/doc-detail/112977.html'' target=''_blank''><font color=''blue''>Temukan image</font></a>'
Default: centos_7_04_64_20G_alibase_201701015.vhd
Label:
zh-cn: 镜像ID
en: ID Image
AssociationProperty: ALIYUN::ECS::Image::ImageId
Type: String
EcsSystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
LocaleKey: DiskCategory
InstanceType: ${EcsInstanceType}
Type: String
Description:
zh-cn: '<font color=''blue''>可选值:</font>
[cloud_efficiency: <font color=''green''>高效云盘</font>]<br>[cloud_ssd: <font color=''green''>SSD云盘</font>]<br>[cloud_essd: <font color=''green''>ESSD云盘</font>]<br>[cloud: <font color=''green''>普通云盘</font>]<br>[ephemeral_ssd: <font color=''green''>本地SSD盘</font>]'
en: '<font color=''blue''><b>Nilai opsional:</font><br>[cloud_efficiency: <font color=''green''>Disk Cloud Efisien</font>]<br>[cloud_ssd: <font color=''green''>Disk Cloud SSD</font>]<br>[cloud_essd: <font color=''green''>Disk Cloud ESSD</font>]<br>[cloud: <font color=''green''>Disk Cloud</font>]<br>[ephemeral_ssd: <font color=''green''>Disk Cloud SSD Lokal</font>]'
Label:
zh-cn: 系统盘类型
en: Tipe Disk Sistem
IpAddressCount:
Description:
zh-cn: 取值范围:1-9。
en: 'Nilai yang diizinkan: 1~9.'
Default: 1
MaxValue: 9
MinValue: 1
Label:
zh-cn: 网卡分配IPv4数量
en: Jumlah Kartu Jaringan IPv4
Type: Number
Outputs:
InstanceId:
Value:
Ref: EcsInstance
EIP:
Value:
Fn::GetAtt:
- Eip
- EipAddress
PrimaryPrivateIPAddress:
Value:
Fn::GetAtt:
- EcsInstance
- PrivateIp
AddPrivateIPAddressList:
Value:
Fn::GetAtt:
- EcsAssignPrivateIpAddresses
- PrivateIpAddresses
Resources:
EcsAssignPrivateIpAddresses:
Type: ALIYUN::ECS::AssignPrivateIpAddresses
Properties:
NetworkInterfaceId:
Ref: EcsENI
SecondaryPrivateIpAddressCount:
Ref: IpAddressCount
DependsOn:
- EcsENI
EcsENI:
Type: ALIYUN::ECS::NetworkInterface
Properties:
SecurityGroupId:
Ref: EcsSecurityGroup
VSwitchId:
Ref: EcsVSwitch
EcsSecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: EcsVpc
SecurityGroupName:
Fn::Join:
- _
- - StackId
- Ref: ALIYUN::StackId
Eip:
Type: ALIYUN::VPC::EIP
Properties:
InternetChargeType: PayByTraffic
InstanceChargeType: Postpaid
EcsVSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VSwitchName:
Fn::Join:
- _
- - StackId
- Ref: ALIYUN::StackId
VpcId:
Ref: EcsVpc
CidrBlock: 192.168.0.0/24
ZoneId:
Ref: VSwitchZoneId
EcsEniAttachment:
Type: ALIYUN::ECS::NetworkInterfaceAttachment
Properties:
InstanceId:
Ref: EcsInstance
NetworkInterfaceId:
Ref: EcsENI
DependsOn:
- EcsInstance
- EipAssociation
EcsInstance:
Type: ALIYUN::ECS::Instance
Properties:
SystemDiskCategory:
Ref: EcsSystemDiskCategory
VpcId:
Ref: EcsVpc
SecurityGroupId:
Ref: EcsSecurityGroup
SystemDiskSize:
Ref: EcsSystemDiskSize
ImageId:
Ref: EcsImageId
AllocatePublicIP: false
InstanceChargeType: PostPaid
VSwitchId:
Ref: EcsVSwitch
IoOptimized: optimized
Password:
Ref: EcsPassword
InstanceType:
Ref: EcsInstanceType
EcsVpc:
Type: ALIYUN::ECS::VPC
Properties:
VpcName:
Fn::Join:
- '-'
- - StackId
- Ref: ALIYUN::StackId
CidrBlock: 192.168.0.0/16
EipAssociation:
Type: ALIYUN::VPC::EIPAssociation
Properties:
InstanceId:
Ref: EcsENI
AllocationId:
Ref: Eip
Mode: NAT
DependsOn:
- EcsAssignPrivateIpAddresses
- Eip
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- VSwitchZoneId
- IpAddressCount
Label:
default:
zh-cn: 专有网络
en: VPC
- Parameters:
- EcsInstanceType
- EcsImageId
- EcsSystemDiskCategory
- EcsSystemDiskSize
- EcsPassword
Label:
default:
zh-cn: 云服务器
en: ECS
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建ECS实例,配置VPC、安全组、多IP地址、系统盘及网络接口,支持自定义实例规格、镜像和网络设置。",
"en": "Buat instance ECS, konfigurasikan VPC, grup keamanan, beberapa alamat IP, disk sistem dan antarmuka jaringan, serta mendukung kustomisasi spesifikasi instans, citra, dan pengaturan jaringan."
},
"Parameters": {
"EcsInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "VSwitchZoneId"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</font>
<font color='blue'><b>2.可选机型列表</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB 内网带宽1Gbps 内网收发包30万PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB 内网带宽1.5Gbps 内网收发包50万PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB 内网带宽2.5Gbps 内网收发包80万PPS</font>]",
"en": "<font color='blue'>1.Sebelum memilih model, harap konfirmasi bahwa model tersebut tersedia di zona ketersediaan saat ini. Beberapa model memerlukan pelaporan di muka</font>
<font color='blue'><b>2.Daftar model opsional</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB Bandwidth Intranet 1Gbps Paket Intranet 30 Juta PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB Bandwidth Intranet 1.5Gbps Paket Intranet 50 Juta PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB Bandwidth Intranet 2.5Gbps Paket Intranet 80 Juta PPS</font>]"
},
"Label": {
"zh-cn": "实例规格",
"en": "Tipe Instans"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "可用区ID,
<b>注: <font color='blue'>选择可用区前请确认该可用区是否支持创建ECS资源的规格</font>",
"en": "ID Zona Ketersediaan,
<b>catatan: <font color='blue'>Sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi untuk membuat sumber daya ECS</font>"
},
"Label": {
"zh-cn": "交换机可用区",
"en": "Zona Ketersediaan VSwitch"
}
},
"EcsSystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "系统盘大小, 取值范围:[40, 500], 单位:GB。",
"en": "Ukuran disk sistem, rentang nilai: 40-500, unit: GB."
},
"Label": {
"zh-cn": "系统盘空间",
"en": "Ruang Disk Sistem"
}
},
"EcsPassword": {
"Description": {
"zh-cn": "服务器登录密码,长度8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。",
"en": "Kata sandi login server, Panjang 8-30, harus berisi tiga dari jenis karakter berikut: huruf besar, huruf kecil, angka, dan simbol khusus di antara ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/`."
},
"Type": "String",
"Label": {
"zh-cn": "实例密码",
"en": "Kata Sandi Instans"
},
"NoEcho": true,
"AssociationProperty": "ALIYUN::ECS::Instance::Password",
"ConstraintDescription": {
"zh-cn": "长度8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。",
"en": "Panjang 8-30, harus berisi tiga dari jenis karakter berikut: huruf besar, huruf kecil, angka, dan simbol khusus di antara ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/`."
}
},
"EcsImageId": {
"AssociationPropertyMetadata": {
"InstanceType": "${EcsInstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Description": {
"zh-cn": "实例镜像,详见:<a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>查找镜像</font></a>",
"en": "ID Citra Instans. lihat detail: <a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>Cari citra</font></a>"
},
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"Label": {
"zh-cn": "镜像ID",
"en": "ID Citra"
},
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"Type": "String"
},
"EcsSystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"LocaleKey": "DiskCategory",
"InstanceType": "${EcsInstanceType}"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'>可选值:</font>
[cloud_efficiency: <font color='green'>高效云盘</font>]<br>[cloud_ssd: <font color='green'>SSD云盘</font>]<br>[cloud_essd: <font color='green'>ESSD云盘</font>]<br>[cloud: <font color='green'>普通云盘</font>]<br>[ephemeral_ssd: <font color='green'>本地SSD盘</font>]",
"en": "<font color='blue'><b>Nilai opsional:</font><br>[cloud_efficiency: <font color='green'>Disk Cloud Efisien</font>]<br>[cloud_ssd: <font color='green'>Disk Cloud SSD</font>]<br>[cloud_essd: <font color='green'>Disk Cloud ESSD</font>]<br>[cloud: <font color='green'>Disk Cloud</font>]<br>[ephemeral_ssd: <font color='green'>Disk Cloud SSD Lokal</font>]"
},
"Label": {
"zh-cn": "系统盘类型",
"en": "Jenis Disk Sistem"
}
},
"IpAddressCount": {
"Description": {
"zh-cn": "取值范围:1-9。",
"en": "Nilai yang diizinkan: 1~9."
},
"Default": 1,
"MaxValue": 9,
"MinValue": 1,
"Label": {
"zh-cn": "网卡分配IPv4数量",
"en": "Jumlah Alamat IPv4 untuk Kartu Jaringan"
},
"Type": "Number"
}
},
"Outputs": {
"InstanceId": {
"Value": {
"Ref": "EcsInstance"
}
},
"EIP": {
"Value": {
"Fn::GetAtt": [
"Eip",
"EipAddress"
]
}
},
"PrimaryPrivateIPAddress": {
"Value": {
"Fn::GetAtt": [
"EcsInstance",
"PrivateIp"
]
}
},
"AddPrivateIPAddressList": {
"Value": {
"Fn::GetAtt": [
"EcsAssignPrivateIpAddresses",
"PrivateIpAddresses"
]
}
}
},
"Resources": {
"EcsAssignPrivateIpAddresses": {
"Type": "ALIYUN::ECS::AssignPrivateIpAddresses",
"Properties": {
"NetworkInterfaceId": {
"Ref": "EcsENI"
},
"SecondaryPrivateIpAddressCount": {
"Ref": "IpAddressCount"
}
},
"DependsOn": [
"EcsENI"
]
},
"EcsENI": {
"Type": "ALIYUN::ECS::NetworkInterface",
"Properties": {
"SecurityGroupId": {
"Ref": "EcsSecurityGroup"
},
"VSwitchId": {
"Ref": "EcsVSwitch"
}
}
},
"EcsSecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "EcsVpc"
},
"SecurityGroupName": {
"Fn::Join": [
"_",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
}
}
},
"Eip": {
"Type": "ALIYUN::VPC::EIP",
"Properties": {
"InternetChargeType": "PayByTraffic",
"InstanceChargeType": "Postpaid"
}
},
"EcsVSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VSwitchName": {
"Fn::Join": [
"_",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
},
"VpcId": {
"Ref": "EcsVpc"
},
"CidrBlock": "192.168.0.0/24",
"ZoneId": {
"Ref": "VSwitchZoneId"
}
}
},
"EcsEniAttachment": {
"Type": "ALIYUN::ECS::NetworkInterfaceAttachment",
"Properties": {
"InstanceId": {
"Ref": "EcsInstance"
},
"NetworkInterfaceId": {
"Ref": "EcsENI"
}
},
"DependsOn": [
"EcsInstance",
"EipAssociation"
]
},
"EcsInstance": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"SystemDiskCategory": {
"Ref": "EcsSystemDiskCategory"
},
"VpcId": {
"Ref": "EcsVpc"
},
"SecurityGroupId": {
"Ref": "EcsSecurityGroup"
},
"SystemDiskSize": {
"Ref": "EcsSystemDiskSize"
},
"ImageId": {
"Ref": "EcsImageId"
},
"AllocatePublicIP": false,
"InstanceChargeType": "PostPaid",
"VSwitchId": {
"Ref": "EcsVSwitch"
},
"IoOptimized": "optimized",
"Password": {
"Ref": "EcsPassword"
},
"InstanceType": {
"Ref": "EcsInstanceType"
}
}
},
"EcsVpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"VpcName": {
"Fn::Join": [
"-",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
},
"CidrBlock": "192.168.0.0/16"
}
},
"EipAssociation": {
"Type": "ALIYUN::VPC::EIPAssociation",
"Properties": {
"InstanceId": {
"Ref": "EcsENI"
},
"AllocationId": {
"Ref": "Eip"
},
"Mode": "NAT"
},
"DependsOn": [
"EcsAssignPrivateIpAddresses",
"Eip"
]
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"VSwitchZoneId",
"IpAddressCount"
],
"Label": {
"default": {
"zh-cn": "专有网络",
"en": "VPC"
}
}
},
{
"Parameters": [
"EcsInstanceType",
"EcsImageId",
"EcsSystemDiskCategory",
"EcsSystemDiskSize",
"EcsPassword"
],
"Label": {
"default": {
"zh-cn": "云服务器",
"en": "ECS"
}
}
}
]
}
}
}Skenario 3: Buat instance ECS dan Elastic IP Address (EIP), serta sambungkan beberapa disk data.
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建ECS实例,配置弹性IP,挂载2个数据盘,设置网络环境与安全组规则。
en: Buat Instance ECS, konfigurasikan IP elastis, pasang 2 disk data, dan atur lingkungan jaringan serta aturan grup keamanan.
Parameters:
FirstDataDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::DataDiskCategory
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: 数据盘1的磁盘类别
en: Kategori Disk Data Pertama
SystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
InstanceType: InstanceType
ZoneId: ZoneId
Type: String
Label:
zh-cn: 系统盘类型
en: Jenis Disk Sistem
SecondDataDiskSize:
Default: 40
Type: Number
Description:
zh-cn: 第二个数据盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。
en: 'Ukuran volume kedua, dalam unit GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari snapshot tertentu.'
Label:
zh-cn: 数据盘2的磁盘大小
en: Ukuran Disk Data Kedua
SystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: 系统盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。
en: 'Ukuran disk sistem, dalam unit GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari snapshot tertentu.'
Label:
zh-cn: 系统盘大小
en: Ukuran Disk Sistem
VpcCidrBlock:
Default: 192.168.0.0/16
Label:
zh-cn: 专有网络网段
en: Blok CIDR VPC
Type: String
Description:
zh-cn: 新建专有网络IP地址段范围,推荐使用以下的IP地址段
<font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>
en: Rentang segmen alamat IP VPC baru, disarankan untuk menggunakan segmen alamat IP berikut<br><font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>
AllowedValues:
- 192.168.0.0/16
- 172.16.0.0/12
- 10.0.0.0/8
FirstDataDiskSize:
Default: 40
Type: Number
Description:
zh-cn: 第一个数据盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。
en: 'Ukuran volume pertama, dalam unit GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari snapshot tertentu.'
Label:
zh-cn: 数据盘1的磁盘容量
en: Ukuran Disk Data Pertama
SecondDataDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::DataDiskCategory
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: 数据盘2的磁盘类别
en: Kategori Disk Data Kedua
VSwitchCidrBlock:
Default: 192.168.0.0/24
Type: String
Description:
zh-cn: 新建交换机的网段,所属虚拟专有网络的子网
en: Segmen jaringan dari VSwitch baru, subnet dari VPC.
Label:
zh-cn: 交换机网段
en: Blok CIDR VSwitch
Password:
ConstraintDescription:
zh-cn: 长度 8-30,必须包含大写字母、小写字母、数字、特殊符号三种;特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;' <>,.?/
en: 'Panjang 8-30, harus berisi tiga dari jenis berikut: huruf besar, huruf kecil, Angka, simbol khusus; karakter khusus meliputi: ()`~!@#$%^&*_-+=|{}[]:;''<>,.?/'
Description:
zh-cn: 服务器登录密码,长度8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。
en: Kata sandi login server, Panjang 8-30, harus berisi tiga dari jenis berikut (Huruf besar, huruf kecil, angka, simbol khusus dalam ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/).
MinLength: 8
Label:
zh-cn: 实例密码
en: Kata Sandi Instans
AllowedPattern: '[a-zA-Z0-9-\(\)\`\~\!@\#\$%\^&\*-+=\|\{\}\[\]\:\;\‘\,\.\?\/]*'
NoEcho: true
MaxLength: 30
Type: String
InstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ZoneId
Type: String
Description:
zh-cn: <font color='blue'><b>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</font>
<font color='blue'><b>2.可选机型列表</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB 内网带宽1Gbps 内网收发包30万PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB 内网带宽1.5Gbps 内网收发包50万PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB 内网带宽2.5Gbps 内网收发包80万PPS</font>]
en: <font color='blue'>1.Sebelum memilih tipe, harap konfirmasi bahwa tipe tersebut tersedia di zona ketersediaan saat ini, beberapa tipe perlu dilaporkan di muka</font>
<font color='blue'><b>2.Daftar tipe opsional</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB Bandwidth Intranet 1Gbps Paket pengiriman dan penerimaan in-grid 30 Juta PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB Bandwidth Intranet 1.5Gbps Paket pengiriman dan penerimaan in-grid 50 Juta PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB Bandwidth Intranet 2.5Gbps Paket pengiriman dan penerimaan in-grid 80 Juta PPS</font>]
Label:
zh-cn: 实例规格
en: Tipe Instans
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: 可用区ID。
<b>注: <font color='blue'>选择前请确认该可用区是否支持创建ECS资源的规格,建议与其他交换机可用区不同</font>
en: ID Zona Ketersediaan.
<b>catatan:<font color='blue'>sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi untuk membuat sumber daya ECS, yang direkomendasikan agar berbeda dari Zona Ketersediaan VSwitch lainnya</font>
Label:
zh-cn: 交换机可用区
en: Zona Ketersediaan VSwitch
ImageId:
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Description:
zh-cn: 镜像ID, 详见:<a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>查找镜像</font></a>
en: ID Image,Lihat detail:<a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>Cari image</font></a>
Default: centos_7_04_64_20G_alibase_201701015.vhd
Label:
zh-cn: 镜像ID
en: ID Image
AssociationProperty: ALIYUN::ECS::Image::ImageId
Type: String
Outputs:
VpcId:
Description: Id dari VPC yang dibuat.
Value:
Fn::GetAtt:
- Vpc
- VpcId
InstanceId:
Description: Id instans dari instance ECS yang dibuat.
Value:
Fn::GetAtt:
- WebServer
- InstanceId
SecurityGroupId:
Description: Id grup keamanan yang dibuat untuk grup keamanan.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
EipId:
Description: ID yang ditetapkan Aliyun untuk mewakili alokasi alamat untuk digunakan dengan VPC. Hanya dikembalikan untuk alamat IP elastis VPC.
Value:
Fn::GetAtt:
- Eip
- AllocationId
ZoneId:
Description: ID Zona dari instans yang dibuat.
Value:
Fn::GetAtt:
- WebServer
- ZoneId
VSwitchId:
Description: Id dari VSwitch yang dibuat.
Value:
Fn::GetAtt:
- VSwitch
- VSwitchId
Resources:
EIPBind:
Type: ALIYUN::VPC::EIPAssociation
Properties:
InstanceId:
Ref: WebServer
AllocationId:
Ref: Eip
Metadata:
ALIYUN::ROS::Designer:
id: ece3b051-66c9-46d6-9961-f184d342b21f
Eip:
Type: ALIYUN::VPC::EIP
Properties:
InternetChargeType: PayByTraffic
Bandwidth: 1
Metadata:
ALIYUN::ROS::Designer:
id: a914d36e-d429-46d6-bbd0-a22acd07b096
SecurityGroupEgress:
Type: ALIYUN::ECS::SecurityGroupEgress
Properties:
DestCidrIp: 0.0.0.0/0
IpProtocol: all
SecurityGroupId:
Ref: SecurityGroup
NicType: intranet
PortRange: '-1/-1'
Metadata:
ALIYUN::ROS::Designer:
id: faa26b3c-3507-41e9-9959-5db9a9e67446
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: Vpc
Metadata:
ALIYUN::ROS::Designer:
id: fde92bb4-877d-4e7b-b9dd-be6f5e552544
SecurityGroupIngress:
Type: ALIYUN::ECS::SecurityGroupIngress
Properties:
IpProtocol: all
SecurityGroupId:
Ref: SecurityGroup
NicType: intranet
SourceCidrIp: 0.0.0.0/0
PortRange: '-1/-1'
Metadata:
ALIYUN::ROS::Designer:
id: 2a6cfdef-e236-4966-a976-dd7e7bbc37a5
WebServer:
Type: ALIYUN::ECS::Instance
Properties:
UserData:
Fn::Join:
- ''
- - |
#!/bin/sh
- |
logs=~/mount_logs
- |
i=1
- |
total=2
- |
while [ $i -le $total ]
- |
do
- |2
disk_suffix=`echo $i|awk '{printf "%c", 97+$i}'`
- |
fdisk -S 56 /dev/vd$disk_suffix <<ESXU
- |
n
- |
p
- |
1
- |+
- |+
- |
w
- |
ESXU
- |2
echo "/dev/vd$disk_suffix is fdisked!" >> $logs
- |2
mkfs.ext4 /dev/vd${disk_suffix}1
- |2
if [ $? -eq 0 ];then
- |2
echo "/dev/vd${disk_suffix}1 is formated!" >> $logs
- |2
fi
- |2
touch ~/test_ftab
- |2
mkdir $disk_suffix$i
- |2
disk_uuid=`blkid | grep /dev/vd${disk_suffix}1 |awk '{printf $2}'|sed 's/\"//g'`
- |
cat << ESXU > ~/test_ftab
- |
$disk_uuid $disk_suffix$i ext4 defaults 0 0
- |
ESXU
- |2
cat ~/test_ftab >> /etc/fstab
- |2
mount -a
- |2
chmod -R 777 $disk_suffix$i
- |2
rm -rf ~/test_ftab
- |2
echo "/dev/vd${disk_suffix}1 is mounted!" >> $logs
- |2
let i+=1
- |
done
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Ref: Vpc
SecurityGroupId:
Ref: SecurityGroup
SystemDiskSize:
Ref: SystemDiskSize
ImageId:
Ref: ImageId
AllocatePublicIP: 'false'
VSwitchId:
Ref: VSwitch
IoOptimized: optimized
Password:
Ref: Password
DiskMappings:
- Category:
Ref: FirstDataDiskCategory
Size:
Ref: FirstDataDiskSize
- Category:
Ref: SecondDataDiskCategory
Size:
Ref: SecondDataDiskSize
InstanceType:
Ref: InstanceType
Metadata:
ALIYUN::ROS::Designer:
id: 4f476130-0cde-4cff-a973-2cb026e18f13
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock:
Ref: VpcCidrBlock
Metadata:
ALIYUN::ROS::Designer:
id: adfdd097-9c30-49ff-8738-ae3b59eada43
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VpcId:
Fn::GetAtt:
- Vpc
- VpcId
CidrBlock:
Ref: VSwitchCidrBlock
ZoneId:
Ref: ZoneId
Metadata:
ALIYUN::ROS::Designer:
id: bd814869-3bd7-4551-a5db-0ec7ad3d3246
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ZoneId
- VpcCidrBlock
- VSwitchCidrBlock
Label:
default:
zh-cn: 基础资源配置(必填)
en: Konfigurasi Infrastruktur
- Parameters:
- InstanceType
- ImageId
- Password
Label:
default:
zh-cn: ECS 配置(必填)
en: Konfigurasi ECS
- Parameters:
- SystemDiskSize
- SystemDiskCategory
- FirstDataDiskSize
- FirstDataDiskCategory
- SecondDataDiskSize
- SecondDataDiskCategory
Label:
default:
zh-cn: ECS 磁盘配置(必填)
en: Konfigurasi Disk ECS
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建ECS实例,配置弹性IP,挂载2个数据盘,设置网络环境与安全组规则。",
"en": "Buat instance ECS, konfigurasikan IP elastis, pasang 2 disk data, dan atur lingkungan jaringan dan aturan grup keamanan."
},
"Parameters": {
"FirstDataDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::DataDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "数据盘1的磁盘类别",
"en": "Kategori Disk Data Pertama"
}
},
"SystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "InstanceType",
"ZoneId": "ZoneId"
},
"Type": "String",
"Label": {
"zh-cn": "系统盘类型",
"en": "Jenis Disk Sistem"
}
},
"SecondDataDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "第二个数据盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。",
"en": "Ukuran volume Kedua, unit dalam GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari Snapshot tertentu."
},
"Label": {
"zh-cn": "数据盘2的磁盘大小",
"en": "Ukuran Disk Data Kedua"
}
},
"SystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "系统盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。",
"en": "Ukuran disk dari disk sistem, unit dalam GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari Snapshot tertentu."
},
"Label": {
"zh-cn": "系统盘大小",
"en": "Ruang Disk Sistem"
}
},
"VpcCidrBlock": {
"Default": "192.168.0.0/16",
"Label": {
"zh-cn": "专有网络网段",
"en": "Blok CIDR VPC"
},
"Type": "String",
"Description": {
"zh-cn": "新建专有网络IP地址段范围,推荐使用以下的IP地址段
<font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>",
"en": "Rentang segmen alamat IP jaringan eksklusif baru, direkomendasikan untuk menggunakan segmen alamat IP berikut<br><font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>"
},
"AllowedValues": [
"192.168.0.0/16",
"172.16.0.0/12",
"10.0.0.0/8"
]
},
"FirstDataDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "第一个数据盘的大小,单位为GB。值范围:cloud:[5,2000]、cloud_efficiency:[20,32768]、cloud_ssd:[20,32768]、ephemeral_ssd:[5,800]。该值应等于或大于特定快照。",
"en": "Ukuran volume pertama, unit dalam GB. Rentang nilai: cloud: [5,2000], cloud_efficiency: [20,32768], cloud_ssd: [20,32768], ephemeral_ssd: [5,800]. Nilai harus sama dengan atau lebih besar dari Snapshot tertentu."
},
"Label": {
"zh-cn": "数据盘1的磁盘容量",
"en": "Ukuran Disk Data Pertama"
}
},
"SecondDataDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::DataDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "数据盘2的磁盘类别",
"en": "Kategori Disk Data Kedua"
}
},
"VSwitchCidrBlock": {
"Default": "192.168.0.0/24",
"Type": "String",
"Description": {
"zh-cn": "新建交换机的网段,所属虚拟专有网络的子网",
"en": "Segmen jaringan dari switch baru, subnet dari jaringan eksklusif virtual"
},
"Label": {
"zh-cn": "交换机网段",
"en": "Blok CIDR VSwitch"
}
},
"Password": {
"ConstraintDescription": {
"zh-cn": "长度8-30,必须包含大写字母、小写字母、数字、特殊符号三种;特殊字符包括:()`~!@#$%^&*_-+=|{}[]:;' <>,.?/",
"en": "Panjang 8-30, harus berisi tiga dari jenis berikut: huruf besar, huruf kecil, Angka, simbol khusus; karakter khusus meliputi: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"Description": {
"zh-cn": "服务器登录密码,长度8-30,必须包含三项(大写字母、小写字母、数字、 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ 中的特殊符号)。",
"en": "Kata sandi login server, Panjang 8-30, harus berisi tiga jenis karakter dari berikut (Huruf besar, huruf kecil, angka, Simbol khusus dalam ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/). "
},
"MinLength": 8,
"Label": {
"zh-cn": "实例密码",
"en": "Kata Sandi Instans"
},
"AllowedPattern": "[a-zA-Z0-9-\\(\\)\\`\\~\\!@\\#\\$%\\^&\\*-+=\\|\\{\\}\\[\\]\\:\\;\\‘\\,\\.\\?\\/]*",
"NoEcho": true,
"MaxLength": 30,
"Type": "String"
},
"InstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "ZoneId"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'><b>1.选择机型前请先确认当前可用区下该机型是否有货,部分机型需要提前报备</font>
<font color='blue'><b>2.可选机型列表</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB 内网带宽1Gbps 内网收发包30万PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB 内网带宽1.5Gbps 内网收发包50万PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB 内网带宽2.5Gbps 内网收发包80万PPS</font>]",
"en": "<font color='blue'>1.Sebelum memilih model, harap konfirmasi bahwa model di zona tersedia saat ini ada dalam stok, beberapa model perlu dilaporkan terlebih dahulu</font>
<font color='blue'><b>2.Daftar model opsional</font><br></font>[ecs.c5.large <font color='green'>2vCPU 4GiB Bandwidth intranet 1Gbps Paket pengiriman dan penerimaan intranet 30 Juta PPS</font>]
[ecs.c5.xlarge <font color='green'>4vCPU 8GiB Bandwidth intranet 1,5Gbps Paket pengiriman dan penerimaan intranet 50 Juta PPS</font>]
[ecs.c5.2xlarge <font color='green'>8vCPU 16GiB Bandwidth intranet 2,5Gbps Paket pengiriman dan penerimaan intranet 80 Juta PPS</font>]"
},
"Label": {
"zh-cn": "实例规格",
"en": "Jenis Instans"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "可用区ID。
<b>注: <font color='blue'>选择前请确认该可用区是否支持创建ECS资源的规格,建议与其他交换机可用区不同</font>",
"en": "ID Zona Ketersediaan.
<b>catatan: <font color='blue'>sebelum memilih, harap konfirmasi bahwa Zona Ketersediaan mendukung spesifikasi pembuatan sumber daya ECS, yang direkomendasikan untuk berbeda dari Zona Ketersediaan VSwitch lainnya</font>"
},
"Label": {
"zh-cn": "交换机可用区",
"en": "Zona Ketersediaan VSwitch"
}
},
"ImageId": {
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Description": {
"zh-cn": "镜像ID, 详见:<a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>查找镜像</font></a>",
"en": "ID Image, Lihat detail: <a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>Temukan image</font></a>"
},
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"Label": {
"zh-cn": "镜像ID",
"en": "ID Image"
},
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"Type": "String"
}
},
"Outputs": {
"VpcId": {
"Description": "Id dari VPC yang dibuat.",
"Value": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
}
},
"InstanceId": {
"Description": "ID instance dari instance ECS yang dibuat.",
"Value": {
"Fn::GetAtt": [
"WebServer",
"InstanceId"
]
}
},
"SecurityGroupId": {
"Description": "ID grup keamanan yang dibuat untuk grup keamanan.",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
}
},
"EipId": {
"Description": "ID yang ditetapkan Aliyun untuk mewakili alokasi alamat untuk digunakan dengan VPC. Hanya dikembalikan untuk alamat IP elastis VPC.",
"Value": {
"Fn::GetAtt": [
"Eip",
"AllocationId"
]
}
},
"ZoneId": {
"Description": "ID Zona dari instance yang dibuat.",
"Value": {
"Fn::GetAtt": [
"WebServer",
"ZoneId"
]
}
},
"VSwitchId": {
"Description": "Id dari VSwitch yang dibuat.",
"Value": {
"Fn::GetAtt": [
"VSwitch",
"VSwitchId"
]
}
}
},
"Resources": {
"EIPBind": {
"Type": "ALIYUN::VPC::EIPAssociation",
"Properties": {
"InstanceId": {
"Ref": "WebServer"
},
"AllocationId": {
"Ref": "Eip"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "ece3b051-66c9-46d6-9961-f184d342b21f"
}
}
},
"Eip": {
"Type": "ALIYUN::VPC::EIP",
"Properties": {
"InternetChargeType": "PayByTraffic",
"Bandwidth": 1
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "a914d36e-d429-46d6-bbd0-a22acd07b096"
}
}
},
"SecurityGroupEgress": {
"Type": "ALIYUN::ECS::SecurityGroupEgress",
"Properties": {
"DestCidrIp": "0.0.0.0/0",
"IpProtocol": "all",
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"NicType": "intranet",
"PortRange": "-1/-1"
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "faa26b3c-3507-41e9-9959-5db9a9e67446"
}
}
},
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "fde92bb4-877d-4e7b-b9dd-be6f5e552544"
}
}
},
"SecurityGroupIngress": {
"Type": "ALIYUN::ECS::SecurityGroupIngress",
"Properties": {
"IpProtocol": "all",
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"NicType": "intranet",
"SourceCidrIp": "0.0.0.0/0",
"PortRange": "-1/-1"
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "2a6cfdef-e236-4966-a976-dd7e7bbc37a5"
}
}
},
"WebServer": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"UserData": {
"Fn::Join": [
"",
[
"#!/bin/sh\n",
"logs=~/mount_logs\n",
"i=1\n",
"total=2\n",
"while [ $i -le $total ]\n",
"do\n",
" disk_suffix=`echo $i|awk '{printf \"%c\", 97+$i}'`\n",
"fdisk -S 56 /dev/vd$disk_suffix <<ESXU\n",
"n\n",
"p\n",
"1\n",
"\n",
"\n",
"w\n",
"ESXU\n",
" echo \"/dev/vd$disk_suffix is fdisked!\" >> $logs\n",
" mkfs.ext4 /dev/vd${disk_suffix}1\n",
" if [ $? -eq 0 ];then\n",
" echo \"/dev/vd${disk_suffix}1 is formated!\" >> $logs\n",
" fi\n",
" touch ~/test_ftab\n",
" mkdir $disk_suffix$i\n",
" disk_uuid=`blkid | grep /dev/vd${disk_suffix}1 |awk '{printf $2}'|sed 's/\\\"//g'`\n",
"cat << ESXU > ~/test_ftab\n",
"$disk_uuid $disk_suffix$i ext4 defaults 0 0\n",
"ESXU\n",
" cat ~/test_ftab >> /etc/fstab\n",
" mount -a\n",
" chmod -R 777 $disk_suffix$i\n",
" rm -rf ~/test_ftab\n",
" echo \"/dev/vd${disk_suffix}1 is mounted!\" >> $logs\n",
" let i+=1\n",
"done\n"
]
]
},
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Ref": "Vpc"
},
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"SystemDiskSize": {
"Ref": "SystemDiskSize"
},
"ImageId": {
"Ref": "ImageId"
},
"AllocatePublicIP": "false",
"VSwitchId": {
"Ref": "VSwitch"
},
"IoOptimized": "optimized",
"Password": {
"Ref": "Password"
},
"DiskMappings": [
{
"Category": {
"Ref": "FirstDataDiskCategory"
},
"Size": {
"Ref": "FirstDataDiskSize"
}
},
{
"Category": {
"Ref": "SecondDataDiskCategory"
},
"Size": {
"Ref": "SecondDataDiskSize"
}
}
],
"InstanceType": {
"Ref": "InstanceType"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "4f476130-0cde-4cff-a973-2cb026e18f13"
}
}
},
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": {
"Ref": "VpcCidrBlock"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "adfdd097-9c30-49ff-8738-ae3b59eada43"
}
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VpcId": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
},
"CidrBlock": {
"Ref": "VSwitchCidrBlock"
},
"ZoneId": {
"Ref": "ZoneId"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "bd814869-3bd7-4551-a5db-0ec7ad3d3246"
}
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"ZoneId",
"VpcCidrBlock",
"VSwitchCidrBlock"
],
"Label": {
"default": {
"zh-cn": "基础资源配置(必填)",
"en": "Konfigurasi Infrastruktur"
}
}
},
{
"Parameters": [
"InstanceType",
"ImageId",
"Password"
],
"Label": {
"default": {
"zh-cn": "ECS 配置(必填)",
"en": "Konfigurasi ECS"
}
}
},
{
"Parameters": [
"SystemDiskSize",
"SystemDiskCategory",
"FirstDataDiskSize",
"FirstDataDiskCategory",
"SecondDataDiskSize",
"SecondDataDiskCategory"
],
"Label": {
"default": {
"zh-cn": "ECS 磁盘配置(必填)",
"en": "Konfigurasi Disk ECS"
}
}
}
]
}
}
}Untuk contoh lainnya, lihat templat publik yang menyertakan resource ini.