Ruota l'autorità di certificazione del cluster utente

I cluster Anthos su Bare Metal utilizzano certificati e chiavi private per autenticare e criptare le connessioni tra i componenti di sistema nei cluster utente. L'autorità di certificazione (CA) del cluster gestisce tali certificati e chiavi. Quando esegui il comando bmctl update credentials --cluster-ca, i cluster Anthos su Bare Metal eseguono le seguenti azioni:

  • Crea e carica una nuova autorità di certificazione del cluster nello spazio dei nomi del cluster utente nel cluster di amministrazione.

  • I controller del cluster di amministrazione sostituiscono l'autorità di certificazione del cluster utente con quella appena generata.

  • I controller del cluster di amministrazione distribuiscono i nuovi certificati CA pubblici e le coppie di chiavi dei certificati foglia ai componenti di sistema del cluster utente.

Per mantenere la comunicazione nel cluster sicuro, esegui la rotazione periodica della CA del cluster utente e ogni volta che si verifica una possibile violazione della sicurezza.

Prima di iniziare

Prima di ruotare l'autorità di certificazione del cluster utente, pianifica in base alle seguenti condizioni e ai seguenti impatti:

  • Assicurati che la versione 1.8.2 o successiva dei cluster utente e dei relativi amministratori prima di avviare la rotazione delle CA dei cluster utente.

  • La rotazione delle CA dei cluster utente è incrementale, consentendo alle componenti di comunicare tra loro durante la rotazione.

  • Il processo di rotazione del cluster utente riavvia il server API, i processi del piano di controllo e i pod nel cluster utente.

  • I carichi di lavoro potrebbero essere riavviati e ripianificati durante la rotazione delle autorità di certificazione.

  • Per le configurazioni dei cluster ad alta disponibilità, sono previsti brevi periodi di inattività del piano di controllo durante la rotazione delle CA.

  • Le operazioni di gestione dei cluster utente non sono consentite durante la rotazione delle CA.

  • La durata della rotazione delle CA dei cluster utente dipende dalle dimensioni del cluster. Ad esempio, la rotazione della CA del cluster utente potrebbe richiedere circa due ore per essere completata per un cluster utente con un piano di controllo e 50 nodi worker.

Limitazioni

In anteprima, la funzionalità di rotazione dell'autorità di certificazione del cluster utente presenta le seguenti limitazioni:

  • La rotazione delle CA dei cluster è supportata solo per i cluster utente.

  • La rotazione delle CA dei cluster utente è limitata solo alla CA dei cluster. La rotazione delle CA dei cluster utente non ruota le CA della etcd o delle CA proxy proxy per il tuo cluster utente.

  • La rotazione delle CA dei cluster utente non aggiorna i certificati emessi manualmente da un amministratore, anche se la CA del cluster firma i certificati. Aggiorna e ridistribuisci gli eventuali certificati emessi manualmente al termine della rotazione delle CA dei cluster utente.

  • Una volta avviata, la rotazione delle CA dei cluster utente non può essere messa in pausa o rollback.

  • La rotazione delle CA dei cluster è una funzionalità di anteprima e le relative interfacce e operazioni sono soggette a modifica.

Avvia una rotazione di CA del cluster

Utilizza il comando seguente per avviare il processo di rotazione delle CA:

bmctl update credentials --cluster-ca --cluster-name USER_CLUSTER_NAME \
    --kubeconfig ADMIN_KUBECONFIG

Sostituisci quanto segue:

  • USER_CLUSTER_NAME: il nome del cluster utente.
  • ADMIN_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

Il comando bmctl esce dopo la rotazione corretta della CA del cluster e viene generato un nuovo file kubeconfig. Il percorso standard del file kubeconfig è bmctl-workspace/USER_CLUSTER_NAME/USER_CLUSTER_NAME-kubeconfig.

Risoluzione dei problemi di rotazione delle CA di un cluster

Il comando bmctl update credentials mostra l'avanzamento della rotazione delle CA dei cluster. Il file update-credentials.log associato viene salvato nella seguente directory con timestamp:

bmctl-workspace/USER_CLUSTER_NAME/log/update-credentials-TIMESTAMP