View a markdown version of this page

Perbarui versi penjadwal dari AWS Cluster PCS - AWS PCS

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

Perbarui versi penjadwal dari AWS Cluster PCS

Gunakan langkah-langkah ini untuk memperbarui versi penjadwal pada cluster Anda. Ada dua opsi tergantung pada apakah Anda dapat mentolerir gangguan pekerjaan. Untuk informasi selengkapnya tentang memilih di antara opsi, lihatMemperbarui versi penjadwal cluster di AWS PCS.

catatan

Sebaiknya Anda menguji AMI baru dan prosedur pembaruan pada cluster non-produksi sebelum menerapkan perubahan ke lingkungan produksi Anda.

Opsi 1: Pembaruan bergulir

Pengontrol diperbarui saat armada terus berjalan. Node yang ada terus menggunakan versi Slurm sebelumnya sampai mereka dikeringkan dan diganti. Node baru diluncurkan setelah pembaruan menggunakan versi target. Pekerjaan yang sedang berjalan tidak terganggu.

Kapan menggunakan:

  • Pengontrol cluster ada di Slurm versi 24.05 atau yang lebih baru.

Langkah 0 - Periksa status awal

Cluster Anda menjalankan versi pengontrol “A” (misalnya 24.11) dan Anda ingin bermigrasi ke versi “B” (misalnya 25.11). Konfirmasikan semua node komputasi di armada Anda menjalankan versi utama yang sama, menggunakan perintah ini dari node cluster:

scontrol show nodes | grep "Version=" # Example output: # NodeAddr=compute-1 NodeHostName=compute-1 Version=24.11.7 # NodeAddr=compute-2 NodeHostName=compute-2 Version=24.11.7

Konfirmas AWS ikan versi agen PCS pada node komputasi. Hubungkan ke node dengan Systems Manager dan periksa log bootstrap:

grep "PCS Agent version" /var/log/amazon/pcs/bootstrap.log | tail -1 # Example output: # /opt/aws/pcs/bin/pcs_bootstrap_init.sh: INFO: Bootstrap starting with PCS Agent version: 1.3.2-1

Pembaruan bergulir memerlukan agen AWS PCS versi 1.4.0 atau yang lebih baru pada semua AMI node komputasi. Untuk informasi selengkapnya, lihat AWS Versi agen PCS.

Langkah 1 — Siapkan AMI target

Membangun atau mengidentifikasi AMI yang menyertakan Slurm versi B dan agen AWS PCS terbaru.

  • Anda dapat menggunakan DLAMIS terbaru PCS-ready . AMI semacam itu dikirimkan dengan tiga versi Slurm terbaru yang didukung. Untuk informasi selengkapnya, lihat Menggunakan PCS-ready DLAMI dengan AWS PCS.

  • Anda dapat membuat AMI khusus, mengikuti langkah-langkah instalasi untuk paket Slurm dan agen AWS PCS. Untuk informasi selengkapnya, lihat Gambar Mesin Amazon Kustom (AMIs) untuk AWS PCS.

  • Kami tidak merekomendasikan AMI sampel AWS PCS untuk penggunaan produksi. AMI ini hanya untuk pengujian.

catatan

AMI yang sama dapat mencakup beberapa versi Slurm. AWS PCS secara otomatis memilih versi yang cocok dengan pengontrol. Memiliki versi tambahan yang diinstal tidak menyebabkan masalah.

Langkah 2 - Perbarui pengontrol cluster

Panggil UpdateCluster dengan scheduler.version diatur ke versi B.

Konsol Manajemen AWS
  1. Buka konsol AWS PCS di https://console.aws.amazon.com/pcs/.

  2. Pada panel navigasi, silakan pilih Klaster.

  3. Pilih cluster yang akan diperbarui dan pilih Edit.

  4. Di bawah Detail klaster, pilih versi penjadwal target dari dropdown Pen jadwal.

  5. Pilih Perbarui untuk mengirimkan pembaruan versi.

  6. Pantau status cluster. Cluster ditampilkan seperti UPDATING selama pembaruan dan kembali ke ACTIVE saat selesai. Pembaruan biasanya selesai dalam 5—15 menit.

AWS CLI
aws pcs update-cluster \ --cluster-identifier cluster-id \ --scheduler version=25.11

Tunggu cluster kembali keACTIVE. Pembaruan biasanya selesai dalam 5—15 menit.

Selama operasi ini pengontrol sebentar tidak tersedia:

  • Menjalankan pekerjaan pada node komputasi terus dieksekusi.

  • Pengiriman pekerjaan baru dan perintah penjadwal tidak tersedia sampai pembaruan selesai.

  • Penskalaan otomatis dijeda sampai cluster kembali keACTIVE.

catatan

Jangan menambahkan pengaturan Slurm khusus untuk versi B sementara armada masih berisi node pada versi A. Konfigurasi didistribusikan ke semua node; yang lama slurmd mungkin tidak mengenali parameter baru.

Jika cluster tidak kembali ke ACTIVE atau UPDATE_FAILED dalam waktu 30 menit, hubungi AWS Dukungan untuk bantuan.

Langkah 3 - Perbarui grup simpul komputasi

Untuk setiap grup simpul komputasi, atur AMI baru dengan versi Slurm target:

aws pcs update-compute-node-group \ --cluster-identifier cluster-id \ --compute-node-group-identifier cng-id \ --ami-id new-ami-id

AWS PCS mengatur node yang menjalankan versi sebelumnya ke DRAIN status. Setelah node yang dikeringkan menyelesaikan pekerjaan mereka saat ini, AWS PCS mengakhiri node dan menggantinya dengan node baru yang menjalankan Slurm versi B.

Langkah 4 — Verifikasi armada yang konsisten pada Slurm versi B

Pantau transisi armada. Dari node cluster, periksa ringkasan versi di semua node:

scontrol show nodes | grep "Version=" | awk -F'=' '{print $NF}' | sort | uniq -c

Periksa node dalam DRAIN status dan versinya:

scontrol show nodes | awk '/NodeName=/{name=$1; ver=""} /Version=/{ver=$NF} /State=.*DRAIN/{print name, ver}'

Periksa versi untuk semua node aktif:

scontrol show nodes | awk '/NodeName=/{name=$1; ver=""} /Version=/{ver=$NF} /State=/{if (ver) print name, ver}'

Pembaruan selesai ketika ringkasan versi hanya menampilkan versi target dan tidak ada node yang tersisa di DRAIN atau DRAINING status. Node di POWERED_DOWN negara bagian tidak melaporkan versi sampai AWS PCS meluncurkannya.

Opsi 2: berhenti Full-fleet pemeliharaan

Anda menghentikan seluruh armada sebelum memperbarui pengontrol, lalu menskalakannya kembali dari AMI baru dengan versi Slurm target. Prosedur ini lebih sederhana, tetapi mengakhiri semua node dan menjalankan pekerjaan.

Kapan menggunakan:

  • Pengontrol cluster ada pada versi 23.11 (Opsi 1 tidak tersedia untuk 23.11 cluster).

catatan

Menghentikan seluruh armada sekaligus meningkatkan kemungkinan kesalahan kapasitas yang tidak mencukupi saat meningkatkan kembali. Pertimbangkan untuk menggunakan kapasitas cadangan atau penjadwalan selama jam di luar jam sibuk.

Langkah 0 - Periksa status awal

Cluster Anda menjalankan versi pengontrol “A” (misalnya 24.11) dan Anda ingin bermigrasi ke versi “B” (misalnya 25.11). Konfirmasikan semua node komputasi di armada Anda menjalankan versi utama yang sama, menggunakan perintah ini dari node cluster:

scontrol show nodes | grep "Version=" # Example output: # NodeAddr=compute-1 NodeHostName=compute-1 Version=24.11.7 # NodeAddr=compute-2 NodeHostName=compute-2 Version=24.11.7

Konfirmas AWS ikan versi agen PCS pada node komputasi. Hubungkan ke node dengan Systems Manager dan periksa log bootstrap:

grep "PCS Agent version" /var/log/amazon/pcs/bootstrap.log | tail -1 # Example output: # /opt/aws/pcs/bin/pcs_bootstrap_init.sh: INFO: Bootstrap starting with PCS Agent version: 1.3.2-1

Gunakan agen AWS PCS terbaru pada AMI target Anda. Untuk informasi selengkapnya, lihat AWS Versi agen PCS.

Langkah 1 — Siapkan AMI target

Membangun atau mengidentifikasi AMI yang menyertakan Slurm versi B dan agen AWS PCS terbaru.

  • Anda dapat menggunakan DLAMIS terbaru PCS-ready . AMI semacam itu dikirimkan dengan tiga versi Slurm terbaru yang didukung. Untuk informasi selengkapnya, lihat Menggunakan PCS-ready DLAMI dengan AWS PCS.

  • Anda dapat membuat AMI khusus, mengikuti langkah-langkah instalasi untuk paket Slurm dan agen AWS PCS. Untuk informasi selengkapnya, lihat Gambar Mesin Amazon Kustom (AMIs) untuk AWS PCS.

  • Kami tidak merekomendasikan AMI sampel AWS PCS untuk penggunaan produksi. AMI ini hanya untuk pengujian.

Langkah 2 — Kurangi seluruh armada

Rekam saat ini minNodeCount dan maxNodeCount untuk setiap grup simpul komputasi - Anda akan mengembalikannya di Langkah 4.

for cng in $(aws pcs list-compute-node-groups --cluster-identifier cluster-id --query "computeNodeGroups[].id" --output text); do aws pcs get-compute-node-group \ --cluster-identifier cluster-id \ --compute-node-group-identifier "$cng" \ --query "computeNodeGroup.{Id:id,AmiId:amiId,Min:scalingConfiguration.minInstanceCount,Max:scalingConfiguration.maxInstanceCount}" \ --output table done
Awas

Operasi berikut mengakhiri semua node yang sedang berjalan dan pekerjaan pada mereka.

Setel minNodeCount dan maxNodeCount ke 0 pada setiap grup simpul komputasi:

aws pcs update-compute-node-group \ --cluster-identifier cluster-id \ --compute-node-group-identifier cng-id \ --scaling-configuration '{"minNodeCount": 0, "maxNodeCount": 0}'

Verifikasi tidak ada instans aws:pcs:cluster-id yang diberi tag yang cocok dengan cluster Anda yang berjalan sebelum melanjutkan:

aws ec2 describe-instances \ --filters "Name=tag:aws:pcs:cluster-id,Values=cluster-id" \ --query "Reservations[].Instances[].[InstanceId,ImageId,State.Name]" \ --output table

Langkah 3 - Perbarui pengontrol cluster

Konsol Manajemen AWS
  1. Buka konsol AWS PCS di https://console.aws.amazon.com/pcs/.

  2. Pada panel navigasi, silakan pilih Klaster.

  3. Pilih cluster yang akan diperbarui dan pilih Edit.

  4. Di bawah Detail klaster, pilih versi penjadwal target dari dropdown Pen jadwal.

  5. Pilih Perbarui untuk mengirimkan pembaruan versi.

  6. Pantau status cluster. Cluster ditampilkan seperti UPDATING selama pembaruan dan kembali ke ACTIVE saat selesai. Pembaruan biasanya selesai dalam 5—15 menit.

AWS CLI
aws pcs update-cluster \ --cluster-identifier cluster-id \ --scheduler version=25.11

Tunggu cluster kembali keACTIVE. Pembaruan biasanya selesai dalam 5—15 menit.

Jika cluster tidak kembali ke ACTIVE atau UPDATE_FAILED dalam waktu 30 menit, hubungi AWS Dukungan untuk bantuan.

Langkah 4 - Perbarui grup simpul komputasi dan pulihkan kapasitas

Untuk setiap grup simpul komputasi, tetapkan AMI baru dan kembalikan batas kapasitas minimum dan maksimum asli:

aws pcs update-compute-node-group \ --cluster-identifier cluster-id \ --compute-node-group-identifier cng-id \ --ami-id new-ami-id \ --scaling-configuration '{"minNodeCount": previous-min, "maxNodeCount": previous-max}'

Cluster dinaikkan kembali. Semua node baru menjalankan Slurm versi B dengan agen AWS PCS terbaru.

Contoh: Memperbarui di beberapa versi

Jika versi target berada di luar jendela kompatibilitas versi Anda saat ini, Anda harus memindahkan pengontrol melalui satu atau lebih versi perantara, memperbaruinya satu lompatan pada satu waktu. Setiap hop harus menargetkan versi yang didukung dalam jendela kompatibilitas versi pengontrol saat ini.

Karena Opsi 2: berhenti Full-fleet pemeliharaan menskalakan armada ke nol sebelum memperbarui pengontrol, tidak ada node komputasi yang berjalan saat pengontrol bergerak antar versi. Akibatnya, AMI Anda dapat menggunakan versi target akhir secara langsung — hanya pembaruan pengontrol (Langkah 3) yang diulang untuk setiap lompatan.

Contoh berikut memperbarui cluster dari 23.11 ke 25.11 menggunakan prosedur Opsi 2. 23.11 berada di luar jendela kompatibilitas 25.11, sehingga pengontrol diperbarui dalam dua hop (23.11 hingga 25.05, lalu 25.05 hingga 25.11). Ikuti langkah Opsi 2, dengan Langkah 3 dibagi menjadi satu pembaruan per hop:

  1. Langkah 1 — Siapkan AMI target. Bangun atau identifikasi AMI dengan versi final (25.11) dan agen AWS PCS terbaru. Lihat Langkah 1 — Siapkan AMI target.

  2. Langkah 2 — Kurangi seluruh armada. Rekam kapasitas saat ini (lihatLangkah 2 — Kurangi seluruh armada), lalu atur setiap grup simpul komputasi ke nol.

    aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --scaling-configuration '{"minNodeCount": 0, "maxNodeCount": 0}'
  3. Langkah 3a - Perbarui pengontrol dari 23.11 ke 25.05. Tunggu cluster kembali keACTIVE.

    aws pcs update-cluster --cluster-identifier my-cluster \ --scheduler version=25.05
  4. Langkah 3b - Perbarui pengontrol dari 25.05 ke 25.11. Tunggu cluster kembali keACTIVE.

    aws pcs update-cluster --cluster-identifier my-cluster \ --scheduler version=25.11
  5. Langkah 4 - Memperbarui grup simpul komputasi dan memulihkan kapasitas. Tetapkan 25.11 AMI pada setiap grup simpul komputasi dan kembalikan batas kapasitas asli (lihatLangkah 4 - Perbarui grup simpul komputasi dan pulihkan kapasitas).

    aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --ami-id ami-0123456789abcdef0 \ --scaling-configuration '{"minNodeCount": previous-min, "maxNodeCount": previous-max}'
catatan

Setiap lompatan pengontrol harus mendarat pada versi dalam jendela kompatibilitas yang sebelumnya. Untuk menemukan versi perantara yang valid, lihatKompatibilitas versi. Armada tetap di nol melalui Langkah 3a dan 3b, jadi tidak diperlukan pembaruan AMI perantara.