Valider les connexions

Vérifiez que vous pouvez vous connecter à la console GDC ou à la gcloud CLI.

Connexion

Pour vous connecter à Distributed Cloud, procédez comme suit :

Console

Ouvrez l'URL suivante dans un nouvel onglet de navigateur pour accéder à l'interface utilisateur Distributed Cloud :

https://GDC_URL

Remplacez GDC_URL par le nom de domaine de l'opérateur d'infrastructure (IO) qui a configuré le service DNS (Domain Name System).

Lorsque vous ouvrez une URL pour la première fois, la page vous redirige vers la page de connexion de votre fournisseur d'identité. Pour vous connecter, utilisez le nom d'utilisateur et le mot de passe que vous avez créés précédemment.

CLI

Lorsque vous vous connectez à gdcloud CLI, utilisez la commande gdcloud auth login pour authentifier un compte principal sur gdcloud CLI. gdcloud CLI utilise ce compte principal pour l'authentification et l'autorisation, afin de gérer les ressources et les services Google Cloud .

Avant de vous connecter, assurez-vous d'effectuer les actions suivantes :

  • Téléchargez le binaire gdcloud CLI et installez-le sur votre système. Pour en savoir plus, consultez Télécharger la gcloud CLI.
  • Configurez et initialisez la configuration par défaut de gdcloud CLI. Veillez à définir l'URL de l'organisation appropriée, qui est utilisée pour récupérer le point de terminaison de configuration de connexion. Pour en savoir plus, consultez Installation de gdcloud CLI.
  • Installez le plug-in d'authentification gdcloud-k8s-auth-plugin. Pour en savoir plus, consultez Authentification gcloud CLI.

Pour vous connecter à un cluster, procédez comme suit :

  1. Exportez le chemin d'accès à l'emplacement où vous souhaitez stocker le fichier kubeconfig du cluster :

      export KUBECONFIG=CLUSTER_KUBECONFIG
    

    Remplacez CLUSTER_KUBECONFIG par le chemin d'accès au répertoire dans lequel stocker le fichier kubeconfig.

  2. Authentifiez votre instance gdcloud CLI pour vous connecter. Deux méthodes d'authentification sont disponibles :

    • Connexion standard via le navigateur : utilisez ce flux d'authentification lorsque vous vous connectez depuis un navigateur.

        gdcloud auth login
      
    • Connexion à l'aide d'un appareil secondaire : utilisez ce flux d'authentification si votre appareil principal ne dispose pas d'un navigateur. Ce flux lance la connexion sur l'appareil principal sans accès au navigateur et la poursuit sur l'appareil secondaire qui a accès au navigateur.

      Lancez la connexion sur votre appareil principal sans navigateur :

        gdcloud auth login --no-browser
      

      La variable d'environnement KUBECONFIG est mise à jour avec les fichiers kubeconfig de tous les serveurs d'API et clusters de l'organisation. Si la variable KUBECONFIG n'est pas définie, l'CLI kubectl utilise le fichier kubeconfig par défaut stocké dans $HOME/.kube/config.

      Pour éviter de modifier les fichiers kubeconfig, ajoutez l'option --skip-kubeconfig-update à votre commande. Exemple :

        gdcloud auth login --no-browser --skip-kubeconfig-update
      

      Copiez le résultat de la commande gdcloud CLI qui s'affiche, puis exécutez-le sur une machine ayant accès à un navigateur.

  3. Suivez les instructions sur la page Web pour terminer le processus de connexion.

    Une fois la connexion établie, le navigateur affiche le message Authentification réussie. Veuillez fermer cette fenêtre.

  4. Suivez les instructions sur le terminal. Une fois la connexion établie, le terminal affiche le message Vous êtes maintenant connecté.

  5. Exportez le fichier kubeconfig de votre identité utilisateur en tant que variable :

      export KUBECONFIG=/tmp/admin-kubeconfig-with-user-identity.yaml
    
  6. Générez un fichier kubeconfig avec votre identité utilisateur :

      gdcloud clusters get-credentials CLUSTER_NAME --zone ZONE
    

    Remplacez ZONE par le nom de la zone.

    Un fichier kubeconfig est généré avec votre identité utilisateur. Le fichier YAML suivant en est un exemple :

    apiVersion: v1
    clusters:
    - cluster:
        certificate-authority-data: <REDACTED>
        server: https://10.200.0.32:443
      name: cluster-name
    contexts:
    - context:
        cluster: cluster-name
        user: cluster-name-anthos-default-user
      name: cluster-name-cluster-name-anthos-default-user
    current-context: cluster-name-cluster-name-anthos-default-user
    kind: Config
    preferences: {}
    users:
    - name: cluster-name-anthos-default-user
      user:
        exec:
          apiVersion: client.authentication.k8s.io/v1
          args:
          - --audience=root-admin
          command: gdcloud-k8s-auth-plugin
          env: null
          installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use plugin
          interactiveMode: Never
          provideClusterInfo: false
    
  7. Pour vérifier que vous pouvez accéder au cluster, connectez-vous avec le fichier kubeconfig généré avec une identité utilisateur :

    kubectl --kubeconfig /tmp/admin-kubeconfig-with-user-identity.yaml version
    

Déconnexion

Pour vérifier la déconnexion, procédez comme suit :

Console

Pour vous déconnecter de l'interface utilisateur Web, cliquez sur Se déconnecter dans la barre de menu.

CLI

Déconnectez-vous de la CLI :

gdcloud auth revoke

Générer manuellement le fichier kubeconfig

Si vous gérez des ressources avec l'CLI kubectl en appelant directement les API KRM, vous devez générer le fichier kubeconfig pour le cluster qui héberge votre ressource, en fonction du type de ressource que vous gérez. Voici les clusters et les serveurs disponibles :

Cluster Nom
Cluster d'administrateur racine root-admin
Serveur d'API racine global global-api
Cluster d'administrateur de l'organisation (organisation v1) ORG_NAME-admin
Cluster système (organisation v1) ORG_NAME-system
Cluster d'infrastructure de l'organisation (organisation v2) ORG_NAME-infra
Serveur de l'API Management (organisation v2) ORG_NAME-admin
Serveur d'API global pour les administrateurs d'organisation global-api
Cluster d'utilisateur CLUSTER_NAME

Vous devez également connaître la configuration de votre univers GDC pour déterminer les zones dans lesquelles vous prévoyez de déployer vos ressources zonales ou le serveur d'API global pour les ressources mondiales. Pour en savoir plus, consultez Serveurs d'API globaux et zonaux.

Déterminez si la ressource que vous manipulez est globale ou zonale. Si vous n'êtes pas sûr, consultez la documentation dédiée à la ressource pour obtenir de l'aide.

Effectuez la configuration applicable en fonction de votre type de ressource.

Ressources zonales

Pour générer votre fichier kubeconfig pour le cluster zonal, procédez comme suit :

  1. Afficher toutes les zones disponibles :

    gdcloud zones list
    

    Notez le nom de la zone qui héberge votre ressource personnalisée.

  2. Définissez la variable d'environnement ZONE sur la zone qui héberge vos ressources zonales :

    export ZONE="ZONE"
    

    Remplacez ZONE par le nom de la zone.

  3. Définissez la variable d'environnement CLUSTER :

    export CLUSTER="CLUSTER_NAME"
    

    Remplacez CLUSTER_NAME par le nom du cluster qui héberge votre ressource.

  4. Générez le fichier kubeconfig du cluster pour la zone cible et validez les identifiants :

    export KUBECONFIG=${HOME}/${CLUSTER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${CLUSTER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    La commande rm ${KUBECONFIG:?} supprime le fichier kubeconfig existant dans le répertoire personnel. Même sans supprimer explicitement le fichier kubeconfig existant, il est écrasé par le fichier kubeconfig nouvellement généré. Si vous ne souhaitez pas écraser ni supprimer le fichier existant, sauvegardez-le dans un autre emplacement sécurisé.

Ressources globales

Pour générer votre fichier kubeconfig pour le serveur d'API global, procédez comme suit :

  1. Définissez la variable d'environnement GLOBAL_API_SERVER :

    export GLOBAL_API_SERVER="global-api"
    
  2. Générez le fichier kubeconfig du serveur d'API global et validez les identifiants :

    export KUBECONFIG=${HOME}/${GLOBAL_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${GLOBAL_API_SERVER:?}
    [[ $(kubectl config current-context) == *${GLOBAL_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    La commande rm ${KUBECONFIG:?} supprime le fichier kubeconfig existant dans le répertoire personnel. Même sans supprimer explicitement le fichier kubeconfig existant, il est écrasé par le fichier kubeconfig nouvellement généré. Si vous ne souhaitez pas écraser ni supprimer le fichier existant, sauvegardez-le dans un autre emplacement sécurisé.

Déconnexion en cas d'inactivité de la session

Après 15 minutes ou plus d'inactivité dans une session, la console GDC et la CLI gdcloud vous déconnectent. Le GDC considère l'inactivité d'une session comme une période pendant laquelle une session ouverte ne présente aucune activité de votre part, comme aucun mouvement de curseur ou de clavier. Une session active dure jusqu'à 12 heures avec l'activité de l'utilisateur.

Console

En cas d'inactivité de la session, la console GDC vous déconnecte. Deux minutes avant que la console GDC ne vous déconnecte pour inactivité, une boîte de dialogue vous avertit de la déconnexion :

Interface utilisateur de la console affichant une boîte de dialogue avec un minuteur de 99 secondes avant la déconnexion de l&#39;utilisateur pour inactivité.

Après vous avoir déconnecté pour cause d'inactivité, l'écran suivant s'affiche :

Interface utilisateur de la console affichant l&#39;écran de connexion avec une bannière contenant le texte suivant sur la déconnexion de la session : &quot;Vous avez été déconnecté du système, car votre session est restée inactive trop longtemps. Veuillez vous reconnecter ou contacter votre administrateur pour obtenir de l&#39;aide.&quot;

Pour vous reconnecter à la console GDC, sélectionnez votre fournisseur d'identité et ajoutez vos identifiants de connexion. Si vous utilisez un service, tel que le tableau de bord de surveillance, et que la console GDC vous déconnecte pour cause d'inactivité, reconnectez-vous pour y accéder.

CLI

La CLI gdcloud vous déconnecte en cas d'inactivité de la session. Après que la gdcloud CLI vous a déconnecté et que vous essayez d'exécuter une commande, vous recevez une erreur d'autorisation :

Error: error when creating kube client: unable to create k8sclient: Unauthorized

Pour vous reconnecter à la gcloud CLI, suivez les étapes de la CLI décrites dans Se connecter.

kubectl

La gdcloud CLI fait expirer vos fichiers kubeconfig après une période d'inactivité de la session. Si vous tentez d'exécuter une commande kubectl après une période d'inactivité, vous recevez une erreur d'autorisation :

error: You must be logged in to the server (Unauthorized)

Pour vous reconnecter et utiliser vos fichiers kubeconfig, suivez les étapes de la CLI dans Se connecter. Pour chaque délai d'expiration de session, vous devez régénérer vos fichiers kubeconfig.