View a markdown version of this page

Melakukan blue/green pembaruan untuk lingkungan komputasi - AWS Batch

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

Melakukan blue/green pembaruan untuk lingkungan komputasi

Pem blue/green baruan adalah strategi pembaruan yang mengurangi waktu henti dan risiko dengan menciptakan lingkungan komputasi baru (hijau) di samping lingkungan komputasi Anda yang ada (biru). Pendekatan ini memungkinkan Anda untuk secara bertahap mengalihkan beban kerja ke lingkungan baru sambil menjaga lingkungan yang ada tetap operasional. Blue/green pembaruan menyediakan jalur pembaruan teraman dan bekerja dengan jenis peran layanan atau strategi alokasi apa pun.

Gambaran umum

Blue/green pembaruan menawarkan beberapa keuntungan yang membuatnya ideal untuk lingkungan produksi. Mereka menyediakan nol downtime dengan menjaga beban kerja Anda berjalan terus menerus selama proses pembaruan. Pendekatan ini memungkinkan kemampuan rollback yang mudah, memungkinkan Anda untuk dengan cepat kembali ke lingkungan asli jika masalah muncul. Anda dapat menerapkan strategi transisi bertahap, memverifikasi kinerja lingkungan baru sebelum sepenuhnya mengalihkan beban kerja produksi Anda. Metode ini juga memberikan mitigasi risiko yang sangat baik karena lingkungan asli tetap tidak berubah dan operasional sampai Anda memilih untuk menghapusnya.

Ketika blue/green pembaruan diperlukan

Anda harus menggunakan blue/green pembaruan dalam situasi berikut:

  • Ketika lingkungan komputasi Anda menggunakan BEST_FIT strategi alokasi (tidak mendukung pembaruan infrastruktur).

  • Ketika lingkungan komputasi Anda tidak menggunakan peran terkait AWSServiceRoleForBatch layanan.

  • Ketika Anda perlu melakukan transisi antara jenis peran layanan yang berbeda.

Kami merekomendasikan blue/green pembaruan untuk lingkungan produksi di mana waktu henti nol sangat penting untuk beban kerja Anda. Pendekatan ini bekerja dengan baik ketika Anda perlu menguji konfigurasi baru sebelum melakukan transisi beban kerja produksi, memastikan bahwa perubahan memenuhi persyaratan kinerja dan keandalan Anda. Pilih blue/green pembaruan ketika kemampuan rollback cepat penting untuk operasi Anda, terutama jika Anda memperbarui AMI khusus dengan perubahan signifikan. Metode ini juga ideal ketika Anda ingin memvalidasi karakteristik kinerja dan perilaku sebelum sepenuhnya melakukan perubahan, memberikan kepercayaan pada proses pembaruan Anda.

Prasyarat

Sebelum melakukan blue/green pembaruan, pastikan Anda memiliki:

  • Izin IAM yang sesuai untuk membuat dan mengelola lingkungan komputasi.

  • Akses untuk melihat dan memodifikasi pengaturan antrian pekerjaan.

  • Strategi coba ulang pekerjaan dikonfigurasi untuk definisi pekerjaan Anda untuk menangani potensi kegagalan selama transisi. Untuk informasi selengkapnya, lihat Percobaan kembali tugas secara otomatis.

  • ID AMI untuk lingkungan komputasi baru. Ini bisa berupa:

    • Versi terbaru yang disetujui dari AMI yang dioptimalkan Amazon ECS (digunakan secara default).

    • AMI khusus yang memenuhi spesifikasi AMI instans container Amazon ECS. Saat menggunakan AMI khusus, Anda dapat menentukannya dengan salah satu cara berikut:

      • Menggunakan bidang penggantian ID Gambar dalam konfigurasi EC2.

      • Menentukannya dalam template peluncuran.

      Untuk informasi selengkapnya tentang membuat AMI khusus, lihatTutorial: Membuat sumber daya komputasi AMI.

Sebelum membuat lingkungan baru, Anda perlu merekam konfigurasi lingkungan komputasi yang ada. Anda dapat melakukan ini menggunakan Konsol Manajemen AWS atau AWS CLI.

catatan

Prosedur berikut merinci cara melakukan blue/green pembaruan yang hanya mengubah AMI. Anda dapat memperbarui pengaturan lain untuk lingkungan baru.

penting

Saat Anda menghapus lingkungan komputasi lama (biru), semua pekerjaan yang sedang berjalan pada instans tersebut akan gagal karena instans akan dihentikan. Konfigurasikan strategi coba ulang pekerjaan dalam definisi pekerjaan Anda untuk menangani kegagalan ini secara otomatis. Untuk informasi selengkapnya, lihat Percobaan kembali tugas secara otomatis.

Setelah Anda yakin dengan lingkungan baru:

  1. Edit antrian pekerjaan untuk menghapus lingkungan komputasi lama.

  2. Tunggu pekerjaan yang sedang berjalan di lingkungan lama selesai.

  3. Hapus lingkungan komputasi lama.

Performing blue/green updates using the Konsol Manajemen AWS
  1. Mengkloning lingkungan komputasi Anda saat ini

    1. Buka AWS Batch konsol di https://console.aws.amazon.com/batch/.

    2. Pilih opsi di sebelah lingkungan komputasi yang ada. Anda harus memilih lingkungan komputasi sebelum opsi di menu T indakan tersedia.

    3. Pilih Actions dan kemudian Clone.

    4. Untuk Nama, masukkan nama unik untuk lingkungan komputasi baru Anda.

    5. Pilih Berikutnya.

    6. Di bagian Konfigurasi Instance, perbarui pengaturan AMI:

      1. Perluas Additional configuration (Konfigurasi tambahan).

      2. Untuk konfigurasi EC2, tentukan jenis AMI baru di Jenis gambar dan ID AMI di bidang peng gantian ID Gambar.

    7. Pilih Berikutnya.

    8. Untuk konfigurasi jaringan pilih Ber ikutnya.

    9. Tinjau pengaturan lain yang secara otomatis disalin dari lingkungan Anda yang ada.

    10. Pilih Buat lingkungan komputasi.

    11. Tunggu status lingkungan komputasi baru menjadiVALID.

  2. Mengubah urutan antrian pekerjaan

    1. Di panel navigasi, pilih Antrian pekerjaan.

    2. Pilih antrian pekerjaan yang terkait dengan lingkungan komputasi yang ada.

    3. Pilih Edit.

    4. Di bawah Lingkungan Compute Terhubung, tambahkan lingkungan komputasi baru:

      • Tambahkan lingkungan komputasi baru dengan nomor pesanan yang lebih tinggi daripada lingkungan yang ada untuk transisi beban kerja.

      • Setelah Anda memverifikasi bahwa lingkungan baru berfungsi dengan benar, Anda dapat menjadikannya lingkungan utama dengan memberikan nomor pesanan yang lebih rendah.

    5. Pilih Per barui antrean pekerjaan.

  3. Bersihkan

    1. Pantau eksekusi pekerjaan di lingkungan baru untuk memastikan semuanya berfungsi seperti yang diharapkan.

    2. Setelah Anda yakin dengan lingkungan baru:

      1. Edit antrian pekerjaan untuk menghapus lingkungan komputasi lama.

      2. Tunggu pekerjaan yang sedang berjalan di lingkungan lama selesai.

      3. Hapus lingkungan komputasi lama.

Performing blue/green updates using the AWS CLI
  1. Untuk mendapatkan konfigurasi menggunakan AWS CLI, gunakan perintah berikut:

    aws batch describe-compute-environments \ --compute-environments your-compute-environment-name

    Simpan output untuk referensi saat membuat lingkungan baru.

  2. Buat lingkungan komputasi baru menggunakan konfigurasi dari lingkungan yang ada, tetapi dengan AMI baru. Berikut adalah contoh struktur perintah:

    Ganti nilai contoh dengan konfigurasi aktual Anda dari langkah sebelumnya:

    cat <<EOF > ./blue-green-compute-environment.json { "computeEnvironmentName": "your-new-compute-environment-name", "type": "MANAGED", "state": "ENABLED", "computeResources": { "instanceRole": "arn:aws:iam::012345678901:instance-profile/ecsInstanceRole", "type": "EC2", "minvCpus": 2, "desiredvCpus": 2, "maxvCpus": 256, "instanceTypes": [ "optimal" ], "allocationStrategy": "BEST_FIT_PROGRESSIVE", "ec2Configuration": [ { "imageType": "ECS_AL2023", "imageIdOverride": "ami-0abcdef1234567890" } ], "subnets": [, "subnet-0abcdef1234567890" ], "securityGroupIds": [ "sg-0abcdef1234567890" ] } } EOF
    $ aws batch create-compute-environment --cli-input-json file://./blue-green-compute-environment.json
  3. Tunggu lingkungan baru tersedia:

    aws batch describe-compute-environments \ --compute-environments your-new-compute-environment-name \ --query 'computeEnvironments[].status'
  4. Tambahkan lingkungan komputasi baru ke antrian pekerjaan Anda:

    aws batch update-job-queue \ --job-queue your-job-queue \ --compute-environment-order order=1,computeEnvironment=your-existing-environment \ order=2,computeEnvironment=your-new-compute-environment-name
  5. Setelah diverifikasi, perbarui lagi untuk menjadikan lingkungan baru utama:

    aws batch update-job-queue \ --job-queue your-job-queue \ --compute-environment-order order=1,computeEnvironment=your-new-compute-environment-name

    Setelah semua pekerjaan selesai di lingkungan lama, nonaktifkan dan kemudian hapus:

    aws batch update-compute-environment \ --compute-environment your-existing-environment \ --state DISABLED
    aws batch delete-compute-environment \ --compute-environment your-existing-environment