Associer des clusters tiers à Google Cloud (génération précédente)

Les clusters Anthos associés vous permettent d'afficher vos clusters Kubernetes existants dans la console Google Cloud et vos clusters Anthos, et d'activer plusieurs fonctionnalités Anthos sur eux, y compris le contrôle de configuration centralisé avec Anthos Config Management et la gestion de l'architecture de microservices avec Anthos Service Mesh.

Clusters Kubernetes compatibles

Vous pouvez associer à votre parc n'importe quel cluster Kubernetes conforme incluant des nœuds x86 afin d'afficher ce cluster dans la console Google Cloud avec vos clusters Anthos.

Les types et versions de clusters suivants ont été validés par Google. Pour en savoir plus sur les fonctionnalités Anthos compatibles avec les clusters associés, consultez la page Composants Anthos et compatibilité multicloud.

Types de clusters associés Versions Kubernetes
Red Hat OpenShift Kubernetes Engine (OKE) 4.9, 4.10 1.23, 1.24
Red Hat OpenShift Container Platform (OCP) 4.9, 4.10 1.23, 1.24
Rancher Kubernetes Engine (RKE) 1.3.8 1.23, 1.24
KIND 0.12 1.23, 1.24
K3s 1.20 1.20
K3d 4.4.3 1.20

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Activez l'API Anthos

    Activer l'API

  5. Installez Google Cloud CLI.
  6. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init
  7. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  8. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  9. Activez l'API Anthos

    Activer l'API

  10. Installez Google Cloud CLI.
  11. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init
  12. Pour vous assurer que vous disposez des autorisations appropriées et que vous avez activé les API pour enregistrer un cluster, consultez les conditions préalables à l'enregistrement d'un parc.
  13. Consultez le guide Avant de commencer pour connaître les exigences spécifiques à associer des clusters en dehors de Google Cloud, y compris les étapes de configuration spécifiques à votre type de cluster.

Enregistrer les clusters associés

Vous devez enregistrer tous les clusters que vous souhaitez utiliser avec Anthos dans le parc de votre projet. Un parc permet de regrouper et de normaliser des clusters Kubernetes de manière logique, ce qui facilite l'administration de l'infrastructure. Vous pouvez parcourir et gérer l'ensemble des clusters d'un parc dans la console Google Cloud, et de nombreux composants Anthos et Google Cloud utilisent des concepts de parc tels que la cohérence d'identité et la cohérence d'espace de noms pour simplifier le travail avec plusieurs clusters. Pour en savoir plus sur les parcs et leurs fonctionnalités, consultez notre guide de gestion de parc.

Vous êtes autorisé à activer et à utiliser les fonctionnalités Anthos sur ces clusters. Vous pouvez gérer certaines fonctionnalités Anthos au niveau du parc à partir de la page Fonctionnalités Anthos. Les frais d'Anthos s'appliquent uniquement à vos clusters enregistrés.

Configurer l'identité

Tous les clusters associés nécessitent une identité que l'agent Connect doit utiliser lors de l'authentification auprès de Google. Si votre cluster remplit les conditions requises, vous pouvez l'enregistrer avec Workload Identity pour parc à des fins d'authentification. Les clusters sur lesquels cette fonctionnalité est activée utilisent un pool d'identités de charge de travail de parc à l'échelle du parc. Pour en savoir plus sur le fonctionnement de Workload Identity pour parc et les avantages liés à son utilisation, consultez la page Utiliser Workload Identity de parc.

Si vous ne pouvez pas utiliser Workload Identity pour parc, l'enregistrement d'un cluster associé nécessite un compte de service Google Cloud pour l'authentification. Nous vous recommandons de créer un compte de service pour chaque cluster que vous souhaitez associer. Pour créer un compte de service pour un cluster avec les rôles appropriés, suivez les instructions de la section Créer un compte de service Google Cloud avec gcloud. Une fois que vous avez créé votre compte de service, vous pouvez utiliser le fichier JSON avec les identifiants du compte de service (fichier de clé) pour enregistrer le cluster, comme décrit dans la section suivante.

Enregistrer votre cluster

Nous vous recommandons d'obtenir l'état d'appartenance de votre cluster après l'avoir enregistré pour vous assurer qu'il est bien connecté à Google Cloud. Consultez notre guide de dépannage en cas de problème lié à l'enregistrement.

gcloud

Exécutez la commande suivante :

gcloud container fleet memberships register MEMBERSHIP_NAME \
   --context=KUBECONFIG_CONTEXT \
   --kubeconfig=KUBECONFIG_PATH \
   --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH

Remplacez l'élément suivant :

  • MEMBERSHIP_NAME : nom de l'abonnement que vous choisissez et permettant de représenter de manière unique le cluster enregistré sur le parc.
  • SERVICE_ACCOUNT_KEY_PATH : chemin d'accès local au fichier JSON de clé privée du compte de service téléchargé dans le cadre des conditions préalables. Cette clé de compte de service est stockée sous la forme d'un secret nommé creds-gcp dans l'espace de noms gke-connect.
  • KUBECONFIG_CONTEXT : contexte du cluster en cours d'enregistrement tel qu'il apparaît dans le fichier kubeconfig. Vous pouvez obtenir cette valeur depuis la ligne de commande en exécutant kubectl config current-context.
  • KUBECONFIG_PATH : chemin d'accès local au fichier contenant votre entrée kubeconfig, contenant une entrée pour le cluster enregistré. La valeur par défaut est $KUBECONFIG si cette variable d'environnement est définie, ou $HOME/.kube/config par défaut.

Enregistrer un cluster associé à Workload Identity pour parc

Pour enregistrer un cluster associé avec Workload Identity de parc, exécutez la commande suivante. Pour en savoir plus sur les types de clusters associés pouvant utiliser cette fonctionnalité et sur les exigences supplémentaires, consultez la section Conditions préalables à l'utilisation de clusters associés.

gcloud container fleet memberships register MEMBERSHIP_NAME \
   --context=KUBECONFIG_CONTEXT \
   --kubeconfig=KUBECONFIG_PATH \
   --enable-workload-identity \
   --has-private-issuer

Console

Générer une commande d'enregistrement

Vous pouvez utiliser la console Google Cloud pour générer une commande d'enregistrement gcloud afin d'enregistrer votre cluster (avec un compte de service uniquement).

Pour enregistrer un cluster, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Clusters Anthos. Cette page affiche tous vos clusters enregistrés.

    Accéder à la page "Clusters Anthos"

  2. Cliquez sur Enregistrer un cluster existant.

  3. Cliquez sur Ajouter une plage d'adresses IP.

  4. Dans le champ Nom du cluster, saisissez le nom du cluster que vous souhaitez enregistrer.

  5. Facultatif : Ajoutez des libellés Google Cloud à votre cluster.

  6. Cliquez sur Générer la commande d'enregistrement.

  7. Dans Cloud Shell ou à l'emplacement où vous avez enregistré les identifiants de votre compte de service, modifiez et exécutez la commande gcloud affichée sur la page. Vous devez spécifier les valeurs suivantes :

    • CLUSTER_CONTEXT correspond au contexte du cluster tel qu'il apparaît dans le fichier kubeconfig. Vous pouvez obtenir cette valeur depuis la ligne de commande en exécutant kubectl config current-context.
    • KUBECONFIG_PATH est le chemin d'accès à l'emplacement local du fichier kubeconfig. La valeur par défaut est $KUBECONFIG si cette variable d'environnement est définie, ou $HOME/.kube/config par défaut.
    • LOCAL_KEY_PATH est le chemin d'accès au fichier de clé de votre compte de service.

    Cette commande déploie Connect Agent dans votre cluster d'utilisateur. Lorsque l'agent Connect se connecte à Google Cloud et que votre cluster est enregistré, un message s'affiche sur la page.

  8. Cliquez sur Définir les libellés ou sur Ignorer si vous n'avez défini aucun libellé.

Options d'inscription avancées (ligne de commande uniquement)

Télécharger le fichier manifeste de Connect Agent

Pour télécharger le fichier manifeste d'installation de l'agent Connect sans déployer l'agent, par exemple si vous souhaitez examiner ou modifier le fichier manifeste avant l'installation, transmettez l'option --manifest-output-file à la commande gcloud container fleet memberships register. Exemple :

--manifest-output-file=[MANIFEST_FILE_PATH]

[MANIFEST_FILE_PATH] est le chemin d'accès local au fichier dans lequel vous souhaitez stocker le fichier manifeste d'installation de l'agent Connect.

L'utilisation de cette option ne déploie pas l'agent Connect dans le cluster. Pour déployer l'agent Connect, appliquez manuellement le fichier manifeste téléchargé à votre cluster.

Utiliser un serveur proxy

Pour configurer un serveur proxy, transmettez l'option --proxy à la commande gcloud container fleet memberships register. Exemple :

--proxy=[URL]

[URL] correspond à l'adresse du proxy.

L'agent Connect n'est compatible qu'avec les proxys HTTP et HTTPS basés sur CONNECT et accepte les adresses IP et les noms d'hôte. Veillez à spécifier le protocole correspondant au type de proxy dans l'URL. Par exemple, pour transmettre un nom d'hôte HTTPS :

--proxy=https://mycorpproxy.com:443

Sauf indication contraire, Connect Agent utilise le port 3128 pour le proxy.

Si votre proxy exige une autorisation, veillez à insérer correctement vos identifiants, par exemple :

--proxy=http://user:password@10.10.10.10:8888

Installer Connect Agent dans un cluster avec des nœuds Windows et Linux

L'agent Connect doit s'exécuter sur un nœud Linux. Si vous effectuez l'installation dans un cluster mixte avec des nœuds Linux et Windows, vous pouvez vous assurer que l'agent Connect est déployé sur un nœud Linux en ajoutant un sélecteur de nœud approprié à la définition de déploiement.

Exécutez la commande suivante pour mettre à jour le déploiement avec le sélecteur de nœud approprié :

kubectl patch deployment \
$(kubectl get deployment -o=jsonpath='{.items[*].metadata.name}' -n gke-connect) \
-p '{"spec":{"template":{"spec":{"nodeSelector":{"kubernetes.io/os":"linux"}}}}}' -n gke-connect

Pour vérifier que la mise à jour a réussi, exécutez la commande suivante :

kubectl get deployment -o=jsonpath='{.items[].spec.template.spec.nodeSelector}' -n gke-connect

La commande doit renvoyer :

{"kubernetes.io/os":"linux"}

Dépannage

Si vous rencontrez des problèmes lors de cette configuration, consultez le guide de dépannage de création de parc.

Activer les fonctionnalités Anthos sur des clusters associés

Après avoir enregistré vos clusters, vous pouvez activer sur ceux-ci les fonctionnalités Anthos disponibles pour vos applications. Ces fonctionnalités ne sont disponibles que sur nos types de clusters validés. Pour connaître les versions des fonctionnalités actuellement compatibles avec ces types de clusters, consultez l'article Compatibilité des versions et des mises à niveau.

Les guides suivants vous montrent comment activer les fonctionnalités compatibles sur vos clusters :

Pour obtenir des ensembles de documentation complets pour tous les composants Anthos, y compris des tutoriels, des supports de référence et plus encore, consultez la page Composants Anthos.

Accéder aux clusters associés

Une fois que vous avez enregistré un cluster associé, celui-ci apparaît sur les pages des clusters GKE et Anthos de la console Google Cloud. Toutefois, pour afficher des détails supplémentaires tels que les nœuds et les charges de travail, vous devez vous connecter et vous authentifier auprès du cluster. Pour vous connecter à vos clusters associés à partir de la console Google Cloud, suivez les instructions de la section Se connecter aux clusters depuis la console Google Cloud. Selon la méthode d'authentification choisie, il se peut que vous, ou un administrateur de plate-forme, deviez effectuer une configuration supplémentaire avant que vous ou d'autres utilisateurs puissiez vous connecter au cluster.

Pour accéder aux clusters associés à partir de la ligne de commande, en utilisant une identité Google Cloud, consultez la page Se connecter à des clusters enregistrés avec la passerelle Connect.

Pour vous authentifier auprès des clusters associés à l'aide de votre fournisseur d'identité tiers existant (EKS sur les clusters AWS uniquement, fonctionnalité bêta), consultez les pages Configurer Anthos Identity Service pour un parc et Accéder aux clusters à l'aide d'Anthos Identity Service.

Étape suivante