Questa pagina spiega come eseguire il deployment dei tuoi carichi di lavoro nei cluster di Config Controller.
Questa pagina è rivolta agli amministratori IT e agli operatori che gestiscono il ciclo di vita dell'infrastruttura tecnologica di base e pianificano la capacità, nonché eseguono il deployment di app e servizi in produzione. Per scoprire di più sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei Google Cloud contenuti, consulta Ruoli e attività utente comuni di GKE Enterprise.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Configura Config Controller.
- Se il cluster Config Controller è in una versione GKE precedente alla 1.27, esegui l'upgrade del cluster alla versione 1.27 o successiva.
Abilita il provisioning automatico dei nodi sui cluster standard
Devi abilitare il provisioning automatico dei nodi per eseguire il deployment dei tuoi carichi di lavoro sui cluster Config Controller. In questo modo, i carichi di lavoro vengono separati dai carichi di lavoro gestiti da Google installati per impostazione predefinita sui cluster Config Controller.
Se utilizzi i cluster Autopilot, non devi abilitare il provisioning automatico dei nodi perché GKE gestisce automaticamente la scalabilità e il provisioning dei nodi.
gcloud
Per abilitare il provisioning automatico dei nodi, esegui il seguente comando:
gcloud container clusters update CLUSTER_NAME \ --enable-autoprovisioning \ --min-cpu MINIMUM_CPU \ --min-memory MIMIMUM_MEMORY \ --max-cpu MAXIMUM_CPU \ --max-memory MAXIMUM_MEMORY \ --autoprovisioning-scopes=https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring,https://www.googleapis.com/auth/devstorage.read_only
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del cluster Config Controller.MINIMUM_CPU
: il numero minimo di core nel cluster.MINIMUM_MEMORY
: il numero minimo di gigabyte di memoria nel cluster.MAXIMUM_CPU
: il numero massimo di core nel cluster.MAXIMUM_MEMORY
: il numero massimo di gigabyte di memoria nel cluster.
Console
Per abilitare il provisioning automatico dei nodi, svolgi i passaggi che seguono:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Fai clic sul nome del cluster.
Nella sezione Automazione, in Provisioning automatico dei nodi, fai clic su
Modifica.Seleziona la casella di controllo Abilita provisioning automatico dei nodi.
Imposta l'utilizzo minimo e massimo di CPU e memoria per il cluster.
Fai clic su Salva modifiche.
Per ulteriori informazioni sulla configurazione del provisioning automatico dei nodi, ad esempio l'impostazione dei valori predefiniti, consulta Configurare il provisioning automatico dei nodi.
Esegui il deployment del carico di lavoro
Quando esegui il deployment dei carichi di lavoro, Config Controller attiva automaticamente GKE Sandbox per fornire un ulteriore livello di sicurezza che impedisca al codice non attendibile di influire sul kernel host dei nodi del cluster. Per ulteriori informazioni, consulta Informazioni sulla sandbox GKE.
Puoi eseguire il deployment di un carico di lavoro scrivendo un file manifest del carico di lavoro, quindi eseguendo il seguente comando:
kubectl apply -f WORKLOAD_FILE
Sostituisci WORKLOAD_FILE
con il file manifest, ad esempio my-app.yaml
.
Verifica che il tuo carico di lavoro sia in esecuzione sui nodi di provisioning automatico:
Recupera l'elenco dei nodi creati per il tuo carico di lavoro:
kubectl get nodes
Per ispezionare un nodo specifico:
kubectl get nodes
NODE_NAME
-o yamlSostituisci
NODE_NAME
con il nome del nodo da ispezionare.
Limitazioni
- GKE Sandbox: GKE Sandbox funziona bene con molte applicazioni, ma non con tutte. Per ulteriori informazioni, consulta Limitazioni di GKE Sandbox.
- Sicurezza del piano di controllo: quando concedi l'autorizzazione per i tuoi carichi di lavoro, utilizza il principio del privilegio minimo per concedere solo le autorizzazioni necessarie. Se il tuo carico di lavoro viene compromesso, può utilizzare autorizzazioni eccessivamente permissive per modificare o eliminare le risorse Kubernetes.
- Disponibilità del piano di controllo: se i carichi di lavoro causano un aumento del traffico in breve tempo, il piano di controllo del cluster potrebbe non essere disponibile finché il traffico non diminuisce.
- Ridimensionamento del piano di controllo: GKE ridimensiona automaticamente il piano di controllo in base alle esigenze. Se il tuo carico di lavoro causa un aumento significativo del carico (ad esempio, l'installazione di migliaia di oggetti CRD), il ridimensionamento automatico di GKE potrebbe non essere in grado di tenere il passo con l'aumento del carico.
- Quote: quando esegui il deployment dei carichi di lavoro, devi conoscere le quote e i limiti di GKE e non superarli.
- Accesso alla rete al control plane e ai nodi: Config Controller utilizza i nodi privati con le reti autorizzate master abilitate, l'endpoint privato abilitato e l'accesso pubblico disabilitato. Per ulteriori informazioni, consulta Sicurezza di rete di GKE.
Passaggi successivi
- Scopri di più sulle best practice di Config Controller: scalabilità di Config Controller, sharding di Config Controller e configurazione di Config Controller per l'alta disponibilità
- Risolvere i problemi di Config Controller
- Monitora Config Controller