Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
cfn-init
Deskripsi
Skrip pembantu cfn-init membaca metadata templat dari kunci AWS::CloudFormation::Init
dan bertindak sesuai dengan:
-
Ambil dan parse metadata dari CloudFormation
-
Menginstal paket
-
Menulis file ke disk
-
Enable/disable and start/stoplayanan
catatan
Jika Anda menggunakan cfn-init untuk memperbarui file yang ada, itu membuat salinan cadangan dari file asli di direktori yang sama dengan ekstensi .bak. Misalnya, jika Anda memperbarui /
, tindakan tersebut menghasilkan dua file: path
/to
/file_name
/
berisi konten file asli dan path
/to
/file_name
.bak/
berisi konten yang diperbarui.path
/to
/file_name
Untuk informasi tentang metadata templat, lihat AWS::CloudFormation::Init.
catatan
cfn-init tidak memerlukan kredensil, jadi Anda tidak perlu menggunakan--access-key
,,--secret-key
, --role
atau opsi. --credential-file
Namun, jika tidak ada kredensil yang ditentukan, CloudFormation periksa keanggotaan tumpukan dan membatasi ruang lingkup panggilan ke tumpukan tempat instance tersebut berada.
Sintaksis
cfn-init --stack|-s
stack.name.or.id
\ --resource|-rlogical.resource.id
\ --regionregion
\ --access-keyaccess.key
\ --secret-keysecret.key
\ --rolerolename
\ --credential-file|-fcredential.file
\ --configsets|-cconfig.sets
\ --url|-uservice.url
\ --http-proxyHTTP.proxy
\ --https-proxyHTTPS.proxy
\ --verbose|-v
Opsi
Nama | Deskripsi | Diperlukan |
---|---|---|
|
Nama tumpukan atau ID tumpukan. Tipe: String Default: Tidak Ada Contoh: |
Ya |
|
ID sumber daya logis dari sumber daya yang berisi metadata. Tipe: String Contoh: |
Ya |
|
Titik akhir CloudFormation regional untuk digunakan. Tipe: String Default: Contoh: |
Tidak |
|
AWS kunci akses untuk akun dengan izin untuk Tipe: String |
Tidak |
|
AWS kunci akses rahasia yang sesuai dengan kunci AWS akses yang ditentukan. Tipe: String |
Tidak |
|
Nama IAM peran yang terkait dengan instance. Tipe: String Syarat: Parameter file kredensial menggantikan parameter ini. |
Tidak |
|
File yang berisi secret access key dan access key. Parameter file kredensial menggantikan parameter --peran, --access-key, dan -secret key. Tipe: String |
Tidak |
|
Daftar konfigurasi yang dipisahkan koma untuk dijalankan (secara berurutan). Tipe: String Default: |
Tidak |
|
CloudFormation Endpoint yang akan digunakan. Tipe: String |
Tidak |
|
Sebuah HTTP proxy (non-SSL). Gunakan format berikut: Tipe: String |
Tidak |
|
Sebuah HTTPS proxy. Gunakan format berikut: Tipe: String |
Tidak |
|
Output verbose. Ini berguna untuk men-debug kasus di mana cfn-init gagal untuk menginisialisasi. catatanUntuk men-debug peristiwa inisialisasi, Anda harus mengaktifkan DisableRollback . Anda dapat melakukan ini dengan menggunakan CloudFormation konsol, memilih Tampilkan Opsi Lanjutan, dan kemudian mengatur Rollback pada kegagalan ke No. Anda kemudian dapat SSH masuk ke konsol dan membaca log at /var/log/cfn -init.log. |
Tidak |
|
Menampilkan pesan bantuan dan keluar. |
Tidak |
Contoh
Contoh Amazon Linux
Cuplikan berikut menunjukkan UserData
properti EC2 instance, yang menjalankan InstallAndRun
configset yang terkait dengan sumber daya. WebServerInstance
Untuk contoh templat lengkap, lihat Menyebarkan aplikasi di Amazon EC2.
Untuk menyertakan versi terbaru, tambahkan yum install -y aws-cfn-bootstrap
ke fileUserData
.
JSON
UserData
properti menggunakan fungsi Fn::Join
intrinsik.
{ "UserData": { "Fn::Base64": { "Fn::Join": [ "", [ "#!/bin/bash -xe\n", "", "yum install -y aws-cfn-bootstrap", "/opt/aws/bin/cfn-init -v ", " --stack ", { "Ref": "AWS::StackName" }, " --resource WebServerInstance ", " --configsets InstallAndRun ", " --region ", { "Ref": "AWS::Region" }, "\n" ] ] } } }
YAML
UserData
properti menggunakan fungsi Fn::Join
intrinsik.
UserData: !Base64 'Fn::Join': - '' - - | #!/bin/bash -xe - '' - yum install -y aws-cfn-bootstrap - '/opt/aws/bin/cfn-init -v ' - ' --stack ' - !Ref 'AWS::StackName' - ' --resource WebServerInstance ' - ' --configsets InstallAndRun ' - ' --region ' - !Ref 'AWS::Region' - |+
JSON
UserData
properti menggunakan fungsi Fn::Sub
intrinsik.
{ "UserData": { "Fn::Base64": { "Fn::Sub": [ "#!/bin/bash -x\n# Install the files and packages from the metadata\n/opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region}\n\n# Signal the status from cfn-init\n/opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region}\n", {} ] } } }
YAML
UserData
properti menggunakan fungsi Fn::Sub
intrinsik.
UserData: !Base64 'Fn::Sub': - > #!/bin/bash -x # Install the files and packages from the metadata /opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region} # Signal the status from cfn-init /opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource MyInstance --region ${AWS::Region} - {}