Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial: Buat pipeline dengan AWS CloudFormation StackSets tindakan penyebaran
Dalam tutorial ini, Anda menggunakan AWS CodePipeline konsol untuk membuat pipeline dengan tindakan penerapan untuk membuat kumpulan tumpukan dan membuat instance tumpukan. Saat pipeline berjalan, template membuat kumpulan tumpukan dan juga membuat dan memperbarui instance tempat kumpulan tumpukan digunakan.
penting
Sebagai bagian dari pembuatan pipeline, bucket artefak S3 yang disediakan oleh pelanggan akan digunakan oleh CodePipeline untuk artefak. (Ini berbeda dari bucket yang digunakan untuk aksi sumber S3.) Jika bucket artefak S3 berada di akun yang berbeda dari akun untuk pipeline Anda, pastikan bucket artefak S3 dimiliki oleh Akun AWS itu aman dan dapat diandalkan.
Ada dua cara untuk mengelola izin untuk kumpulan tumpukan: peran IAM yang dikelola sendiri dan AWS yang dikelola. Tutorial ini memberikan contoh dengan izin yang dikelola sendiri.
Untuk menggunakannya StackSets secara efektif CodePipeline, Anda harus memiliki pemahaman yang jelas tentang konsep di balik CloudFormation StackSets dan cara kerjanya. Lihat StackSets konsep di Panduan AWS CloudFormation Pengguna.
Topik
Prasyarat
Untuk operasi kumpulan tumpukan, Anda menggunakan dua akun berbeda: akun administrasi dan akun target. Anda membuat kumpulan tumpukan di akun administrator. Anda membuat tumpukan individu yang termasuk dalam kumpulan tumpukan di akun target.
Untuk membuat peran administrator dengan akun administrator Anda
-
Ikuti petunjuk di Menyi apkan izin dasar untuk operasi kumpulan tumpukan. Peran Anda harus diberi nama
AWSCloudFormationStackSetAdministrationRole.
Untuk membuat peran layanan di akun target
-
Buat peran layanan di akun target yang mempercayai akun administrator. Ikuti petunjuk di Menyi apkan izin dasar untuk operasi kumpulan tumpukan. Peran Anda harus diberi nama
AWSCloudFormationStackSetExecutionRole.
Langkah 1: Unggah sampel AWS CloudFormation template dan file parameter
Buat bucket sumber untuk template set tumpukan dan file parameter Anda. Unduh file AWS CloudFormation template sampel, siapkan file parameter, lalu zip file sebelum diunggah ke bucket sumber S3 Anda.
catatan
Pastikan untuk ZIP file sumber sebelum Anda mengunggah ke bucket sumber S3 Anda, meskipun satu-satunya file sumber adalah template.
Untuk membuat bucket sumber S3
Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di https://console.aws.amazon.com/s3/
. -
Pilih Buat bucket.
-
Di Nama Bucket, masukkan nama untuk bucket Anda.
Di Wilayah, pilih Wilayah tempat Anda ingin membuat pipeline Anda. Pilih Buat bucket.
-
Setelah bucket dibuat, banner sukses ditampilkan. Pilih Pergi ke detail bucket.
-
Pada tab Properties, pilih Versioning. Pilih Aktifkan pembuatan versi, lalu pilih S impan.
Untuk membuat AWS CloudFormation berkas template
-
Unduh file template contoh berikut untuk menghasilkan CloudTrail konfigurasi untuk kumpulan tumpukan:https://s3.amazonaws.com/cloudformation-stackset-sample-templates-us-east-1/EnableAWSCloudtrail.yml
. -
Simpan file sebagai
template.yml.
Untuk membuat file parameters.txt
-
Buat file dengan parameter untuk penerapan Anda. Parameter adalah nilai yang ingin Anda perbarui di tumpukan Anda saat runtime. File contoh berikut memperbarui parameter template untuk kumpulan tumpukan Anda untuk mengaktifkan validasi logging dan peristiwa global.
[ { "ParameterKey": "EnableLogFileValidation", "ParameterValue": "true" }, { "ParameterKey": "IncludeGlobalEvents", "ParameterValue": "true" } ] -
Simpan file sebagai
parameters.txt.
Untuk membuat file accounts.txt
-
Buat file dengan akun tempat Anda ingin membuat instance, seperti yang ditunjukkan dalam file contoh berikut.
[ "111111222222","333333444444" ] -
Simpan file sebagai
accounts.txt.
Untuk membuat dan mengunggah file sumber
-
Gabungkan file menjadi satu file ZIP. File Anda akan terlihat seperti ini di file ZIP Anda.
template.yml parameters.txt accounts.txt -
Unggah file ZIP ke bucket S3 Anda. File ini adalah artefak sumber yang dibuat oleh wizard Create Pipeline untuk tindakan penerapan Anda di CodePipeline.
Langkah 2: Buat alur Anda
Dalam bagian ini, Anda membuat alur dengan tindakan berikut:
-
Tahap sumber dengan tindakan sumber S3 di mana artefak sumber adalah file template Anda dan file sumber pendukung apa pun.
-
Tahap penerapan dengan tindakan CloudFormation penerapan set tumpukan yang membuat kumpulan tumpukan.
-
Tahap penerapan dengan tindakan CloudFormation penerapan instans tumpukan yang membuat tumpukan dan instans dalam akun target.
Untuk membuat pipeline dengan CloudFormationStackSet tindakan
Masuk ke Konsol Manajemen AWS dan buka CodePipeline konsol di http://console.aws.amazon.com/codesuite/codepipeline/home
. -
Pada halaman Selamat Datang, halaman Memulai, atau halaman Alur, pilih Buat alur.
-
Pada Langkah 1: Pilih halaman opsi pembuatan, di bawah Opsi pembuatan, pilih opsi Build custom pipeline. Pilih Berikutnya.
-
Di Langkah 2: Pilih pengaturan pipa, di Nama Pipeline, masukkan
MyStackSetsPipeline. -
Di tipe Pipeline, pilih V1 untuk keperluan tutorial ini. Anda juga dapat memilih V2; Namun, perhatikan bahwa jenis pipa berbeda dalam karakteristik dan harga. Untuk informasi selengkapnya, lihat Jenis pipa.
-
Di Peran layanan, pilih Peran layanan baru untuk memungkinkan CodePipeline untuk membuat peran layanan di IAM.
-
Di toko artefak, tinggalkan default.
catatan
Ini bukan bucket sumber untuk kode sumber Anda. Ini adalah penyimpanan artifact untuk alur Anda. Penyimpanan artifact terpisah, seperti bucket S3, diperlukan untuk setiap alur. Saat Anda membuat atau mengedit pipeline, Anda harus memiliki bucket artefak di Wilayah pipa dan satu bucket artefak per Wil AWS ayah tempat Anda menjalankan tindakan.
Untuk informasi selengkapnya, lihat Artefak input dan output dan CodePipeline referensi struktur pipa.
Pilih Berikutnya.
-
Pada Langkah 3: Tambahkan halaman tahap sumber, di Penye dia Sumber, pilih Amazon S3.
-
Di Bucket, masukkan bucket sumber S3 yang Anda buat untuk tutorial ini, seperti
BucketName. Di kunci objek S3, masukkan jalur file dan nama file untuk file ZIP Anda, sepertiMyFiles.zip. -
Pilih Berikutnya.
-
Pada Langkah 4: Tambahkan tahap build, pilih Lewati tahap build, lalu terima pesan peringatan dengan memilih Le wati lagi.
Pilih Berikutnya.
-
Pada Langkah 5: Tambahkan tahap pengujian, pilih Lewati tahap pengujian, lalu terima pesan peringatan dengan memilih Le wati lagi.
Pilih Berikutnya.
-
Pada Langkah 6: Tambahkan tahap penerapan:
-
Di penyedia Deplo y, pilih AWS CloudFormation Stack Set.
-
Di nama set tumpukan, masukkan nama untuk kumpulan tumpukan. Ini adalah nama kumpulan tumpukan yang dibuat template.
catatan
Catat nama set tumpukan Anda. Anda akan menggunakannya saat menambahkan tindakan StackSets penerapan kedua ke pipeline Anda.
-
Di jalur Template, masukkan nama artefak dan jalur file tempat Anda mengunggah file template Anda. Misalnya, masukkan yang berikut menggunakan nama
SourceArtifactartefak sumber default.SourceArtifact::template.yml -
Di Target pener apan, masukkan nama artefak dan jalur file tempat Anda mengunggah file akun Anda. Misalnya, masukkan yang berikut menggunakan nama
SourceArtifactartefak sumber default.SourceArtifact::accounts.txt -
Di Target pener Wilayah AWS apan, masukkan satu Wilayah untuk penerapan instans tumpukan awal Anda, seperti
us-east-1. -
Perluas opsi Deployment. Di Param eter, masukkan nama artefak dan jalur file tempat Anda mengunggah file parameter Anda. Misalnya, masukkan yang berikut menggunakan nama
SourceArtifactartefak sumber default.SourceArtifact::parameters.txtUntuk memasukkan parameter sebagai input literal daripada jalur file, masukkan yang berikut ini:
ParameterKey=EnableLogFileValidation,ParameterValue=true ParameterKey=IncludeGlobalEvents,ParameterValue=true -
Di Cap abilities, pilih CAPABILITY_IAM dan CAPABILITY_NAMED_IAM.
-
Dalam model Izin, pilih SELF_MANAGED.
-
Di Persentase toleransi kegagalan, masukkan
20. -
Di Per sentase serentak maksimum, masukkan
25. -
Pilih Berikutnya.
-
Pada Langkah 7: Tinjau, pilih Buat pipeline. Tampilan pipa Anda.
-
Biarkan pipeline Anda berjalan.
-
Langkah 3: Lihat penerapan awal
Lihat sumber daya dan status untuk penerapan awal Anda. Setelah memverifikasi penerapan berhasil membuat kumpulan tumpukan Anda, Anda dapat menambahkan tindakan kedua ke tahap Deplo y Anda.
Untuk melihat sumber daya
Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/
. -
Di bawah Pipelines, pilih pipeline Anda dan pilih View. Diagram menunjukkan sumber pipeline dan tahapan penerapan Anda.
-
Pilih CloudFormation tindakan pada CloudFormationStackSet tindakan di pipeline Anda. Template, sumber daya, dan acara untuk kumpulan tumpukan Anda ditampilkan di CloudFormation konsol.
-
Di panel navigasi kiri, pilih StackSets. Dalam daftar, pilih set tumpukan baru.
-
Pilih tab Stack instance. Verifikasi bahwa satu instans stack untuk setiap akun yang Anda berikan dibuat di Wilayah us-east-1. Verifikasi bahwa status untuk setiap instans tumpukan adalah
CURRENT.
Langkah 4: Tambahkan CloudFormationStackInstances tindakan
Buat tindakan berikutnya di pipeline Anda yang akan memungkinkan CloudFormation StackSets untuk membuat instance tumpukan yang tersisa.
Untuk membuat tindakan berikutnya dalam pipeline Anda
-
Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/
. Di bawah Pipelines, pilih pipeline Anda dan pilih View. Diagram menunjukkan sumber pipeline dan tahapan penerapan Anda.
-
Pilih untuk mengedit pipeline. Pipeline ditampilkan dalam mode Edit.
-
Pada tahap De ploy, pilih Edit.
-
Di bawah tindakan AWS CloudFormation penerapan Stack Set, pilih Tambahkan grup tindakan.
-
Pada halaman Edit tindakan, tambahkan detail tindakan:
-
Di Nama tindakan, masukkan nama untuk tindakan.
-
Di penyedia tindakan, pilih AWS CloudFormation Stack Instances.
-
Di bawah Artefak masukan, pilih SourceArtifact.
-
Di nama set tumpukan, masukkan nama untuk kumpulan tumpukan. Ini adalah nama kumpulan tumpukan yang Anda berikan dalam tindakan pertama.
-
Di Target pener apan, masukkan nama artefak dan jalur file tempat Anda mengunggah file akun Anda. Misalnya, masukkan yang berikut menggunakan nama
SourceArtifactartefak sumber default.SourceArtifact::accounts.txt -
Di Target pener Wilayah AWS apan, masukkan Wilayah untuk penerapan instans tumpukan yang tersisa, seperti
us-east-2daneu-central-1sebagai berikut:us-east2, eu-central-1 -
Di Persentase toleransi kegagalan, masukkan
20. -
Di Per sentase serentak maksimum, masukkan
25. -
Pilih Simpan.
-
Lepaskan perubahan secara manual. Pipeline yang diperbarui ditampilkan dengan dua tindakan di tahap Deploy.
-
Langkah 5: Lihat sumber daya kumpulan tumpukan untuk penerapan Anda
Anda dapat melihat sumber daya dan status untuk penerapan kumpulan tumpukan Anda.
Untuk melihat sumber daya
Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/
. -
Di bawah Pipelines, pilih pipeline Anda dan kemudian pilih View. Diagram menunjukkan sumber pipeline dan tahapan penerapan Anda.
-
Pilih CloudFormation tindakan pada
AWS CloudFormation Stack Instancestindakan di pipeline Anda. Template, sumber daya, dan acara untuk kumpulan tumpukan Anda ditampilkan di CloudFormation konsol. -
Di panel navigasi kiri, pilih StackSets. Dalam daftar, pilih set tumpukan Anda.
-
Pilih tab Stack instance. Verifikasi bahwa semua instans tumpukan yang tersisa untuk setiap akun yang Anda berikan dibuat atau diperbarui di Wilayah yang diharapkan. Verifikasi bahwa status untuk setiap instans tumpukan adalah
CURRENT.
Langkah 6: Buat pembaruan untuk kumpulan tumpukan Anda
Buat pembaruan pada kumpulan tumpukan Anda dan terapkan pembaruan ke instans. Dalam contoh ini, Anda juga membuat perubahan pada target penerapan yang ingin Anda tetapkan untuk pembaruan. Instans yang bukan bagian dari pembaruan pindah ke status usang.
Buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/
. -
Di bawah Pipelines, pilih pipeline Anda dan kemudian pilih Edit. Pada tahap De ploy, pilih Edit.
-
Pilih untuk mengedit tindakan AWS CloudFormation Stack Set di pipeline Anda. Di Deskripsi, tulis deskripsi yang ada dengan deskripsi baru untuk kumpulan tumpukan.
-
Pilih untuk mengedit tindakan AWS CloudFormation Stack Instances di pipeline Anda. Di target Deployment Wilayah AWS, hapus
us-east-2nilai yang dimasukkan saat tindakan dibuat. -
Simpan perubahan. Pilih R ilis perubahan untuk menjalankan pipeline Anda.
-
Buka tindakan Anda di CloudFormation. Pilih tab StackSet info. Dalam StackSet deskripsi, verifikasi bahwa deskripsi baru ditampilkan.
-
Pilih tab Stack instance. Di bawah Status, verifikasi bahwa status untuk instans tumpukan di us-east-2 adalah.
OUTDATED