Présentation de l'agent Connect

Lorsque vous enregistrez un cluster en dehors Google Cloud de votre parc, Google Cloud utilise un déploiement appelé agent Connect pour établir une connexion entre le cluster et votre Google Cloud projet, ainsi que pour gérer les requêtes Kubernetes. L'agent Connect n'est pas nécessaire pour établir une connexion pour les clusters GKE exécutés dans Google Cloud.

Vous pouvez ainsi accéder au cluster et aux fonctionnalités de gestion de charge de travail dans Google Cloud, dont la console, une interface utilisateur unifiée, Google Cloud pour interagir avec votre cluster.

Si votre réseau est configuré pour autoriser les requêtes sortantes, vous pouvez configurer l' agent Connect pour qu'il traverse les NAT, les proxys de sortie et les pare-feu, afin d'établir une connexion chiffrée et durable entre le serveur d'API Kubernetes de votre cluster et votre Google Cloud projet. Une fois la connexion activée, vous pouvez utiliser vos propres identifiants pour vous reconnecter à vos clusters et accéder aux détails de leurs ressources Kubernetes. Cela réplique efficacement l'expérience utilisateur qui n'est autrement disponible que pour les clusters GKE.

Une fois la connexion établie, le logiciel agent Connect peut échanger les identifiants du compte, les détails techniques et les métadonnées relatives à l'infrastructure connectée et aux charges de travail nécessaires pour les gérer avec Google Cloud, y compris les détails des ressources, des applications et du matériel.

Ces données de service de cluster sont associées à votre Google Cloud projet et à votre compte. Google utilise ces données pour maintenir un plan de contrôle entre votre cluster et Google Cloud, afin de vous fournir tous les Google Cloud services et fonctionnalités que vous demandez. Cela comprend l'assistance, la facturation, les mises à jour ainsi que l'évaluation et l'amélioration de la fiabilité, de la qualité, de la capacité et des fonctionnalités des services Connect et Google Cloud disponibles via Connect.

Vous gardez le contrôle sur les données envoyées via Connect : votre serveur d'API Kubernetes effectue l'authentification, l'autorisation, et la journalisation d'audit de toutes les requêtes via Connect. Google et les utilisateurs peuvent accéder aux données ou aux API via Connect après y avoir été autorisés par l'administrateur du cluster (par exemple, via RBAC). L'administrateur du cluster peut révoquer cette autorisation.

Rôles IAM de Connect

La gestion de l'authentification et des accès (IAM) permet aux utilisateurs, aux groupes et aux comptes de service d'accéder aux Google Cloud API et d'effectuer des tâches dans les Google Cloud produits.

Pour lancer l'Agent Connect et interagir avec votre cluster à l'aide de la Google Cloud console ou de Google Cloud CLI, vous devez fournir des rôles IAM spécifiques. Ces rôles n'autorisent pas l'accès direct aux clusters connectés. Pour en savoir plus sur la connexion aux clusters depuis la Google Cloud console, consultez la page Utiliser des clusters depuis la Google Cloud console.

Certains de ces rôles vous permettent d'accéder à des informations sur les clusters, y compris :

  • Noms de cluster
  • Clés publiques
  • Adresses IP
  • Fournisseurs d'identité
  • Versions Kubernetes
  • Taille du cluster
  • Autres métadonnées de cluster

Connect utilise les rôles IAM suivants :

Nom de rôle Titre du rôle Description Autorisations
roles/gkehub.editor Éditeur de parc GKE Fournit l'accès en modification aux ressources de GKE Hub.

Autorisations pour Google Cloud

  • resourcemanager.projects.get
  • resourcemanager.projects.list

Autorisations pour le parc GKE

  • gkehub.memberships.list
  • gkehub.memberships.get
  • gkehub.memberships.create
  • gkehub.memberships.update
  • gkehub.memberships.delete
  • gkehub.memberships.generateConnectManifest
  • gkehub.memberships.getIamPolicy
  • gkehub.locations.list
  • gkehub.locations.get
  • gkehub.operations.list
  • gkehub.operations.get
  • gkehub.operations.cancel
  • gkehub.features.list
  • gkehub.features.get
  • gkehub.features.create
  • gkehub.features.update
  • gkehub.features.delete
  • gkehub.features.getIamPolicy
  • gkehub.fleet.*
  • gkehub.membershipfeatures.list
  • gkehub.membershipfeatures.get
  • gkehub.membershipfeatures.create
  • gkehub.membershipfeatures.update
  • gkehub.membershipfeatures.delete
roles/gkehub.viewer Lecteur de parc GKE Fournit un accès en lecture seule au parc GKE et aux ressources associées.

Autorisations pour Google Cloud

  • resourcemanager.projects.get
  • resourcemanager.projects.list

Autorisations pour le parc GKE

  • gkehub.memberships.list
  • gkehub.memberships.get
  • gkehub.memberships.generateConnectManifest
  • gkehub.memberships.getIamPolicy
  • gkehub.locations.list
  • gkehub.locations.get
  • gkehub.operations.list
  • gkehub.operations.get
  • gkehub.features.list
  • gkehub.features.get
  • gkehub.features.getIamPolicy
  • gkehub.membershipfeatures.list
  • gkehub.membershipfeatures.get
roles/gkehub.connect Agent GKE Connect Permet d'établir de nouvelles connexions entre des clusters externes et Google. gkehub.endpoints.connect

Utilisation et exigences des ressources

En règle générale, l'agent Connect installé lors de l'inscription utilise 500 m de processeur et 200 Mi de mémoire. Cependant, cette utilisation peut varier en fonction du nombre de requêtes adressées à l'agent par seconde, et de la taille de ces requêtes. Celles-ci peuvent être affectées par plusieurs facteurs, parmi lesquels la taille du cluster, le nombre d'utilisateurs accédant au cluster via la Google Cloud console (plus le nombre d'utilisateurs et/ou de charges de travail est important, plus le nombre de requêtes est élevé), et le nombre de fonctionnalités compatibles avec le parc sur le cluster.