Anatomi templat - AWS CloudFormation

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

Anatomi templat

Template adalah file teks berformat JSON atau YAML yang menjelaskan infrastruktur Anda. AWS Contoh berikut menunjukkan struktur AWS CloudFormation template dan bagian-bagiannya.

JSON

Contoh berikut menunjukkan fragmen templat dalam format JSON.

{ "AWSTemplateFormatVersion" : "version date", "Description" : "JSON string", "Metadata" : { template metadata }, "Parameters" : { set of parameters }, "Rules" : { set of rules }, "Mappings" : { set of mappings }, "Conditions" : { set of conditions }, "Transform" : { set of transforms }, "Resources" : { set of resources }, "Outputs" : { set of outputs } }

YAML

Contoh berikut menunjukkan fragmen templat dalam format YMAL.

--- AWSTemplateFormatVersion: "version date" Description: String Metadata: template metadata Parameters: set of parameters Rules: set of rules Mappings: set of mappings Conditions: set of conditions Transform: set of transforms Resources: set of resources Outputs: set of outputs

Bagian templat

Templat mencakup beberapa bagian utama. Bagian Resources adalah satu-satunya bagian yang diperlukan. Beberapa bagian dalam templat dapat dengan urutan apa pun. Namun, ketika Anda membangun templat Anda, itu dapat membantu untuk menggunakan urutan logis yang ditunjukkan dalam daftar berikut karena nilai-nilai dalam satu bagian dapat merujuk ke nilai-nilai dari bagian sebelumnya.

Format Versi (opsional)

Versi AWS CloudFormation template yang sesuai dengan template. Versi format templat tidak sama dengan versi API atau WSDL. Versi format templat dapat berubah secara independen dari versi API dan WSDL.

Deskripsi (opsional)

Sebuah string teks yang menggambarkan templat. Bagian ini harus selalu mengikuti bagian versi format templat.

Metadata (opsional)

Objek yang memberikan informasi tambahan tentang templat.

Parameter (opsional)

Nilai-nilai untuk diteruskan ke templat Anda pada saat waktu aktif (ketika Anda membuat atau memperbarui tumpukan). Anda dapat merujuk ke parameter dari bagian Resources dan Outputs dari templat.

Aturan (opsional)

Memvalidasi parameter atau kombinasi parameter yang diteruskan ke templat selama pembuatan tumpukan atau pembaruan tumpukan.

Pemetaan (opsional)

Pemetaan kunci dan nilai-nilai terkait yang dapat Anda gunakan untuk menentukan nilai parameter bersyarat, mirip dengan tabel pencarian. Anda dapat mencocokkan kunci ke nilai yang sesuai dengan menggunakan fungsi FindInMap intrinsik Fn:: di bagian danResources. Outputs

Kondisi (opsional)

Kondisi yang mengendalikan apakah sumber daya tertentu dibuat atau apakah properti sumber daya tertentu ditetapkan nilai selama pembuatan atau pembaruan tumpukan. Sebagai contoh, Anda dapat secara bersyarat membuat sumber daya yang bergantung pada apakah tumpukan untuk lingkungan produksi atau pengujian.

Transform (opsional)

Untuk aplikasi tanpa server (juga disebut sebagai aplikasi berbasis Lambda), menentukan versi Model Aplikasi AWS Tanpa Server (SAM) yang akan digunakan.AWS Ketika Anda menentukan transformasi, Anda dapat menggunakan sintaks AWS SAM untuk mendeklarasikan sumber daya dalam template Anda. Model mendefinisikan sintaks yang dapat Anda gunakan dan bagaimana itu diproses.

Anda juga dapat menggunakan AWS::Includetransformasi untuk bekerja dengan cuplikan template yang disimpan secara terpisah dari template utama. AWS CloudFormation Anda dapat menyimpan file cuplikan di bucket Amazon S3 dan kemudian menggunakan kembali fungsi di beberapa templat.

Sumber daya (wajib)

Menentukan sumber daya tumpukan dan propertinya, seperti instans Amazon Elastic Compute Cloud atau bucket Amazon Simple Storage Service. Anda dapat merujuk ke sumber daya dalam bagian Resources dan Outputs dari templat.

Output (opsional)

Menjelaskan nilai-nilai yang dikembalikan setiap kali Anda melihat properti tumpukan Anda. Misalnya, Anda dapat mendeklarasikan output untuk nama bucket S3 dan kemudian memanggil aws cloudformation describe-stacks AWS CLI perintah untuk melihat nama.

catatan

Saat membuat template, jangan gunakan duplikat bagian utama, misalnya menggunakan beberapa bagian sumber daya. Meskipun CloudFormation dapat menerima template, itu akan memiliki perilaku yang tidak terdefinisi saat memproses template, dan mungkin salah menyediakan sumber daya, atau mengembalikan kesalahan yang tidak dapat dijelaskan.