Esegui il deployment di carichi di lavoro di terze parti su Config Controller

Questa pagina spiega come eseguire il deployment dei tuoi carichi di lavoro sui cluster di Config Controller.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti attività:

  1. Configura Config Controller.
  2. Se il cluster Config Controller utilizza una versione di GKE precedente alla 1.27, esegui l'upgrade del cluster alla versione 1.27 o successiva.

Abilita il provisioning automatico dei nodi nei cluster Standard

Devi abilitare il provisioning automatico dei nodi per eseguire il deployment dei tuoi carichi di lavoro sui cluster di Config Controller. Ciò consente la separazione dei carichi di lavoro tra i carichi di lavoro e quelli gestiti da Google installati per impostazione predefinita nei cluster di Config Controller.

Se usi 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 questo 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, segui questi passaggi:

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud.

    Vai a Google Kubernetes Engine

  2. Fai clic sul nome del cluster.

  3. Nella sezione Automazione, per Provisioning automatico dei nodi, fai clic su Modifica.

  4. Seleziona la casella di controllo Abilita provisioning automatico dei nodi.

  5. Imposta l'utilizzo minimo e massimo di CPU e memoria per il cluster.

  6. Fai clic su Salva modifiche.

Per ulteriori informazioni sulla configurazione del provisioning automatico dei nodi, ad esempio sull'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 abilita automaticamente GKE Sandbox per fornire un ulteriore livello di sicurezza per impedire che il codice non attendibile colpisca il kernel dell'host sui nodi del cluster. Per ulteriori informazioni, consulta Informazioni su GKE Sandbox.

Per eseguire il deployment di un carico di lavoro, puoi scrivere un file manifest del carico di lavoro ed eseguire questo comando:

kubectl apply -f WORKLOAD_FILE

Sostituisci WORKLOAD_FILE con il file manifest, ad esempio my-app.yaml.

Verifica che il carico di lavoro sia in esecuzione sui nodi di cui è stato eseguito il provisioning automatico:

  1. Recupera l'elenco dei nodi creati per il tuo carico di lavoro:

    kubectl get nodes
  2. Ispeziona un nodo specifico:

    kubectl get nodes NODE_NAME -o yaml

    Sostituisci NODE_NAME con il nome del nodo che vuoi ispezionare.

Limitazioni

  • GKE Sandbox: GKE Sandbox funziona bene con molte applicazioni, ma non con tutte. Per ulteriori informazioni, consulta le 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 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 un breve periodo di tempo, il piano di controllo del cluster potrebbe non essere più disponibile fino a quando il traffico non diminuisce.
  • Ridimensionamento del piano di controllo: GKE ridimensiona automaticamente il piano di controllo in base alle esigenze. Se il carico di lavoro causa un forte aumento 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 quote e limiti di GKE e non superarli.
  • Accesso di rete al piano di controllo e ai nodi: Config Controller utilizza nodi privati con reti autorizzate master abilitate, Endpoint privato abilitato e Accesso pubblico disabilitato. Per ulteriori informazioni, consulta Sicurezza della rete di GKE.

Passaggi successivi