Gestione di NSX ALB Advanced Load Balancer

Tanzu Kubernetes Grid consente di eseguire varie operazioni di gestione nella distribuzione di NSX Advanced Load Balancer (ALB).

Modifica dei certificati del controller Avi

Il certificato del controller Avi scade periodicamente. In Tanzu Kubernetes Grid, è possibile aggiornare il certificato del controller Avi quando scade. Prima di aggiornare il certificato nei cluster, verificare che il certificato esista nel controller Avi.

Per aggiornare il certificato del controller Avi:

  1. Ricodificare i dati del certificato in una stringa codificata in base64.
  2. Applicare al segreto del certificato la patch con la nuova stringa:

    kubectl patch secret/avi-controller-ca -n tkg-system-networking -p '{"data": {"certificateAuthorityData": "<base64 encoded string>"}}'
    

Modificare le credenziali del controller Avi

Per aggiornare le credenziali del controller Avi:

  1. Ricodificare le credenziali in una stringa codificata in base64.

  2. Applicare patch al segreto del certificato con la nuova stringa:

    kubectl edit secret avi-controller-credentials -n tkg-system-networking
    
  3. Nell'editor di testo predefinito visualizzato, aggiornare le credenziali con le nuove credenziali codificate in base64.

Aggiornamento dell'indirizzo IP o dell'FQDN del controller AVI nel cluster di gestione e nei relativi cluster del carico di lavoro

In Tanzu Kubernetes Grid, è possibile aggiornare l'indirizzo IP o l'FQDN del controller AVI in un cluster di gestione esistente e nei relativi cluster del carico di lavoro.

Prerequisiti

  • Assicurarsi di aver assegnato un certificato di sicurezza al controller AVI, come descritto in Assegnazione di un certificato al controller. Il campo Nome alternativo oggetto (Subject Alternative Name) nel certificato deve includere il nuovo indirizzo IP o l'FQDN del controller Avi.

  • Nel contesto del cluster di gestione, eseguire il comando kubectl get pods e prendere nota del nome del pod dell'operatore AKO nell'output. Ad esempio, ako-operator-controller-manager-7b74d8b9f9-nlz6n.

Procedura

  1. Nella CLI di Tanzu, eseguire il comando seguente per aggiungere il nuovo certificato:

    kubectl edit secret avi-controller-ca -n tkg-system-networking
    
  2. Nell'interfaccia utente del controller, completare i passaggi seguenti:

    a. Passare ad Amministrazione (Administration) > Controller > Nodi (Nodes) e fare clic su Modifica (Edit).

    b. Nel campo IP cluster controller (Controller Cluster IP), aggiornare l'indirizzo IP o l'FQDN.

  3. Nell'oggetto CR akodeploymentconfig per il cluster del carico di lavoro, sostituire il valore corrispondente al campo controller con il nuovo indirizzo IP o FQDN del controller Avi:

    kubectl edit adc install-ako-for-all
    
  4. Nell'oggetto CR akodeploymentconfig nel cluster di gestione, sostituire il valore corrispondente al campo controller con il nuovo indirizzo IP o nome di dominio completo (FQDN) del controller Avi:

    kubectl edit adc install-ako-for-management-cluster
    
  5. Eliminare il pod dell'operatore AKO:

    kubectl delete pod AKO-OPERATOR-POD -n tkg-system-networking
    

    Dove AKO-OPERATOR-POD è il nome del pod dell'operatore AKO, ad esempio ako-operator-controller-manager-7b74d8b9f9-nlz6n.

  6. Eliminare il pod di AKO:

    kubectl delete pod ako-0 -n avi-system
    

I pod di AKO e dell'operatore AKO vengono riavviati e il nuovo indirizzo IP o FQDN viene aggiornato nel cluster di gestione e nei relativi cluster del carico di lavoro.

Visualizzazione dell'oggetto CR AKODeploymentConfig per un cluster

Per sapere quale oggetto CR AKODeploymentConfig è in uso nel cluster corrente, eseguire il comando seguente:

kubectl --context={management cluster kubeconfig context} get cluster --show-labels

Nell'output, esaminare il campo networking.tkg.tanzu.vmware.com/avi=<AKODeploymentConfig-NAME> per visualizzare l'oggetto AKODeploymentConfig selezionato dal cluster.

Convalida dell'input della configurazione di NSX Advanced Load Balancer

Durante la configurazione di NSX Advanced Load Balancer, Tanzu Kubernetes Grid convalida l'input specificato per i campi della configurazione. Quando il sistema rileva input errati, genera errori. Se il campo AVI_ENABLE è impostato su true durante la distribuzione di un cluster di gestione, la CLI di Tanzu esegue una convalida nell'input specificato per i campi seguenti:

  • AVI_CONTROLLER
  • AVI_USERNAME
  • AVI_PASSWORD
  • AVI_CA_DATA_B64
  • AVI_CLOUD_NAME
  • AVI_SERVICE_ENGINE_GROUP
  • AVI_DATA_NETWORK
  • AVI_DATA_NETWORK_CIDR
  • AVI_MANAGEMENT_CLUSTER_SERVICE_ENGINE_GROUP
  • AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_NAME
  • AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_NAME
  • AVI_CONTROL_PLANE_NETWORK
  • AVI_MANAGEMENT_CLUSTER_CONTROL_PLANE_VIP_NETWORK_CIDR
  • AVI_MANAGEMENT_CLUSTER_VIP_NETWORK_CIDR
  • AVI_CONTROL_PLANE_NETWORK_CIDR

Quando si crea un oggetto AKODeploymentConfig, Tanzu Kubernetes Grid verifica che:

  • Il campo "clusterSelector" non sia vuoto (applicabile all'oggetto AKODeploymentConfig non predefinito)
  • Nei campi spec.AdminCredentialRef, spec.CertificateAuthorityRef e spec.Controller sia presente l'input corretto per la connessione al controller AVI.
  • spec.CloudName esista o utilizzi il client AVI che è stato inizializzato.
  • spec.ServiceEngineGroup esista o utilizzi il client AVI che è stato inizializzato.
  • spec.ControlPlaneNetwork.Name esista o utilizzi il client AVI che è stato inizializzato.
  • spec.DataNetwork.Name esista o utilizzi il client AVI che è stato inizializzato.
  • spec.ControlPlaneNetwork.Name abbia un profilo IPAM configurato oppure non utilizzi il client AVI inizializzato.
  • spec.ControlPlaneNetwork.CIDR abbia un formato valido.
  • spec.DataNetwork.CIDR abbia un formato valido.

Quando si aggiorna un oggetto AKODeploymentConfig, Tanzu Kubernetes Grid verifica che spec.ClusterSelector e spec.ControlPlaneNetwork rimangano invariati. Non è possibile eliminare il file AKODeploymentConfig install-ako-for-management-cluster.

check-circle-line exclamation-circle-line close-line
Scroll to top icon