View a markdown version of this page

Gunakan AWS-skrip yang dipelihara untuk tindakan siklus hidup simpul di AWS PCS - AWS PCS

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

Gunakan AWS-skrip yang dipelihara untuk tindakan siklus hidup simpul di AWS PCS

AWS menerbitkan skrip yang dipelihara untuk tindakan siklus hidup umum. Anda mereferensikan skrip yang dipelihara langsung dari konfigurasi grup simpul komputasi Anda. Skripnya idempoten dan aman untuk dijalankan pada setiap boot.

AWS mendistribusikan skrip dari bucket Amazon S3 publik yang AWS dikelola di masing-masing Wilayah AWS. Anda mereferensikan skrip dengan URI Amazon S3. Anda mereferensikan skrip yang dipelihara dengan cara yang sama seperti Anda mereferensikan skrip Anda sendiri. Anda dapat mereferensikan skrip langsung dari bucket AWS-managed.

Skrip yang tersedia

Skrip

Deskripsi

Paket prasyarat

mount-efs.sh

Memasang sistem file Amazon EFS di jalur tertentu dan mempertahankannya selama reboot.

amazon-efs-utils, nfs-utils

mount-fsx-lustre.sh

Memasang sistem file Amazon FSx for Lustre di jalur tertentu dan mempertahankannya selama reboot.

lustre-client

configure-efs-homes.sh

Memasang sistem file Amazon EFS sebagai basis direktori utama dan mengonfigurasi PAM sehingga direktori home setiap pengguna dibuat pada login pertama.

amazon-efs-utils,nfs-utils, dan mkhomedir paket PAM (lihat persyaratan per skrip)

configure-ldaps.sh

Mengkonfigurasi SSSD untuk otentikasi LDAP atau LDAPS, dengan dukungan untuk bind yang diautentikasi (kredenSIAL dari AWS Secrets Manager) atau ikatan anonim.

sssd,sssd-ldap,sssd-tools, dan paket terkait (lihat persyaratan per skrip)

configure-cloudwatch-logs.sh

Mengkonfigurasi CloudWatch agen Amazon untuk meneruskan log tindakan siklus hidup node ke Amazon CloudWatch Logs.

amazon-cloudwatch-agent

penting

Skrip ini tidak menginstal paket prasyarat mereka. Instal paket yang diperlukan di AMI Anda sebelum Anda menggunakan skrip. Skrip gagal jika prasyarat hilang. Beberapa skrip memerlukan peran instance node untuk memiliki izin tertentu. Lihat persyaratan untuk setiap skrip.

Referensi skrip

Referensikan skrip dengan URI Amazon S3 di scriptLocation bidang tindakan siklus hidup. Skrip disimpan di bawah aws-pcs-node-lifecycle-scripts awalan aws-pcs-repo-region bucket AWS-managed di masing-masing Wilayah AWS. Gunakan bucket yang Wilayah AWS sama dengan cluster Anda.

s3://aws-pcs-repo-region/aws-pcs-node-lifecycle-scripts/script-vversion.sh

Setiap skrip diberi versi dengan versi https://semver.org/ semantik. Anda dapat menyematkan versi tertentu atau melacak rilis terbaru dalam versi utama:

  • Sematkan versi tertentu — Gunakan versi semantik lengkap, sepertimount-efs-v1.0.0.sh. Konten pada versi tertentu tidak dapat diubah. Gunakan versi yang disematkan untuk produksi.

  • Melacak versi terbaru — Gunakan alias versi utama, seperti. mount-efs-v1-latest.sh Alias menunjuk ke rilis terbaru dalam versi utama itu. Pasangkan dengan scriptCachingPolicy REFRESH_ON_REBOOT untuk mengambil pembaruan saat reboot.

Setiap skrip memiliki file SHA-256 checksum pendamping di lokasi yang sama dengan .sha256 akhiran (misalnya,mount-efs-v1.0.0.sh.sha256). Baca nil .sha256 ainya dan atur sebagai skripchecksum. Agen kemudian memverifikasi integritas skrip saat diunduh. Untuk informasi selengkapnya, lihat Integritas skrip (checksum).

Versi skrip yang tersedia

AWS versi setiap skrip secara independen. Tabel berikut mencantumkan versi yang tersedia dari setiap skrip. Gunakan versi di URI Amazon S3 skrip, seperti yang dijelaskan dalamReferensi skrip.

mount-efs.sh

Versi

Tanggal rilis

Catatan rilis

1.0.0

Juli 23, 2026

Pelepasan awal.

mount-fsx-lustre.sh

Versi

Tanggal rilis

Catatan rilis

1.0.0

Juli 23, 2026

Pelepasan awal.

configure-efs-homes.sh

Versi

Tanggal rilis

Catatan rilis

1.0.0

Juli 23, 2026

Pelepasan awal.

configure-ldaps.sh

Versi

Tanggal rilis

Catatan rilis

1.0.0

Juli 23, 2026

Pelepasan awal.

configure-cloudwatch-logs.sh

Versi

Tanggal rilis

Catatan rilis

1.0.0

Juli 23, 2026

Pelepasan awal.

Contoh: Pasang sistem file EFS dengan skrip yang dipelihara

Contoh berikut mereferensikan mount-efs.sh skrip yang dipelihara di us-west-2 Wilayah AWS. Anda meneruskan argumen sebagai bendera bernama. Untuk argumen skrip, lihatArgumen skrip.

aws pcs update-compute-node-group \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-cng \ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Mount EFS home directory", "scriptSource": { "scriptLocation": "s3://aws-pcs-repo-us-west-2/aws-pcs-node-lifecycle-scripts/mount-efs-v1.0.0.sh" }, "arguments": ["--file-system-id", "fs-12345678", "--mount-point", "/shared"], "onError": "TERMINATE", "executionPolicy": "EVERY_BOOT" } ] } }'

Peran instance node harus memiliki s3:GetObject izin untuk objek skrip. Node dalam subnet pribadi dapat mencapai bucket melalui titik akhir VPC gateway S3. Untuk informasi selengkapnya, lihat Lokasi penyimpanan skrip.

Argumen skrip

Setiap skrip mengambil argumen bendera bernama. Berikan setiap flag dan nilainya sebagai elemen terpisah dari arguments array (misalnya,["--file-system-id", "fs-12345678"]). Semua skrip berjalan sebagai root dan mendukung sistem operasi AL2, AL2023, RHEL, Ubuntu, dan Rocky Linux.

mount-efs.sh

Bendera

Diperlukan

Default

Deskripsi

--file-system-id

Ya

ID sistem file EFS, sepertifs-0123456789abcdef0.

--mount-point

Ya

Jalur absolut untuk dipasang, seperti/mnt/efs.

--options

Tidak

tls,iam

Comma-separated opsi pemasangan. Default mengaktifkan enkripsi dalam transit dan otentikasi IAM.

Dengan iam opsi default, peran instance node harus mengizinkan elasticfilesystem:ClientMount danelasticfilesystem:ClientWrite. Subnet node harus memiliki target pemasangan EFS yang grup keamanannya memungkinkan NFS masuk (TCP 2049) dari node.

mount-fsx-lustre.sh

Bendera

Diperlukan

Default

Deskripsi

--fsx-dns-name

Ya

FSx untuk nama DNS sistem file Lustre.

--mount-name

Ya

Nama mount Lustre sistem file (MountNamenilai dari konsol FSx).

--mount-point

Ya

Jalur absolut untuk dipasang, seperti/fsx.

--options

Tidak

noatime,flock

Comma-separated opsi pemasangan. Defaultnya mengikuti rekomendasi FSx for Lustre.

Subnet node harus mencapai sistem file, dan grup keamanan sistem file harus mengizinkan lalu lintas Luster masuk (TCP 988, dan 1018-1023 untuk klien yang menggunakan port sumber cadangan) dari node.

configure-efs-homes.sh

Bendera

Diperlukan

Default

Deskripsi

--efs-id

Ya

ID sistem file EFS, sepertifs-0123456789abcdef0.

--home-base

Tidak

/home

Jalur absolut untuk memasang sistem file EFS di dan membuat direktori home di bawah.

--options

Tidak

tls,iam

Comma-separated opsi pemasangan. Default mengaktifkan enkripsi dalam transit dan otentikasi IAM.

Skrip ini membutuhkanamazon-efs-utils,nfs-utils, dan mkhomedir dukungan PAM. Pada RHEL-family node, instaloddjob,oddjob-mkhomedir, danauthselect. Di AL2023, instal authselect secara eksplisit. Di Ubuntu, installibpam-modules. IAM dan persyaratan jaringan cocokmount-efs.sh.

configure-ldaps.sh

Bendera

Diperlukan

Deskripsi

--ldap-uri

Ya

URI server LDAP. Harus dimulai dengan ldap:// atau ldaps://

--search-base

Ya

Basis pencarian LDAP, sepertidc=example,dc=com.

--secret-arn

Tidak

AWS Manajer Rahasia ARN dari rahasia yang memegang kredenSIAL bind. Saat Anda menghilangkan bendera ini, skrip mengonfigurasi SSSD untuk ikatan anonim.

--tls-cacert

Tidak

Jalur absolut ke bundel CA untuk verifikasi TLS. Defaultnya adalah bundel CA sistem operasi.

Skrip ini membutuhkansssd,sssd-ldap, dansssd-tools. Pada RHEL-family node, itu juga membutuhkan authselect atau authconfig danoddjob-mkhomedir. Di Ubuntu, itu membutuhkanlibpam-modules.

Dengan--secret-arn, peran instance node harus memungkinkan secretsmanager:GetSecretValue rahasia, dan node membutuhkan python3 paket awscli dan. Nilai rahasia harus JSON dari formulir{"username": "<bind-dn>", "password": "<bind-password>"}. Anonymous bind tidak melakukan panggilan AWS API dan tidak memerlukan izin IAM.

configure-cloudwatch-logs.sh

Bendera

Diperlukan

Default

Deskripsi

--log-group-name

Tidak

/aws/pcs/${PCS_CLUSTER_ID}/lifecycle

Grup CloudWatch log log untuk diteruskan ke. Ketika dihilangkan, skrip mendapatkan nama dari variabel PCS_CLUSTER_ID lingkungan yang ditetapkan AWS PCS.

Skrip meneruskan direktori log tindakan siklus hidup (/var/log/amazon/pcs/lifecycle/actions). Peran instance node harus memungkinkanlogs:CreateLogGroup,logs:CreateLogStream, dan logs:PutLogEvents pada grup log target. Gunakan skrip ini untuk meneruskan log di luar instance untuk debugging post-mortem.

catatan

CloudWatch Agen Amazon harus menjalankan root untuk meneruskan log ini. Hanya root pengguna yang bisa membaca/var/log/amazon/pcs/lifecycle/actions.

catatan

Script menulis konfigurasinya ke file fragmen khusus. CloudWatchAgen Amazon menggabungkan fragmen ini dengan konfigurasi apa pun yang ada tanpa menulisnya, sehingga skrip mempertahankan metrik dan pengaturan grup log yang ada.