Outputs - AWS CloudFormation

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Outputs

OutputsBagian opsional mendeklarasikan nilai output untuk tumpukan. Nilai output ini dapat digunakan dengan berbagai cara:

  • Tangkap detail penting tentang sumber daya Anda — Output adalah cara mudah untuk menangkap informasi penting tentang sumber daya Anda. Misalnya, Anda dapat menampilkan nama bucket S3 untuk tumpukan agar bucket lebih mudah ditemukan. Anda dapat melihat nilai output di tab Output CloudFormation konsol atau dengan menggunakan describe-stacksCLIperintah.

  • Referensi cross-stack — Anda dapat mengimpor nilai output ke tumpukan lain untuk membuat referensi antar tumpukan. Ini sangat membantu ketika Anda perlu berbagi sumber daya atau konfigurasi di beberapa tumpukan.

penting

CloudFormation tidak menyunting atau mengaburkan informasi apa pun yang Anda sertakan di bagian ini. Outputs Kami sangat merekomendasikan Anda untuk tidak menggunakan bagian ini untuk menampilkan informasi sensitif, seperti kata sandi atau rahasia.

Nilai output tersedia setelah operasi tumpukan selesai. Nilai keluaran tumpukan tidak tersedia saat status tumpukan berada di salah satu IN_PROGRESS status. Kami tidak merekomendasikan membuat dependensi antara waktu aktif layanan dan nilai output tumpukan karena nilai output mungkin tidak tersedia setiap saat.

Sintaks

Bagian Outputs terdiri dari nama kunci Outputs. Anda dapat mendeklarasikan maksimum 200 output dalam sebuah templat.

Contoh berikut menunjukkan struktur bagian Outputs.

JSON

Gunakan tanda kurung untuk menutup seluruh deklarasi output. Membatasi beberapa output dengan koma.

"Outputs" : { "OutputLogicalID" : { "Description" : "Information about the value", "Value" : "Value to return", "Export" : { "Name" : "Name of resource to export" } } }

YAML

Outputs: OutputLogicalID: Description: Information about the value Value: Value to return Export: Name: Name of resource to export

Bidang output

Bagian Outputs dapat mencakup bidang berikut.

Logical ID (juga disebut nama logis)

Sebuah pengidentifikasi untuk output saat ini. ID logis harus berupa alfanumerik (a–z, A–Z, 0–9) dan unik dalam templat.

Description(opsional)

Jenis String yang menjelaskan nilai output. Nilai untuk deklarasi deskripsi harus berupa string literal yang panjangnya antara 0 dan 1024 byte. Anda tidak dapat menggunakan parameter atau fungsi untuk menentukan deskripsi.

Value(Diperlukan)

Nilai properti yang dikembalikan oleh describe-stacksperintah. Nilai output dapat mencakup literal, referensi parameter, parameter semu, nilai pemetaan, atau fungsi intrinsik.

Export(opsional)

Nama output sumber daya yang akan diekspor untuk Referensi lintas tumpukan.

Anda dapat menggunakan fungsi intrinsik untuk menyesuaikan nilai Name ekspor.

Untuk informasi selengkapnya, lihat Dapatkan output yang diekspor dari tumpukan yang diterapkan CloudFormation.

Untuk mengasosiasikan syarat dengan output, tentukan syarat di bagian Conditions dari templat.

Contoh

Contoh berikut menggambarkan cara kerja output tumpukan.

Output tumpukan

Dalam contoh berikut, output bernama BackupLoadBalancerDNSName mengembalikan DNS nama untuk sumber daya dengan ID logis BackupLoadBalancer hanya ketika CreateProdResources kondisi benar. Output bernama InstanceID mengembalikan ID dari EC2 contoh dengan ID logisEC2Instance.

JSON

"Outputs" : { "BackupLoadBalancerDNSName" : { "Description": "The DNSName of the backup load balancer", "Value" : { "Fn::GetAtt" : [ "BackupLoadBalancer", "DNSName" ]}, "Condition" : "CreateProdResources" }, "InstanceID" : { "Description": "The Instance ID", "Value" : { "Ref" : "EC2Instance" } } }

YAML

Outputs: BackupLoadBalancerDNSName: Description: The DNSName of the backup load balancer Value: !GetAtt BackupLoadBalancer.DNSName Condition: CreateProdResources InstanceID: Description: The Instance ID Value: !Ref EC2Instance

Sesuaikan nama ekspor menggunakan Fn::Sub

Dalam contoh berikut, output bernama StackVPC mengembalikan ID dari aVPC, dan kemudian mengekspor nilai untuk referensi cross-stack dengan nama VPCID ditambahkan ke nama tumpukan.

JSON

"Outputs" : { "StackVPC" : { "Description" : "The ID of the VPC", "Value" : { "Ref" : "MyVPC" }, "Export" : { "Name" : {"Fn::Sub": "${AWS::StackName}-VPCID" } } } }

YAML

Outputs: StackVPC: Description: The ID of the VPC Value: !Ref MyVPC Export: Name: !Sub "${AWS::StackName}-VPCID"

Untuk informasi selengkapnya tentang fungsi Fn::Sub, lihat Fn::Sub.

Sesuaikan nama ekspor menggunakan Fn::Join

Anda juga dapat menggunakan Fn::Join fungsi untuk membangun nilai berdasarkan parameter, atribut sumber daya, dan string lainnya.

Contoh berikut menggunakan Fn::Join fungsi untuk menyesuaikan nama ekspor alih-alih Fn::Sub fungsi. Fn::JoinFungsi contoh menggabungkan nama tumpukan dengan nama VPCID menggunakan titik dua sebagai pemisah.

JSON

"Outputs" : { "StackVPC" : { "Description" : "The ID of the VPC", "Value" : { "Ref" : "MyVPC" }, "Export" : { "Name" : { "Fn::Join" : [ ":", [ { "Ref" : "AWS::StackName" }, "VPCID" ] ] } } } }

YAML

Outputs: StackVPC: Description: The ID of the VPC Value: !Ref MyVPC Export: Name: !Join [ ":", [ !Ref "AWS::StackName", VPCID ] ]

Untuk informasi selengkapnya tentang fungsi Fn::Join, lihat Fn::Join.

Kembalikan yang URL dibangun menggunakan Fn::Join

Dalam contoh berikut untuk template yang membuat WordPress situs, InstallURL adalah string yang dikembalikan oleh panggilan Fn::Join fungsi yang menggabungkanhttp://, DNS nama sumber dayaElasticLoadBalancer, dan. /wp-admin/install.php Nilai output akan serupa dengan berikut ini:

http://mywptests-elasticl-1gb51l6sl8y5v-206169572.aws-region.elb.amazonaws.com/wp-admin/install.php

JSON

{ "Outputs": { "InstallURL": { "Value": { "Fn::Join": [ "", [ "http://", { "Fn::GetAtt": [ "ElasticLoadBalancer", "DNSName" ] }, "/wp-admin/install.php" ] ] }, "Description": "Installation URL of the WordPress website" } } }

YAML

Outputs: InstallURL: Value: !Join - '' - - 'http://' - !GetAtt - ElasticLoadBalancer - DNSName - /wp-admin/install.php Description: Installation URL of the WordPress website

Untuk informasi selengkapnya tentang fungsi Fn::Join, lihat Fn::Join.