Actualiza las credenciales de vCenter de tus clústeres

A partir de la versión 1.3.1 de GKE On-Prem, puedes actualizar las credenciales de vCenter de tus clústeres de administrador y de usuario con el comando gkectl update credentials vsphere.

En principio, cada clúster de administrador y de usuario está configurado para usar el nombre de usuario y la contraseña de vCenter que usaste a fin de crear esos clústeres. Si necesitas actualizar las credenciales de vCenter o transferir la propiedad administrativa a otra cuenta de usuario de vSphere, puedes actualizar el archivo de configuración del clúster y, luego, usar el comando gkectl update credentials vsphere para implementar esos cambios.

Ejemplo de configuración de nombre de usuario y contraseña de vCenter:

...
vcenter:
  credentials:
    ...
    username: "vCenter-username@vsphere.local"
    password: "vCenter-user-password"
...

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos antes de actualizar las credenciales de vCenter:

  • Solo se admiten la versión 1.3.1 o una posterior de los clústeres.

  • Por el momento, el comando gkectl update credentials vsphere solo es compatible con el username y la password de vCenter de tu clúster. Se ignoran todos los demás cambios que existen en el archivo de configuración.

  • Las credenciales de vCenter que deseas agregar a un clúster ya deben existir. Obtén más información sobre las funciones de vCenter y los privilegios de usuario.

Actualiza las credenciales de los clústeres

Sigue estos pasos para actualizar las credenciales de vCenter en los clústeres:

  1. Obtén el nombre de usuario y la contraseña de las credenciales de vCenter existentes para las que deseas configurar los clústeres de administrador o de usuario.

  2. Ejecuta el siguiente comando para establecer una conexión SSH a su estación de trabajo de administrador:

    ssh -i ~/.ssh/vsphere_workstation ubuntu@[IP_ADDRESS]
    

    En el ejemplo anterior, [IP_ADDRESS] es la dirección IP de tu estación de trabajo de administrador.

  3. Abre el archivo de configuración en un editor.

    Considera crear una copia que puedas modificar y usar solo para este propósito. Por ejemplo: vcenter-creds-config.yaml

  4. Modifica el archivo de configuración:

    1. Según si estás actualizando el clúster de administrador o de usuario, debes quitar una de las siguientes secciones para modificar el archivo de configuración:

      • Para actualizar el clúster de usuario, quita la sección admincluster.

        Deja la sección usercluster en la configuración, pero quita todo el contenido de la sección admincluster. Por ejemplo:

        admincluster:
          vcenter:
            network: ""
          bigip:
            ...
          podiprange: ""

      • Para actualizar el clúster de administrador, quita la sección usercluster.

        Deja la sección admincluster en la configuración, pero quita todo el contenido de la sección usercluster. Por ejemplo:

        usercluster:
          vcenter:
            network: ""
          bigip:
            ...
          clustername: ""
          masternode:
            ...
          podiprange: ""

    2. Actualiza los atributos username y password en vCenter.credentials a fin de incluir las credenciales de vCenter que deseas configurar para el clúster. Por ejemplo:

      gcp:
        whitelistedServiceAccountKeyPath: "my-key-folder/whitelisted-key.json"
      vCenter:
        credentials:
          address: "203.0.113.1"
          username: "vCenter-user-account@vsphere.local"
          password: "user-account-password"
        datacenter: "MY-DATACENTER"
        datastore: "MY-DATASTORE"
        cluster: "MY-CLUSTER"
        ...
  5. Ejecuta el comando gkectl update credentials vsphere para implementar los cambios en el clúster:

    gkectl update credentials vsphere \
    --config [VCENTER_CREDS_CONFIG.YAML] \
    --kubeconfig [CLUSTER_KUBECONFIG] \
    --update-admin-cluster

    En el ejemplo anterior, se ilustra lo siguiente:

    • [VCENTER_CREDS_CONFIG.YAML]: Especifica el archivo de configuración que incluye las credenciales de vCenter que deseas implementar en el clúster. Ejemplo: vcenter-creds-config.yaml
    • [CLUSTER_KUBECONFIG]: Especifica el archivo kubeconfig del clúster de administrador que deseas actualizar. Ejemplo: kubeconfig

      Para el clúster de administrador, también debes incluir la marca --update-admin-cluster.

    • --update-admin-cluster: Es una marca obligatoria si implementas cambios en el clúster de administrador. Excluye esta marca cuando implementes cambios en el clúster de usuario

    Resultado: Las credenciales de vCenter modificadas se validan de inmediato en el servidor y se envía una confirmación a la terminal: “vsphere credentials updated successfully”. Si las credenciales nuevas no pueden acceder al servidor de vCenter, puedes editar username y password en el archivo de configuración y volver a implementar los cambios.

    Ejemplos:

    • Ejemplo de clúster de usuario: Para implementar cambios en las credenciales de vCenter en un clúster de usuario, ejecuta lo siguiente:

      gkectl update credentials vsphere \
      --config vcenter-creds-user-config.yaml --kubeconfig admin-cluster-kubeconfig

      Resultado:

      validating new credentials against vcenter
      restarted "deployment/clusterapi-controllers" in namespace "testcluster"
      restarted "deployment/kube-controller-manager" in namespace "testcluster"
      restarted "statefulsets/kube-apiserver" in namespace "testcluster"
      vsphere credentials updated successfully.
    • Ejemplo de clúster de administrador: Para implementar cambios en las credenciales de vCenter en un clúster de administrador, ejecuta lo siguiente:

      gkectl update credentials vsphere \
      --config vcenter-creds-admin-config.yaml --kubeconfig admin-cluster-kubeconfig \
      --update-admin-cluster

      Resultado:

      validating new credentials against vcenter
      restarted "deployment/clusterapi-controllers" in namespace "kube-system"
      vsphere credentials updated successfully.