View a markdown version of this page

Ruota un cluster segreto 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à.

Ruota un cluster segreto in AWS 2 PEZZI

Cambia il segreto del tuo cluster per soddisfare i requisiti di sicurezza e risolvere potenziali compromessi. Questo processo richiede l'attivazione della modalità di manutenzione del cluster.

Nota

Per impostazione predefinita, AWS PCS crittografa il segreto del cluster con un Chiave gestita da AWS. Se invece lo crittografi con una chiave gestita dal cliente, assicurati che la policy chiave conceda al ruolo collegato al servizio AWS PCS l'accesso alla chiave. Altrimenti, AWS PCS non può ruotare il segreto. Per ulteriori informazioni, consulta Usa una chiave gestita dal cliente per crittografare il segreto del cluster.

Prerequisiti

  • Ruolo IAM con autorizzazione secretsmanager:RotateSecret

  • Cluster nel ACTIVE nostro UPDATE_FAILED stato

Procedura

  1. Notifica agli utenti del cluster la prossima finestra di manutenzione.

  2. Metti il cluster in modalità di manutenzione scalando tutti i gruppi di nodi di calcolo a 0 capacità.

    1. Usa l' UpdateComputeNodeGroup API per impostare sia il valore minimo InstanceCount che quello massimo InstanceCount su 0 per tutti i gruppi di nodi di calcolo.

    2. Attendi che tutti i nodi si fermino.

    3. (Facoltativo) Elimina le code di pianificazione con i comandi Slurm prima di interrompere la capacità per una gestione agevole dei lavori.

    Nota

    La rotazione richiede zero istanze in esecuzione. Se le istanze sono ancora in esecuzione quando si avvia la rotazione, la rotazione ha esito negativo e viene visualizzato il seguente errore:

    All instances must be terminated before you rotate a secret. Set the minimum instance count to 0 to terminate active instances.
    Nota

    Un gruppo di nodi di calcolo può generare report ACTIVE mentre le istanze continuano a terminare durante lo scale-down. Può inoltre generare report ACTIVE prima che esista un'istanza durante lo scale-up. Il ridimensionamento può richiedere diversi minuti, fino a circa 30 minuti. Mentre è presente un gruppo di nodi di calcoloUPDATING, get-compute-node-group restituisce i valori di ridimensionamento precedenti all'aggiornamento e AWS PCS rifiuta ulteriori richieste di aggiornamento fino al completamento dell'aggiornamento. Non consideratela una conferma dell'esistenza di ACTIVE istanze.

  3. Avvia la rotazione tramite Secrets Manager.

    • Metodo della console:

      1. Accedi a Secrets Manager, seleziona il segreto del cluster e scegli Ruota segreto.

    • Metodo API:

      1. Usa l'rotate-secretAPI Secrets Manager.

  4. Conferma che la rotazione è avvenuta.

    Nota

    La rotate-secret chiamata restituisce HTTP 200 anche se la rotazione successiva fallisce. Il risultato arriva più tardi, come RotationSucceeded evento separatoRotationFailed. La risposta 200 conferma solo che AWS PCS ha accettato la richiesta, non che la rotazione è riuscita.

    1. Esegui describe-secret e conferma che l'etichetta AWSCURRENT di staging è passata alla nuova versione e che lastRotatedDate è stata aggiornata.

    2. In alternativa, attendi un RotationSucceeded evento in AWS CloudTrail.

    Nota

    Usa describe-secret piuttosto list-secret-version-ids che ispezionare le versioni. list-secret-version-idspuò omettere la AWSPENDING versione anche se specificata. --include-deprecated

  5. Una volta completata la rotazione, ripristina la capacità del cluster.

    1. Utilizza l' UpdateComputeNodeGroup API per reimpostare i gruppi di nodi alla min/max capacità desiderata.

    2. Per i nodi di AWS PCS-managed accesso: non è richiesta alcuna azione aggiuntiva.

    3. Per i nodi di accesso BYO:

      1. Connettiti ai nodi di accesso.

      2. Aggiorna /etc/slurm/slurm.key con il nuovo segreto di Secrets Manager.

      3. Riavvia Slurm Auth and Cred Kiosk Daemon (sackd).

Effettua il ripristino da una versione bloccata in sospeso

Una rotazione non riuscita può bloccare una versione sull'etichetta di AWSPENDING staging e bloccare le rotazioni successive con il seguente errore:

A previous rotation isn't complete. That rotation will be reattempted.

Il cancel-rotate-secret comando da solo non rimuove l'etichetta di AWSPENDING staging e viene impostato su. RotationEnabled false Per cancellare la versione bloccata, rimuovi l'etichetta di AWSPENDING staging dalla versione in sospeso:

aws secretsmanager update-secret-version-stage \ --secret-id secret-arn \ --version-stage AWSPENDING \ --remove-from-version-id pending-version-id

Verificate la rotazione

Per confermare che il controller Slurm sia raggiungibile e che i nodi siano integri, usa e. scontrol ping scontrol show nodes Non usatelo sinfo per controllare un cluster che non ha code, perché in tal caso non sinfo mostra nulla e non è un controllo valido.

Per confermare che i nodi utilizzino la chiave corrente, confronta l' SHA-256 hash del AWSCURRENT segreto decodificato in base64 con l'hash dei nodi: /etc/slurm/slurm.key

sha256sum /etc/slurm/slurm.key

Confronta anche l'hash del nodo con la AWSPREVIOUS versione per dimostrare che i nodi non si trovano su una chiave obsoleta. Ti consigliamo di confrontare gli hash anziché stampare il materiale della chiave.