Langkah 3: Siapkan lingkungan Anda untuk menjalankan skrip - AWS OpsWorks

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

Langkah 3: Siapkan lingkungan Anda untuk menjalankan skrip

Siapkan lingkungan Anda untuk menjalankan skrip dengan menggunakan perintah berikut.

pipenv install -r requirements.txt pipenv shell
catatan

Saat ini, skrip hanya dapat menyediakan aplikasi single-layer di Application Manager. Misalnya, jika Anda menjalankan skrip dua kali untuk dua lapisan dalam tumpukan yang sama, skrip membuat dua aplikasi berbeda di Manajer Aplikasi.

Setelah mengatur lingkungan Anda, tinjau parameter skrip. Anda dapat melihat opsi yang tersedia untuk skrip migrasi dengan menjalankan python3 stack_exporter.py --help perintah.

Parameter Deskripsi Diperlukan Tipe Nilai default
--layer-id Mengekspor CloudFormation template untuk ID OpsWorks layer ini. Ya string
--region AWS Wilayah untuk OpsWorks tumpukan. Jika OpsWorks Stack Region dan API endpoint Region berbeda, gunakan Stack Region. Ini adalah Wilayah yang sama dengan bagian sumber daya lain dari OpsWorks tumpukan Anda (misalnya, instans dan subnet EC2). Tidak string us-east-1
--provision-application Secara default, skrip menyediakan aplikasi yang diekspor oleh CloudFormation template. Masukkan parameter ini ke dalam skrip dengan nilai FALSE untuk melewati penyediaan template. CloudFormation Tidak Boolean TRUE
--launch-template

Parameter ini menentukan apakah akan menggunakan template peluncuran yang ada, atau membuat template peluncuran baru. Anda dapat membuat template peluncuran baru yang menggunakan properti instance yang direkomendasikan, atau yang menggunakan properti instance yang cocok dengan instance online.

Nilai yang valid meliputi:

  • RECOMMENDED- Menggunakan karakteristik instance dari AMI terbaru untuk OS OpsWorks stack dan ukuran instans c5.large.

  • MATCH_LAST_INSTANCE- Menggunakan karakteristik instans online terbaru yang tersedia.

  • LaunchTemplateID/[LaunchTemplateVersion]- Menggunakan template peluncuran yang ada. Secara opsional, Anda dapat memberikan versi template. Jika Anda tidak menyediakan versi template, skrip menggunakan versi default.

Tidak string RECOMMENDED
--system-updates

Mendefinisikan apakah akan melakukan pembaruan kernel dan paket saat instance boot.

Nilai yang valid meliputi:

  • ALL_UPDATES- Melakukan pembaruan sistem untuk kernel dan paket saat instance boot.

  • NO_UPDATES- Tidak melakukan pembaruan sistem saat instance boot.

  • MATCH_LAYER_SETTINGS- Menggunakan InstallUpdatesOnBoot properti OpsWorks layer atau instance untuk menentukan apakah akan menginstal pembaruan sistem.

Tidak string ALL_UPDATES
--http-username Nama SecureString parameter Systems Manager yang menyimpan nama pengguna yang digunakan untuk mengautentikasi ke arsip HTTP yang berisi buku masak kustom. Tidak string
--http-password Nama SecureString parameter Systems Manager yang menyimpan kata sandi yang digunakan untuk mengautentikasi ke arsip HTTP yang berisi buku masak kustom. Tidak string
--repo-private-key Nama SecureString parameter Systems Manager yang menyimpan kunci SSH yang digunakan untuk mengautentikasi ke repositori yang berisi buku masak kustom. Jika repositori aktif GitHub, Anda harus membuat kunci Ed25519 SSH baru. Jika Anda tidak menghasilkan kunci Ed25519 SSH baru, koneksi ke GitHub repositori gagal. Tidak string
--lb-type

Jenis penyeimbang beban, jika ada, yang akan dibuat saat memigrasikan penyeimbang beban yang ada.

Nilai yang valid meliputi:

  • ALB(Application Load Balancer)

  • Classis(Classic Load Balancer)

  • None(jika Anda tidak ingin membuat penyeimbang beban)

Tidak string ALB
--lb-access-logs-path Jalur ke bucket dan awalan S3 yang ada untuk menyimpan log akses penyeimbang beban. Bucket S3 dan penyeimbang beban harus berada di Wilayah yang sama. Jika Anda tidak memberikan nilai dan nilai --lb-type parameter disetel keNone, skrip akan membuat bucket dan awalan S3 baru. Pastikan ada kebijakan bucket yang sesuai untuk awalan ini. Tidak string
--enable-instance-protection Jika disetel keTRUE, skrip akan membuat kebijakan penghentian kustom (fungsi Lambda) untuk grup Auto Scaling Anda. Instans EC2 dengan protected_instance tag dilindungi dari peristiwa scale-in. Tambahkan protected_instance tag ke setiap instans EC2 yang ingin Anda lindungi dari peristiwa scale-in. Tidak Boolean FALSE
--command-logs-bucket Nama bucket S3 yang ada untuk menyimpan AWS ApplyChefRecipe dan MountEBSVolumes log. Jika Anda tidak memberikan nilai, skrip akan membuat bucket S3 baru. Tidak string aws-opsworks-application-manager-logs-account-id
--custom-json-bucket Nama bucket S3 yang ada untuk menyimpan JSON kustom. Jika Anda tidak memberikan nilai, skrip akan membuat bucket S3 baru. Tidak string aws-apply-chef-application-manager-transition-data-account-id

Catatan:

  • Jika Anda menggunakan GitHub repositori pribadi, Anda harus membuat kunci Ed25519 host baru untuk SSH. Ini karena GitHub mengubah kunci mana yang didukung di SSH dan menghapus protokol Git yang tidak terenkripsi. Untuk informasi selengkapnya tentang kunci Ed25519 host, lihat posting GitHub blog Meningkatkan keamanan protokol Git GitHub. Setelah Anda membuat kunci Ed25519 host baru, buat SecureString parameter Systems Manager untuk kunci SSH dan gunakan nama SecureString parameter sebagai nilai untuk --repo-private-key parameter. Untuk informasi selengkapnya tentang cara membuat SecureString parameter Systems Manager, lihat Membuat SecureString parameter (AWS CLI) atau Membuat parameter Systems Manager (konsol) di Panduan AWS Systems Manager Pengguna.

  • Parameter--http-username, --http-password dan --repo-private-key parameter mengacu pada nama SecureString parameter Systems Manager. Skrip migrasi menggunakan parameter ini saat Anda menjalankan AWS-ApplyChefRecipes dokumen.

  • --http-usernameParameter mengharuskan Anda juga menentukan nilai untuk --http-password parameter tersebut.

  • --http-passwordParameter mengharuskan Anda juga menentukan nilai untuk --http-username parameter tersebut.

  • Jangan menetapkan nilai untuk keduanya --http-password dan--repo-private-key. Berikan nama SecureString parameter Systems Manager dari kunci SSH (--repo-private-key), atau nama pengguna repositori (--http-username) dan kata sandi (). --http-password