I cluster alpha sono cluster Google Kubernetes Engine (GKE) di breve durata che abilitano le API e le funzionalità alpha di Kubernetes e possono eseguire versioni alpha delle prossime versioni secondarie. Questo documento mostra come creare un cluster alpha, attivare o disattivare feature gate specifici ed eseguire versioni di patch alpha nel canale di rilascio rapido. I cluster Alpha sono destinati agli early adopter e agli amministratori della piattaforma che vogliono sperimentare le funzionalità e le versioni di Kubernetes in arrivo.
Per saperne di più sul funzionamento dei cluster GKE e su come scegliere il tipo di cluster GKE da creare, consulta Architettura dei cluster GKE e Informazioni sulle scelte di configurazione dei cluster.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Abilita l'API Google Kubernetes Engine. Abilita l'API Google Kubernetes Engine
- Per utilizzare Google Cloud CLI per questa attività,
installala e poi
inizializza
gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima
versione eseguendo il comando
gcloud components update. Le versioni precedenti di gcloud CLI potrebbero non supportare l'esecuzione dei comandi in questo documento.
- Esamina le limitazioni dei cluster alpha.
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per creare cluster alpha e interagire con loro,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore di cluster Kubernetes Engine (roles/container.clusterAdmin) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Configura i service account IAM per GKE
GKE utilizza i service account IAM collegati ai nodi per eseguire attività di sistema come il logging e il monitoraggio. Come minimo, questi service account nodo
devono avere il ruolo
Kubernetes Engine Default Node Service Account
(roles/container.defaultNodeServiceAccount) sul tuo progetto. Per impostazione predefinita,
GKE utilizza l'account di servizio predefinito di Compute Engine,
che viene creato automaticamente nel tuo progetto, come service account del nodo.
Per concedere il ruolo roles/container.defaultNodeServiceAccount al account di servizio predefinito di Compute Engine, completa i seguenti passaggi:
Console
- Vai alla pagina di benvenuto:
- Nel campo Numero progetto, fai clic su Copia negli appunti.
- Vai alla pagina IAM:
- Fai clic su Concedi l'accesso.
- Nel campo Nuove entità, specifica il seguente valore:
SostituisciPROJECT_NUMBER-compute@developer.gserviceaccount.comPROJECT_NUMBERcon il numero di progetto che hai copiato. - Nel menu Seleziona un ruolo, seleziona il ruolo Service account predefinito del nodo Kubernetes Engine.
- Fai clic su Salva.
gcloud
- Trova il numero del tuo progetto Google Cloud :
gcloud projects describe PROJECT_ID \ --format="value(projectNumber)"
Sostituisci
PROJECT_IDcon l'ID progetto.L'output è simile al seguente:
12345678901
- Concedi il ruolo
roles/container.defaultNodeServiceAccountal account di servizio predefinito di Compute Engine:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \ --role="roles/container.defaultNodeServiceAccount"
Sostituisci
PROJECT_NUMBERcon il numero di progetto del passaggio precedente.
Crea un cluster alpha
Puoi creare un cluster alpha utilizzando la console Google Cloud o gcloud CLI. Ti consigliamo di utilizzare gcloud CLI per i seguenti motivi:
- Puoi registrare il cluster nel canale di rilascio rapido, che è consigliato per i cluster alpha.
Puoi specificare i gate delle funzionalità alpha o beta da attivare o disattivare in modo diverso dai valori predefiniti.
Console
Nella console Google Cloud , vai alla pagina Crea un cluster Kubernetes.
Nella sezione Impostazioni di base del cluster, completa quanto segue:
- Inserisci il nome del cluster.
- Per il tipo di località, seleziona A livello di zona, quindi seleziona la zona per il tuo cluster.
- Se stai creando un cluster multizona, seleziona la casella di controllo Specifica località dei nodi predefinite e poi scegli le zone aggiuntive in cui vuoi che vengano eseguiti i pool di nodi.
Nell'elenco a discesa Canale di rilascio, seleziona Nessun canale (deprecato).
(Facoltativo) Specifica una versione del control plane dall'elenco a discesa Versione.
(Facoltativo) Configura altre impostazioni per il nuovo cluster.
(Facoltativo) Se vuoi registrare il nuovo cluster in un parco risorse, vai alla sezione Impostazioni avanzate e segui le istruzioni della console Google Cloud per creare e registrare un nuovo cluster per completare la registrazione del cluster.
Nel riquadro di navigazione, in Pool di nodi, fai clic su default-pool.
Nella sezione Dettagli del pool di nodi, completa quanto segue:
- Inserisci un Nome per il pool di nodi predefinito.
- (Facoltativo) Scegli la versione di Node.
- Inserisci il numero di nodi da creare nel cluster. Devi disporre di una quota di risorse disponibile per i nodi e le relative risorse (ad esempio route firewall).
- (Facoltativo) Puoi scegliere di disattivare gli upgrade automatici dei nodi, ma ti consigliamo di esaminare le considerazioni prima di disattivare gli upgrade automatici dei nodi prima di scegliere questa opzione.
- Deseleziona Abilita upgrade automatico e Abilita riparazione automatica.
Nel riquadro di navigazione, in Pool di nodi, fai clic su Nodi.
Dall'elenco a discesa Tipo di immagine, seleziona l'immagine del nodo.
Scegli la configurazione macchina predefinita da utilizzare per le istanze. Ogni tipo di macchina viene fatturato in modo diverso. Il tipo di macchina predefinito è
e2-medium. Per informazioni sui prezzi dei tipo di macchina, consulta il listino prezzi dei tipi di macchine.Nell'elenco a discesa Tipo di disco di avvio, seleziona il tipo di disco.
Inserisci la Dimensione del disco di avvio.
(Facoltativo) Nel riquadro di navigazione, in Pool di nodi, fai clic su Sicurezza.
- (Facoltativo) Specifica un account di servizio IAM personalizzato per i tuoi nodi:
- Nella pagina Impostazioni avanzate, espandi la sezione Sicurezza.
- Nel menu Service account, seleziona il account di servizio che preferisci.
Ti consigliamo vivamente di specificare un account di servizio IAM con privilegi minimi che i nodi possano utilizzare al posto del account di servizio predefinito di Compute Engine. Per scoprire come creare un account di servizio con privilegi minimi, consulta Utilizza un service account con privilegio minimo minimi.
Nel riquadro di navigazione, fai clic su Impostazioni avanzate.
Nella riga Funzionalità alpha di Kubernetes, fai clic su edit Modifica configurazione.
Seleziona Abilita le funzionalità alpha di Kubernetes in questo cluster.
Leggi e accetta l'avviso selezionando Ho compreso le conseguenze.
Fai clic su Salva.
Fai clic su Crea.
gcloud
Esegui questo comando:
gcloud container clusters create CLUSTER_NAME \
--release-channel=CHANNEL \
--enable-kubernetes-alpha \
--no-enable-autorepair \
--no-enable-autoupgrade \
--location CONTROL_PLANE_LOCATION [\
--alpha-cluster-feature-gates FEATURE_GATES_LIST]
Sostituisci quanto segue:
CLUSTER_NAME: il nome che scegli per il cluster.CHANNEL: il tipo di canale di rilascio. Questo valore deve essere uno dei seguenti:rapid: esegui la registrazione al canale di rilascio rapido, che è il canale consigliato per i cluster alpha.regular: registrati al canale di rilascio regolare.stable: registrati al canale di rilascio stabile.none: non registrarti a un canale di rilascio. Questa opzione è deprecata e verrà rimossa.
CONTROL_PLANE_LOCATION: la località di Compute Engine del control plane del tuo cluster. Fornisci una regione per i cluster regionali o una zona per i cluster zonali.--cluster-version VERSION: (facoltativo) specifica la versione di GKE da eseguire nel cluster. Se omesso, il cluster esegue la versione della patch predefinita per la creazione del cluster per il canale di rilascio selezionato, come mostrato nella tabella Versioni attuali.FEATURE_GATES_LIST: l'elenco dei feature gate da attivare o disattivare in modo diverso dai valori predefiniti. Ogni stringa rappresenta l'attivazione o la disattivazione di un feature gate. Ad esempio,featureX=true, featureY=false. Se ometti questo flag, GKE crea il cluster utilizzando i valori predefiniti per GKE, il che significa che tutti i feature gate alpha disponibili con la versione di Kubernetes sono abilitati. Sono abilitati anche i feature gate beta abilitati per impostazione predefinita da Kubernetes. Per ulteriori informazioni su quali feature gate sono disponibili con versioni specifiche e quali funzionalità beta sono abilitate per impostazione predefinita, consulta Feature gate per funzionalità alpha o beta nella documentazione di Kubernetes. Quando includi questo flag, modifichi i feature gate abilitati rispetto a come sono impostati per impostazione predefinita da GKE. Per saperne di più, consulta Feature gate e cluster alpha.
Ti consigliamo vivamente di specificare un account di servizio IAM con privilegi minimi che i nodi possono utilizzare al posto delaccount di serviziot predefinito di Compute Engine. Per scoprire come creare un account di servizio con privilegi minimi, vedi Utilizzare un service account con privilegio minimo minimi.
Per specificare un account di servizio personalizzato in gcloud CLI, aggiungi il seguente flag al comando:
--service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.comSostituisci SERVICE_ACCOUNT_NAME con il nome del service account con privilegi minimi.
Ti viene chiesto di confermare un avviso che indica che il cluster alpha non viene eseguito l'upgrade e viene eliminato dopo 30 giorni:
This will create a cluster with Kubernetes alpha features enabled.
- This cluster will not be covered by the GKE SLA and should
not be used for production workloads.
- You will not be able to upgrade the master or nodes.
- The cluster will be deleted after 30 days.
Interagire con un cluster utilizzando kubectl
Dopo aver creato un cluster, devi
configurare kubectl
prima di poter interagire con il cluster dalla riga di comando.
Controllare lo stato del feature gate per un cluster alpha
Con i cluster alpha, puoi attivare o disattivare selettivamente i feature gate. Per saperne di più, consulta Feature gate e cluster alpha.
Per controllare lo stato del feature gate per il tuo cluster, consulta Controllare lo stato del feature gate.
Esegui le versioni patch alpha nei cluster alpha
I cluster alpha registrati nel canale di rilascio rapido possono eseguire versioni delle patch alpha delle prossime versioni secondarie di Kubernetes. Queste versioni alpha forniscono l'accesso in anteprima per testare le funzionalità e le modifiche nella versione secondaria successiva prima che GKE renda disponibile questa versione secondaria per tutti i cluster nel canale rapido.
Per identificare ed eseguire le versioni delle patch alpha nei cluster alpha:
Identifica le versioni alpha disponibili nel canale rapido:
gcloud container get-server-config \ --flatten="channels" --filter="channels.channel=RAPID" \ --location=LOCATION \ --format="yaml(channels.channel,channels.previewVersions)"Sostituisci
LOCATIONcon la regione in cui intendi creare il cluster alpha, ad esempious-central1.L'output è simile al seguente:
channels: channel: RAPID previewVersions: - 1.37.0-gke.1173000+previewSe l'output è vuoto, le versioni alpha non sono disponibili in quella regione. Prova con un'altra regione o consulta le note di rilascio del canale rapido per informazioni sulla versione.
Crea il cluster alpha:
gcloud container clusters create CLUSTER_NAME \ --release-channel=rapid \ --enable-kubernetes-alpha \ --no-enable-autorepair \ --no-enable-autoupgrade \ --location=CONTROL_PLANE_LOCATION \ --cluster-version=ALPHA_VERSIONSostituisci quanto segue:
CLUSTER_NAME: un nome per il cluster alpha.CONTROL_PLANE_LOCATION: la regione o la zona del control plane del cluster. Utilizza la stessa regione in cui hai verificato la disponibilità della versione alpha nel passaggio precedente o una zona in quella regione.ALPHA_VERSION: la versione specifica della patch alpha da eseguire nel cluster, dall'output del passaggio precedente.
Controllare quando scade un cluster alpha
Per verificare quando scadono i cluster alpha, esegui questo comando:
gcloud container clusters list
Risolvi i problemi relativi alla creazione di un cluster alpha con feature gate
Se provi a creare un cluster con un feature gate non valido o non supportato per la versione di Kubernetes del tuo cluster, il cluster può essere creato in uno stato di errore.
In Cloud Logging puoi trovare un messaggio simile al seguente:
failed to set feature gates from initial flags-based config:
unrecognized feature gate: UNRECOGNIZED_FEATURE_GATE_NAME
Se si verifica questo errore, elimina il cluster non riuscito. Controlla l'ortografia e la compatibilità dei feature gate con la versione di Kubernetes specificata. Poi prova a creare di nuovo il cluster.
Passaggi successivi
- Scopri di più sui tipi di cluster che puoi creare.
- Scopri come gestire i cluster.
- Scopri come eliminare i cluster.