View a markdown version of this page

Utilizzo AWS-script mantenuti per le azioni del ciclo di vita dei nodi in AWS 2 PEZZI - AWS PEZZI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo AWS-script mantenuti per le azioni del ciclo di vita dei nodi in AWS 2 PEZZI

AWS pubblica script gestiti per le azioni comuni del ciclo di vita. Si fa riferimento a uno script gestito direttamente dalla configurazione del gruppo di nodi di calcolo. Gli script sono idempotenti e sicuri da eseguire a ogni avvio.

AWS distribuisce gli script da un bucket Amazon S3 pubblico e gestito in ciascuno AWS di essi. Regione AWS Si fa riferimento a uno script tramite il relativo URI Amazon S3. Fai riferimento a uno script gestito nello stesso modo in cui fai riferimento al tuo script. È possibile fare riferimento agli script direttamente dal bucket AWS-managed.

Script disponibili

Script

Descrizione

Pacchetti prerequisiti

mount-efs.sh

Monta un file system Amazon EFS in un percorso specificato e lo mantiene persistente dopo i riavvii.

amazon-efs-utils, nfs-utils

mount-fsx-lustre.sh

Monta un file system Amazon FSx for Lustre in un percorso specificato e lo mantiene persistente durante i riavvii.

lustre-client

configure-efs-homes.sh

Monta un file system Amazon EFS come home directory base e configura PAM in modo che la home directory di ogni utente venga creata al primo accesso.

amazon-efs-utilsnfs-utils, e mkhomedir pacchetti PAM (consulta i requisiti per script)

configure-ldaps.sh

Configura SSSD per l'autenticazione LDAP o LDAPS, con supporto per il bind autenticato (credenziali di Secrets Manager) o il bind anonimo. AWS

sssd,sssd-ldap, e pacchetti correlati (vedi sssd-tools i requisiti per script)

configure-cloudwatch-logs.sh

Configura l' CloudWatch agente Amazon per inoltrare i log delle azioni del ciclo di vita del nodo ad Amazon Logs. CloudWatch

amazon-cloudwatch-agent

Importante

Questi script non installano i pacchetti dei prerequisiti. Installa i pacchetti richiesti nella tua AMI prima di utilizzare uno script. Uno script ha esito negativo se manca un prerequisito. Alcuni script richiedono che il ruolo di istanza del nodo disponga di autorizzazioni specifiche. Vedi i requisiti per ogni script.

Fai riferimento a uno script

Fai riferimento a uno script tramite il relativo URI Amazon S3 nel scriptLocation campo di un'azione del ciclo di vita. Gli script sono memorizzati con il aws-pcs-node-lifecycle-scripts prefisso del bucket -managed in ciascuno di essi. AWSaws-pcs-repo-region Regione AWS Usa il bucket nello stesso modo del tuo cluster. Regione AWS

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

Ogni script è dotato di una versione semantica. Puoi aggiungere una versione specifica o tenere traccia dell'ultima versione all'interno di una versione principale:

  • Aggiungi una versione specifica: utilizza la versione semantica completa, ad esempiomount-efs-v1.0.0.sh. Il contenuto di una versione specifica è immutabile. Usa una versione bloccata per la produzione.

  • Tieni traccia della versione più recente: utilizza l'alias della versione principale, ad esempio. mount-efs-v1-latest.sh L'alias rimanda alla versione più recente all'interno di quella versione principale. Abbinalo scriptCachingPolicy REFRESH_ON_REBOOT per ricevere gli aggiornamenti al riavvio.

Ogni script ha un file di SHA-256 checksum complementare nella stessa posizione con un .sha256 suffisso (ad esempio,). mount-efs-v1.0.0.sh.sha256 Leggi il .sha256 valore e impostalo come quello dello script. checksum L'agente verifica quindi l'integrità dello script al momento del download. Per ulteriori informazioni, consulta Integrità dello script (checksum).

Versioni di script disponibili

AWS esegue le versioni di ogni script in modo indipendente. Le tabelle seguenti elencano le versioni disponibili di ogni script. Usa una versione nell'URI Amazon S3 dello script, come descritto inFai riferimento a uno script.

mount-efs.sh

Versione

Data di rilascio

Note di rilascio

1.0.0

23 luglio 2026

Versione iniziale.

mount-fsx-lustre.sh

Versione

Data di rilascio

Note di rilascio

1.0.0

23 luglio 2026

Versione iniziale.

configure-efs-homes.sh

Versione

Data di rilascio

Note di rilascio

1.0.0

23 luglio 2026

Versione iniziale.

configure-ldaps.sh

Versione

Data di rilascio

Note di rilascio

1.0.0

23 luglio 2026

Versione iniziale.

configure-cloudwatch-logs.sh

Versione

Data di rilascio

Note di rilascio

1.0.0

23 luglio 2026

Versione iniziale.

Esempio: montare un file system EFS con uno script gestito

L'esempio seguente fa riferimento allo mount-efs.sh script mantenuto in us-west-2 Regione AWS. Gli argomenti vengono passati come flag denominati. Per gli argomenti dello script, consultaArgomenti dello script.

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" } ] } }'

Il ruolo di istanza del nodo deve disporre dell's3:GetObjectautorizzazione per l'oggetto script. I nodi di una sottorete privata possono raggiungere il bucket tramite un endpoint VPC del gateway S3. Per ulteriori informazioni, consulta Posizioni di archiviazione degli script.

Argomenti dello script

Ogni script accetta argomenti denominati con bandiera. Passa ogni flag e il relativo valore come elementi separati dell'argumentsarray (ad esempio,["--file-system-id", "fs-12345678"]). Tutti gli script vengono eseguiti root e supportano i sistemi operativi AL2, AL2023, RHEL, Ubuntu e Rocky Linux.

mount-efs.sh

Bandiera

Campo obbligatorio

Impostazione predefinita

Descrizione

--file-system-id

ID del file system EFS, ad esempiofs-0123456789abcdef0.

--mount-point

Percorso assoluto in cui effettuare il montaggio, ad esempio/mnt/efs.

--options

No

tls,iam

Comma-separated opzioni di montaggio. L'impostazione predefinita abilita la crittografia in transito e l'autenticazione IAM.

Con l'iamopzione predefinita, il ruolo di istanza del nodo deve consentire elasticfilesystem:ClientMount eelasticfilesystem:ClientWrite. La sottorete del nodo deve avere una destinazione di montaggio EFS il cui gruppo di sicurezza consenta l'ingresso di NFS (TCP 2049) dal nodo.

mount-fsx-lustre.sh

Bandiera

Campo obbligatorio

Impostazione predefinita

Descrizione

--fsx-dns-name

Nome DNS del file system FSx for Lustre.

--mount-name

Il nome di montaggio Lustre del file system (il MountName valore della console FSx).

--mount-point

Percorso assoluto in cui effettuare il montaggio, ad esempio. /fsx

--options

No

noatime,flock

Comma-separated opzioni di montaggio. L'impostazione predefinita segue le raccomandazioni di FSx for Lustre.

La sottorete del nodo deve raggiungere il file system e il gruppo di sicurezza del file system deve consentire il traffico Lustre in entrata (TCP 988 e 1018-1023 per i client che utilizzano porte di origine riservate) dal nodo.

configure-efs-homes.sh

Bandiera

Campo obbligatorio

Impostazione predefinita

Descrizione

--efs-id

ID del file system EFS, ad esempiofs-0123456789abcdef0.

--home-base

No

/home

Percorso assoluto in cui montare il file system EFS e in cui creare le home directory.

--options

No

tls,iam

Comma-separated opzioni di montaggio. L'impostazione predefinita abilita la crittografia in transito e l'autenticazione IAM.

Questo script richiede amazon-efs-utilsnfs-utils, e il mkhomedir supporto PAM. RHEL-family Sui nodi oddjoboddjob-mkhomedir, installa eauthselect. Su AL2023, installa in authselect modo esplicito. Su Ubuntu, installalibpam-modules. I requisiti IAM e di rete corrispondonomount-efs.sh.

configure-ldaps.sh

Bandiera

Campo obbligatorio

Descrizione

--ldap-uri

URI del server LDAP. Deve iniziare con ldap:// o. ldaps://

--search-base

Base di ricerca LDAP, ad esempiodc=example,dc=com.

--secret-arn

No

AWS Secrets Manager ARN del segreto che contiene le credenziali di associazione. Quando si omette questo flag, lo script configura SSSD per un bind anonimo.

--tls-cacert

No

Percorso assoluto verso un pacchetto CA per la verifica TLS. Il valore predefinito è il bundle CA del sistema operativo.

Questo script richiedesssd,, esssd-ldap. sssd-tools RHEL-family Sui nodi, richiede anche authselect or authconfig andoddjob-mkhomedir. Su Ubuntu, richiedelibpam-modules.

Con--secret-arn, il ruolo di istanza del nodo deve consentire secretsmanager:GetSecretValue il segreto e il nodo necessita dei python3 pacchetti awscli and. Il valore del segreto deve essere il JSON del modulo{"username": "<bind-dn>", "password": "<bind-password>"}. L'associazione anonima non effettua chiamate AWS API e non richiede autorizzazioni IAM.

configure-cloudwatch-logs.sh

Bandiera

Campo obbligatorio

Impostazione predefinita

Descrizione

--log-group-name

No

/aws/pcs/${PCS_CLUSTER_ID}/lifecycle

Il gruppo di CloudWatch log Logs a cui inoltrare. Se omesso, lo script deriva il nome dalla variabile di PCS_CLUSTER_ID ambiente impostata da AWS PCS.

Lo script inoltra la directory del log delle azioni del ciclo di vita (). /var/log/amazon/pcs/lifecycle/actions Il ruolo di istanza del nodo deve consentire logs:CreateLogGroup e nel logs:CreateLogStream gruppo di logs:PutLogEvents log di destinazione. Usa questo script per inoltrare i log all'esterno dell'istanza per il debug post mortem.

Nota

L' CloudWatch agente Amazon deve eseguire As per inoltrare questi logroot. Solo l'rootutente può leggere/var/log/amazon/pcs/lifecycle/actions.

Nota

Lo script scrive la sua configurazione in un file di frammento dedicato. L' CloudWatchagente Amazon combina questo frammento con qualsiasi configurazione esistente senza sovrascriverlo, quindi lo script preserva le metriche esistenti e le impostazioni dei gruppi di log.