Mettre à jour les identifiants vCenter de vos clusters

À partir de la version 1.3.1 de GKE On-Prem, vous pouvez mettre à jour les identifiants vCenter de vos clusters d'administrateur et d'utilisateur à l'aide de la commande gkectl update credentials vsphere.

Chaque cluster d'administrateur et d'utilisateur est initialement configuré pour utiliser le nom d'utilisateur et le mot de passe vCenter que vous avez utilisés pour créer ces clusters. Si vous devez mettre à jour vos identifiants vCenter ou transférer la propriété administrative vers un autre compte utilisateur vSphere, vous pouvez mettre à jour le fichier de configuration du cluster, puis exécuter la commande gkectl update credentials vsphere pour déployer ces modifications.

Exemple de configuration du nom d'utilisateur et du mot de passe vCenter :

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

Avant de commencer

Assurez-vous de remplir les conditions préalables suivantes avant de mettre à jour vos identifiants vCenter :

  • Seuls les clusters version 1.3.1 ou ultérieure sont compatibles.

  • La commande gkectl update credentials vsphere n'accepte actuellement que le nom d'utilisateur (username) et le mot de passe (password) vCenter de votre cluster. Toutes les autres modifications existant dans le fichier de configuration sont ignorées.

  • Les identifiants vCenter que vous souhaitez ajouter à un cluster doivent déjà exister. Apprenez-en plus sur les rôles et les droits d'utilisateur vCenter.

Mettre à jour les identifiants du cluster

Procédez comme suit pour mettre à jour les identifiants vCenter sur vos clusters :

  1. Obtenez le nom d'utilisateur et le mot de passe des identifiants vCenter existants sur lesquels vous souhaitez configurer vos clusters d'administrateur ou d'utilisateur.

  2. Connectez-vous en SSH à votre poste de travail administrateur en exécutant la commande suivante :

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

    [IP_ADDRESS] est l'adresse IP de votre poste de travail administrateur.

  3. Ouvrez votre fichier de configuration dans un éditeur.

    Envisagez de créer une copie que vous pouvez modifier et utiliser uniquement à cette fin. Par exemple : vcenter-creds-config.yaml

  4. Modifiez votre fichier de configuration :

    1. Selon que vous mettez à jour votre cluster d'administrateur ou votre cluster d'utilisateur, vous devez modifier votre fichier de configuration en supprimant l'une des sections suivantes :

      • Pour mettre à jour le cluster d'utilisateur, supprimez la section admincluster.

        Laissez la section usercluster dans votre configuration, mais supprimez tout le contenu de la section admincluster. Exemple :

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

      • Pour mettre à jour le cluster d'administrateur, supprimez la section usercluster.

        Laissez la section admincluster dans votre configuration, mais supprimez tout le contenu de la section usercluster. Exemple :

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

    2. Mettez à jour les attributs username et password sous vCenter.credentials afin d'inclure les identifiants vCenter que vous souhaitez définir pour le cluster. Exemple :

      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. Exécutez la commande gkectl update credentials vsphere pour déployer les modifications dans votre cluster :

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

    où :

    • [VCENTER_CREDS_CONFIG.YAML] spécifie le fichier de configuration qui inclut les identifiants vCenter que vous souhaitez déployer sur votre cluster. Exemple : vcenter-creds-config.yaml
    • [CLUSTER_KUBECONFIG] : spécifie le fichier kubeconfig du cluster d'administrateur que vous souhaitez mettre à jour. Exemple : kubeconfig

      Pour le cluster d'administrateur, vous devez également inclure l'option --update-admin-cluster.

    • --update-admin-cluster : option requise si vous déployez des modifications sur le cluster d'administrateur. Excluez cette option lorsque vous déployez des modifications sur le cluster d'utilisateur.

    Résultat : les identifiants vCenter modifiés sont immédiatement validés sur le serveur et une confirmation est envoyée au terminal : "vsphere credentials updated successfully". Si les nouveaux identifiants ne parviennent pas à se connecter au serveur vCenter, vous pouvez modifier username et password dans le fichier de configuration, puis redéployer vos modifications.

    Exemples :

    • Exemple de cluster d'utilisateur : Pour déployer des modifications apportées aux identifiants vCenter d'un cluster d'utilisateur, exécutez la commande suivante :

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

      Résultat :

      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.
    • Exemple de cluster d'administrateur : Pour déployer des modifications apportées aux identifiants vCenter d'un cluster d'administrateur, exécutez la commande suivante :

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

      Résultat :

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