Questa pagina spiega cos'è un profilo istanza AWS IAM, perché è importante nel contesto di GKE su AWS e come aggiornarlo.
Che cos'è un profilo istanza AWS IAM?
Un profilo istanza è un concetto specifico di AWS. È costituito da un insieme di credenziali che un'istanza Amazon EC2 utilizza per accedere a varie risorse AWS. Più nello specifico, un profilo istanza è un tipo di contenitore per un ruolo IAM che può essere collegato a un'istanza EC2. Un profilo istanza conferisce autorizzazioni all'istanza EC2, consentendole di interagire con vari servizi AWS in base alle autorizzazioni definite. Per saperne di più, vedi Utilizzo dei profili delle istanze.
Come vengono utilizzati i profili istanza in GKE su AWS?
Ogni control plane e ogni pool di nodi all'interno di un cluster GKE su AWS è associato a un profilo istanza AWS univoco. I profili istanza in GKE su AWS hanno un duplice scopo:
- Un profilo istanza concede a GKE su AWS le autorizzazioni necessarie per gestire le risorse AWS. Ad esempio, forniscono al gestore della scalabilità automatica dei cluster le autorizzazioni necessarie per scalare il cluster aggiungendo o rimuovendo istanze EC2 in base alle esigenze del carico di lavoro.
- Un profilo dell'istanza concede alle istanze EC2 l'accesso ai servizi Google Cloud .
Ad esempio,
kubelet
, in esecuzione su una macchina AWS, richiede autorizzazioni specifiche per fornire le credenziali di pull delle immagini acontainerd
. Queste credenziali sono necessarie per accedere ed eseguire il pull delle immagini da Artifact Registry privato di Google o da Container Registry. Nel contesto di GKE su AWS, il profilo dell'istanza EC2 associato al cluster è configurato per rappresentare i service agent di Google Machine (ad esempio il service agent di Node Pool Machine o il service agent di Control Plane Machine). Questa rappresentazione consente alle istanze EC2 del cluster di autenticarsi automaticamente con Artifact Registry o Container Registry di Google.
Aggiorna il profilo dell'istanza
L'aggiornamento del profilo dell'istanza prevede la creazione di un nuovo profilo dell'istanza in AWS con autorizzazioni specifiche e la sua associazione al cluster o apool di nodiol GKE su AWS.
Per aggiornare correttamente il profilo dell'istanza per il cluster o pool di nodi, segui questi passaggi:
- Crea un profilo dell'istanza IAM per le tue istanze Amazon EC2 e aggiungi il ruolo IAM necessario al profilo dell'istanza. Per maggiori dettagli, vedi Utilizzare i profili istanza.
Collega il nuovo profilo dell'istanza al cluster GKE su AWS o al pool di nodi eseguendo il seguente comando in Google Cloud CLI:
Collega il profilo al cluster
gcloud container aws clusters update CLUSTER_NAME \ --update-instance-profile \ --instance-profile-name NEW_INSTANCE_PROFILE_NAME \ ...
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del tuo clusterNEW_INSTANCE_PROFILE_NAME
: il nome del nuovo profilo dell'istanza AWS che hai creato
Collega il profilo al pool di nodi
gcloud container aws node-pools update NODE_POOL_NAME \ --update-instance-profile \ --instance-profile-name NEW_INSTANCE_PROFILE_NAME \ ...
Sostituisci quanto segue:
NODE_POOL_NAME
: il nome del tuo pool di nodiNEW_INSTANCE_PROFILE_NAME
: il nome del nuovo profilo dell'istanza AWS che hai creato
Questi comandi mostrano solo i flag pertinenti per l'aggiornamento del profilo dell'istanza, ma devi fornire flag aggiuntivi per eseguire il comando
update
. Per maggiori dettagli, vedi Aggiornare i parametri del cluster AWS o Aggiornare un node pool.
Metodo di aggiornamento errato
Comprendere il modo errato di aggiornare un profilo di istanza è importante perché è un errore facile da commettere che può causare errori del cluster.
Il modo errato per aggiornare un profilo istanza è modificare direttamente un profilo istanza esistente utilizzando la Console di gestione AWS o AWS CLI. Queste modifiche possono interrompere l'interazione di GKE su AWS con le risorse AWS. GKE su AWS si aspetta che i profili istanza rimangano come erano quando sono stati collegati per la prima volta al cluster o apool di nodiol. La modifica al di fuori degli strumenti di gestione di GKE su AWS può creare una mancata corrispondenza con l'ID del ruolo IAM nel profilo dell'istanza. Questa mancata corrispondenza può causare un errore del cluster.
L'approccio descritto nella sezione precedente garantisce che gli aggiornamenti vengano eseguiti senza interrompere l'integrazione di GKE su AWS con AWS.