Saat membuat sistem CentOS, Anda perlu mengonfigurasi repositori YUM secara manual untuk menginstal perangkat lunak umum. Repositori YUM adalah kumpulan paket perangkat lunak, dan versi CentOS yang berbeda memerlukan repositori YUM yang berbeda. Resource Orchestration Service (ROS) memungkinkan Anda mengotomatiskan konfigurasi repositori YUM untuk berbagai versi CentOS dengan membuat tumpukan berdasarkan templat yang mendefinisikan pemetaan.
Langkah 1: Buat templat
Pemetaan didefinisikan dalam templat berikut. Pemetaan ini mencakup URL repositori YUM untuk beberapa versi CentOS. Saat membuat instance Elastic Compute Service (ECS) dan menginisialisasi sistem untuk instance tersebut, fungsi Fn::FindInMap akan mengembalikan URL repositori YUM yang sesuai dengan versi gambar yang ditentukan oleh InstanceImageId.
ROSTemplateFormatVersion: '2015-09-01'
Description: Membuat instance sistem ECS Centos, dan mengatur repositori yum.
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- VSwitchZoneId
- InstanceImageId
- InstanceType
- SystemDiskSize
- InstancePublicIP
- InstancePassword
- SystemDiskCategory
Label:
default: ECS
TemplateTags:
- Membuat instance VPC ECS
Parameters:
SystemDiskCategory:
Type: String
Label:
en: Tipe Disk Sistem
Description:
en: '<font color=''blue''></font>[cloud_efficiency: <font color=''green''>Disk Awan Efisien</font>]<br>[cloud_ssd: <font color=''green''>Disk SSD Awan</font>]<br>[cloud_essd: <font color=''green''>Disk ESSD Awan</font>]<br>[cloud: <font color=''green''>Disk Awan</font>]<br>[ephemeral_ssd: <font color=''green''>Disk SSD Lokal</font>]'
AllowedValues:
- cloud_efficiency
- cloud_ssd
- cloud
- cloud_essd
- ephemeral_ssd
Default: cloud_ssd
InstanceImageId:
Type: String
Default: centos_7
AllowedValues:
- centos_6
- centos_7
- centos_8
Description:
en: ID Gambar, mendukung [centos_6,centos_7,centos_8]
Label:
en: Gambar
InstanceType:
Type: String
Description:
en: 'Tipe instance. Tipe instance harus tersedia di zona tempat vSwitch berada.</font>Tipe instance umum: <font color='red'><b>ecs.c5.large.</font>Catatan: Tipe instance umum mungkin tidak tersedia di zona tertentu.<br>Untuk informasi lebih lanjut, lihat <a href=''https://www.alibabacloud.com/help/en/doc-detail/25378.html'' target=''_blank''><b><font color=''blue''>Ikhtisar keluarga instance</font></a>.'
Label:
en: Tipe Instance
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: VSwitchZoneId
InstancePassword:
NoEcho: true
Type: String
Description:
en: Kata sandi login server, Panjang 8-30, harus mencakup tiga (Huruf kapital, huruf kecil, angka, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Simbol khusus).
AllowedPattern: '[0-9A-Za-z\_\-\&:;''<>,=%`~!@#\(\)\$\^\*\+\|\{\}\[\]\.\?\/]+$'
Label:
en: Kata Sandi Instance
ConstraintDescription:
en: Panjang 8-30, harus mencakup tiga (Huruf kapital, huruf kecil, angka, ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ Simbol khusus).
MinLength: 8
MaxLength: 30
InstancePublicIP:
Type: Boolean
Description:
en: Apakah akan menetapkan IP publik biasa.
Label:
en: Tetapkan IP Publik
Default: false
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 merekomendasikan Anda memilih zona di mana vSwitch yang Anda tentukan tidak berada.</font>
Label:
en: Zona Ketersediaan VSwitch
SystemDiskSize:
Default: 40
Type: Number
Description:
en: 'Ukuran disk sistem, rentang nilai: 40-500, satuan: GB.'
Label:
en: Ruang Disk Sistem
Mappings:
YumMap:
centos_6:
YumSource: http://mirrors.aliyun.com/repo/Centos-6.repo
centos_7:
YumSource: http://mirrors.aliyun.com/repo/Centos-7.repo
centos_8:
YumSource: http://mirrors.aliyun.com/repo/Centos-8.repo
Resources:
RosConditionHandle:
Type: ALIYUN::ROS::WaitConditionHandle
RosWaitCondition:
Type: ALIYUN::ROS::WaitCondition
DependsOn: EcsInstance
Properties:
Timeout: 1800
Count: 1
Handle:
Ref: RosConditionHandle
EcsVSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VpcId:
Ref: EcsVpc
ZoneId:
Ref: VSwitchZoneId
CidrBlock: 192.168.0.0/24
EcsInstance:
Type: ALIYUN::ECS::Instance
Properties:
UserData:
Fn::Sub:
- |
#!/bin/bash
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo ${yum_repo}
yum clean all
yum makecache
${ros-notify} -d '{"data" : "Instalasi Centos berhasil."}'
- ros-notify:
Fn::GetAtt:
- RosConditionHandle
- CurlCli
yum_repo:
Fn::FindInMap:
- YumMap
- Ref: InstanceImageId
- YumSource
IoOptimized: optimized
PrivateIpAddress: 192.168.0.1
VpcId:
Ref: EcsVpc
SecurityGroupId:
Ref: EcsSecurityGroup
VSwitchId:
Ref: EcsVSwitch
ImageId:
Ref: InstanceImageId
AllocatePublicIP:
Ref: InstancePublicIP
InstanceType:
Ref: InstanceType
SystemDiskSize:
Ref: SystemDiskSize
SystemDiskCategory:
Ref: SystemDiskCategory
Password:
Ref: InstancePassword
EcsSecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: EcsVpc
SecurityGroupIngress:
- PortRange: '-1/-1'
Priority: 1
SourceCidrIp: 0.0.0.0/0
IpProtocol: all
NicType: intranet
SecurityGroupEgress:
- PortRange: '-1/-1'
Priority: 1
IpProtocol: all
DestCidrIp: 0.0.0.0/0
NicType: intranet
EcsVpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock: 192.168.0.0/16
VpcName:
Fn::Join:
- '-'
- - StackId
- Ref: ALIYUN::StackId
Outputs:
EcsInstanceId:
Value:
Fn::GetAtt:
- EcsInstance
- InstanceId
Langkah 2: Buat stack
Pada langkah Select Template, klik Select an Existing Template. Atur Template Import Method menjadi Enter Template Content, masukkan konten templat yang telah diedit di Langkah 1: Buat Templat ke dalam editor kode Template Content, lalu klik Next.
Pada langkah Configure Template Parameters, konfigurasikan Stack Name dan parameter berikut:
Parameter
Deskripsi
Contoh
VSwitch Availability Zone
ID zona sumber daya.
Qingdao Zone C
Image
ID image dari Instance ECS.
Nilai default: centos_7.
Untuk informasi lebih lanjut, lihat Ikhtisar.
centos_7
Instance Type
Tipe Instance ECS.
Pilih tipe instance yang valid. Untuk informasi lebih lanjut, lihat Ikhtisar keluarga instance.
ecs.c5.large
System Disk Space
Ukuran disk sistem dari Instance ECS.
Nilai valid: 40 hingga 500.
Satuan: GB.
40
Allocate Public IP
Menentukan apakah akan mengalokasikan alamat IP publik ke Instance ECS.
Jika Anda mengaktifkan Allocate Public IP, sistem akan mengalokasikan alamat IP publik.
Jika Anda menonaktifkan Allocate Public IP, sistem tidak akan mengalokasikan alamat IP publik.
Aktifkan Allocate IPV4 Public IP.
Instance Password
Kata sandi yang digunakan untuk masuk ke Instance ECS.
Test_12****
System Disk Type
Kategori disk sistem dari Instance ECS. Nilai valid:
cloud_efficiency: ultra disk
cloud_ssd: SSD standar
cloud_essd: Enhanced SSD (ESSD)
cloud: basic disk
ephemeral_ssd: local SSD
Untuk informasi lebih lanjut, lihat Disks.
cloud_efficiency
Klik Create.
Pada tab Stack Information, lihat status stack. Setelah stack dibuat, klik tab Outputs untuk mendapatkan ID Instance ECS.
Hubungkan ke Instance ECS di konsol ECS untuk melihat repositori YUM.
Untuk informasi lebih lanjut tentang cara menghubungkan ke Instance ECS, lihat Metode Koneksi.
Langkah 3: Lihat sumber daya
Di halaman Stacks, klik stack yang Anda buat di Langkah 1.
Klik tab Resources untuk melihat informasi tentang sumber daya dalam stack.
Tabel berikut menjelaskan sumber daya dalam contoh ini.
Sumber Daya
Jumlah
Deskripsi
Spesifikasi
ALIYUN::ECS::Instance
1
Membuat instance ECS.
Jumlah: 1
Tipe Instance: ecs.c5.large
Kategori Disk Sistem: cloud_efficiency
Ukuran Disk Sistem: 40 GB
Alokasikan Alamat IP Publik: Ya
nullUntuk informasi lebih lanjut tentang rincian harga sumber daya, kunjungi konsol terkait atau lihat dokumentasi harga setiap sumber daya.