View a markdown version of this page

Contoh tindakan siklus hidup simpul untuk AWS PCS - AWS PCS

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

Contoh tindakan siklus hidup simpul untuk AWS PCS

Contoh berikut menggunakan AWS CLI untuk mengonfigurasi tindakan siklus hidup simpul. Anda dapat menentukan tindakan siklus hidup saat membuat grup simpul komputasi dengancreate-compute-node-group, atau menambah atau mengubahnya pada grup simpul komputasi yang ada dengan. update-compute-node-group Nil --node-lifecycle-actions ainya sama untuk kedua perintah.

Beberapa skrip di seluruh tahapan

Contoh ini menggabungkan skrip di kedua tahap siklus hidup dengan kebijakan eksekusi dan perilaku kesalahan yang berbeda.

aws pcs create-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --subnet-ids subnet-ExampleID1 \ --custom-launch-template id=lt-ExampleID1,version='1' \ --iam-instance-profile-arn=arn:InstanceProfile \ --scaling-config minInstanceCount=0,maxInstanceCount=10 \ --instance-configs instanceType=t3.large \ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Mount FSx Lustre", "scriptSource": { "scriptLocation": "s3://my-bucket/mount-fsx.sh" }, "arguments": ["fs-0abc123", "/scratch"], "executionPolicy": "EVERY_BOOT" }, { "name": "Join Active Directory", "scriptSource": { "scriptLocation": "s3://my-bucket/configure-ad.sh" }, "arguments": ["ad.example.com", "EXAMPLE"], "executionPolicy": "FIRST_BOOT_ONLY" } ], "nodeReady": [ { "name": "Configure CloudWatch logging", "scriptSource": { "scriptLocation": "s3://my-bucket/setup-cloudwatch.sh" }, "arguments": ["/aws/pcs/my-cluster"], "onError": "CONTINUE" } ] } }'

Perilaku kesalahan campuran

Contoh ini menggunakan skrip kritis dan opsional dalam tahap yang sama. Yang pertama mengakhiri node pada kegagalan; yang kedua berlanjut.

aws pcs create-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --subnet-ids subnet-ExampleID1 \ --custom-launch-template id=lt-ExampleID1,version='1' \ --iam-instance-profile-arn=arn:InstanceProfile \ --scaling-config minInstanceCount=0,maxInstanceCount=10 \ --instance-configs instanceType=t3.large \ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Install required packages", "scriptSource": { "scriptLocation": "s3://my-bucket/install-packages.sh" }, "onError": "TERMINATE" }, { "name": "Install optional tools", "scriptSource": { "scriptLocation": "s3://my-bucket/install-optional.sh" }, "onError": "CONTINUE" } ] } }'

Validasi integritas dengan checksum

Menambahkan SHA-256 checksum sehingga agen menolak skrip jika kontennya tidak cocok.

aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Mount EFS", "scriptSource": { "scriptLocation": "s3://my-bucket/mount-efs.sh", "checksum": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" }, "arguments": ["fs-12345678", "/shared"] } ] } }'

Aktifkan penyegaran skrip saat reboot

Set scriptCachingPolicy el keREFRESH_ON_REBOOT. Pang UpdateComputeNodeGroup gilan ini adalah perubahan konfigurasi, sehingga menguras dan menggantikan instance yang ada. Setelah penggantian selesai, instans mengunduh ulang skrip pada setiap reboot. Anda kemudian dapat memperbarui konten skrip di Amazon S3 dan instans menerima perubahan pada reboot berikutnya tanpa panggilan API lebih lanjut.

aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Mount EFS", "scriptSource": { "scriptLocation": "s3://my-bucket/mount-efs.sh" }, "arguments": ["fs-12345678", "/shared"], "executionPolicy": "EVERY_BOOT" } ] }, "scriptCachingPolicy": "REFRESH_ON_REBOOT" }'

Migrasi dari tindakan ParallelCluster bootstrap AWS

Banyak skrip AWS ParallelCluster bootstrap yang ada berfungsi sebagaimana adanya dengan tindakan siklus hidup AWS PCS. AWS PCS menyediakan penanganan kesalahan per skrip (TERMINATESTOP_SEQUENCE,, atauCONTINUE) dan kontrol reboot (FIRST_BOOT_ONLYatauEVERY_BOOT). Def AWS ault PCS adalahFIRST_BOOT_ONLY. Untuk mencoco ParallelCluster kkan perilaku (jalankan pada setiap boot), setel executionPolicy keEVERY_BOOT.

AWS ParallelCluster

AWS PCS

OnNodeStart

nodeBootstrapped(berjalan setelah fase konfigurasi AWS PCS, sebelumslurmd)

OnNodeConfigured

nodeReady(berjalan setelah node mendaftar dengan pengontrol Slurm)

OnNodeUpdated

Tidak ada AWS PCS yang setara