Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan instans Amazon EC2 dengan CloudFormation
Cuplikan berikut menunjukkan cara mengonfigurasi instans Amazon EC2 menggunakan. CloudFormation
Konfigurasi Amazon EC2 umum
Cuplikan berikut menunjukkan konfigurasi umum untuk instans Amazon EC2 menggunakan. CloudFormation
Contoh potongan
Membuat instans Amazon EC2 di Zona Ketersediaan tertentu
Cuplikan berikut membuat instans Amazon EC2 di Zona Ketersediaan yang ditentukan menggunakan sumber daya AWS: :EC2: :Instance. Kode untuk Zona Ketersediaan adalah kode Wilayahnya diikuti dengan pengidentifikasi huruf. Anda dapat meluncurkan instance ke Zona Ketersediaan tunggal.
JSON
"Ec2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "AvailabilityZone": "aa-example-1a", "ImageId": "ami-1234567890abcdef0" } }
YAML
Ec2Instance: Type: AWS::EC2::Instance Properties: AvailabilityZone:aa-example-1aImageId:ami-1234567890abcdef0
Mengkonfigurasi instance Amazon EC2 yang ditandai dengan volume EBS dan data pengguna
Cuplikan berikut membuat instance Amazon EC2 dengan tag, volume EBS, dan data pengguna. Ini menggunakan sumber daya AWS: :EC2:: Instance. Dalam template yang sama, Anda harus menentukan sumber daya AWS: :EC2::, SecurityGroup sumber daya AWS: :SNS: :Topic, dan sumber daya AWS: :EC2: :Volume. KeyNameHarus didefinisikan di Parameters bagian template.
Tag dapat membantu Anda mengkategorikan AWS sumber daya berdasarkan preferensi Anda, seperti berdasarkan tujuan, pemilik, atau lingkungan. Data pengguna memungkinkan penyediaan skrip atau data khusus ke instance selama peluncuran. Data ini memfasilitasi otomatisasi tugas, konfigurasi perangkat lunak, instalasi paket, dan tindakan lain pada instance selama inisialisasi.
Untuk informasi selengkapnya tentang menandai sumber daya Anda, lihat Men andai sumber daya Amazon EC2 Anda di Panduan Pengguna Amazon EC2.
Untuk informasi tentang data pengguna, lihat Menggunakan metadata instans untuk mengelola instans EC2 Anda di Panduan Pengguna Amazon EC2.
JSON
"Ec2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "KeyName": { "Ref": "KeyName" }, "SecurityGroups": [ { "Ref": "Ec2SecurityGroup" } ], "UserData": { "Fn::Base64": { "Fn::Join": [ ":", [ "PORT=80", "TOPIC=", { "Ref": "MySNSTopic" } ] ] } }, "InstanceType": "aa.size", "AvailabilityZone": "aa-example-1a", "ImageId": "ami-1234567890abcdef0", "Volumes": [ { "VolumeId": { "Ref": "MyVolumeResource" }, "Device": "/dev/sdk" } ], "Tags": [ { "Key": "Name", "Value": "MyTag" } ] } }
YAML
Ec2Instance: Type: AWS::EC2::Instance Properties: KeyName: !Ref KeyName SecurityGroups: - !Ref Ec2SecurityGroup UserData: Fn::Base64: Fn::Join: - ":" - - "PORT=80" - "TOPIC=" - !Ref MySNSTopic InstanceType:aa.sizeAvailabilityZone:aa-example-1aImageId:ami-1234567890abcdef0Volumes: - VolumeId: !Ref MyVolumeResource Device: "/dev/sdk" Tags: - Key: Name Value: MyTag
Tentukan nama tabel DynamoDB dalam data pengguna untuk peluncuran instans Amazon EC2
Cuplikan berikut membuat instance Amazon EC2 dan mendefinisikan nama tabel DynamoDB dalam data pengguna untuk diteruskan ke instance saat diluncurkan. Ini menggunakan sumber daya AWS: :EC2:: Instance. Anda dapat menentukan parameter atau nilai dinamis dalam data pengguna untuk meneruskan instance EC2 saat peluncuran.
Untuk informasi selengkapnya tentang data pengguna, lihat Menggunakan metadata instans untuk mengelola instans EC2 Anda di Panduan Pengguna Amazon EC2.
JSON
"Ec2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "UserData": { "Fn::Base64": { "Fn::Join": [ "", [ "TableName=", { "Ref": "DynamoDBTableName" } ] ] } }, "AvailabilityZone": "aa-example-1a", "ImageId": "ami-1234567890abcdef0" } }
YAML
Ec2Instance: Type: AWS::EC2::Instance Properties: UserData: Fn::Base64: Fn::Join: - '' - - 'TableName=' - Ref: DynamoDBTableName AvailabilityZone:aa-example-1aImageId:ami-1234567890abcdef0
Buat volume Amazon EBS dengan DeletionPolicy
Cuplikan berikut membuat volume Amazon EBS menggunakan sumber daya Amazon EC2 AWS: :EC2: :Volume. Anda dapat menggunakan Size SnapshotID properti atau untuk menentukan volume, tetapi tidak keduanya. A DeletionPolicy tribut diatur untuk membuat snapshot volume saat tumpukan dihapus.
Untuk informasi selengkapnya tentang DeletionPolicy atribut, lihat DeletionPolicy atribut.
Untuk informasi selengkapnya tentang membuat volume Amazon EBS, lihat Membuat volume Amazon EBS.
JSON
Cuplikan ini membuat volume Amazon EBS dengan ukuran tertentu. Ukurannya diatur ke 10, tetapi Anda dapat menyesuaikannya sesuai kebutuhan. Sumber daya AWS: :EC2: :Volume memungkinkan Anda menentukan ukuran atau ID snapshot tetapi tidak keduanya.
"MyEBSVolume": { "Type": "AWS::EC2::Volume", "Properties": { "Size": "10", "AvailabilityZone": { "Ref": "AvailabilityZone" } }, "DeletionPolicy": "Snapshot" }
Cuplikan ini membuat volume Amazon EBS menggunakan ID snapshot yang disediakan. Sumber daya AWS: :EC2: :Volume memungkinkan Anda menentukan ukuran atau ID snapshot tetapi tidak keduanya.
"MyEBSVolume": { "Type": "AWS::EC2::Volume", "Properties": { "SnapshotId" : "snap-1234567890abcdef0", "AvailabilityZone": { "Ref": "AvailabilityZone" } }, "DeletionPolicy": "Snapshot" }
YAML
Cuplikan ini membuat volume Amazon EBS dengan ukuran tertentu. Ukurannya diatur ke 10, tetapi Anda dapat menyesuaikannya sesuai kebutuhan. Sumber daya AWS: :EC2: :Volume memungkinkan Anda menentukan ukuran atau ID snapshot tetapi tidak keduanya.
MyEBSVolume: Type: AWS::EC2::Volume Properties: Size:10AvailabilityZone: Ref: AvailabilityZone DeletionPolicy: Snapshot
Cuplikan ini membuat volume Amazon EBS menggunakan ID snapshot yang disediakan. Sumber daya AWS: :EC2: :Volume memungkinkan Anda menentukan ukuran atau ID snapshot tetapi tidak keduanya.
MyEBSVolume: Type: AWS::EC2::Volume Properties: SnapshotId:snap-1234567890abcdef0AvailabilityZone: Ref: AvailabilityZone DeletionPolicy: Snapshot
Tentukan pemetaan perangkat blok untuk sebuah instance
Pemetaan perangkat blok mendefinisikan perangkat blok, yang mencakup volume penyimpanan instans dan volume EBS, untuk dilampirkan ke instance. Anda dapat menentukan pemetaan perangkat blok saat membuat AMI sehingga pemetaan digunakan oleh semua instance yang diluncurkan dari AMI. Atau, Anda dapat menentukan pemetaan perangkat blok saat meluncurkan instance, sehingga pemetaan menggantikan yang ditentukan dalam AMI dari mana instance diluncurkan.
Anda dapat menggunakan cuplikan template berikut untuk menentukan pemetaan perangkat blok untuk volume penyimpanan EBS atau instans menggunakan BlockDeviceMappings properti sumber daya AWS: :EC2: :Instance.
Untuk informasi selengkapnya tentang pemetaan perangkat blok, lihat Mem blokir pemetaan perangkat untuk volume pada instans Amazon EC2 di Panduan Pengguna Amazon EC2.
Skenario
Tentukan pemetaan perangkat blok untuk dua volume EBS
JSON
"Ec2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "ImageId": "{{resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2}}", "KeyName": { "Ref": "KeyName" }, "InstanceType": { "Ref": "InstanceType" }, "SecurityGroups": [{ "Ref": "Ec2SecurityGroup" }], "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "VolumeSize": "50" } }, { "DeviceName": "/dev/sdm", "Ebs": { "VolumeSize": "100" } } ] } } }
YAML
EC2Instance: Type: AWS::EC2::Instance Properties: ImageId: '{{resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2}}' KeyName: !Ref KeyName InstanceType: !Ref InstanceType SecurityGroups: - !Ref Ec2SecurityGroup BlockDeviceMappings: - DeviceName:/dev/sda1Ebs: VolumeSize:50- DeviceName:/dev/sdmEbs: VolumeSize:100
Tentukan pemetaan perangkat blok untuk volume penyimpanan instance
JSON
"Ec2Instance" : { "Type" : "AWS::EC2::Instance", "Properties" : { "ImageId" : "{{resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2}}", "KeyName" : { "Ref" : "KeyName" }, "InstanceType": { "Ref": "InstanceType" }, "SecurityGroups" : [{ "Ref" : "Ec2SecurityGroup" }], "BlockDeviceMappings" : [ { "DeviceName" : "/dev/sdc", "VirtualName" : "ephemeral0" } ] } }
YAML
EC2Instance: Type: AWS::EC2::Instance Properties: ImageId: '{{resolve:ssm:/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2}}' KeyName: !Ref KeyName InstanceType: !Ref InstanceType SecurityGroups: - !Ref Ec2SecurityGroup BlockDeviceMappings: - DeviceName:/dev/sdcVirtualName:ephemeral0