Présentation des clusters Kubernetes

Google Distributed Cloud (GDC) air-gapped fournit un service Kubernetes géré avec l'édition Enterprise de Google Kubernetes Engine (GKE). Vous pouvez ainsi déployer et exécuter des charges de travail de conteneurs à l'aide des méthodologies Kubernetes standards du secteur. GKE sur GDC apporte les principales fonctionnalités de GKE Enterprise à un environnement déconnecté. D'autres fonctionnalités GKE Enterprise seront disponibles pour GKE sur GDC au fil du temps.

GKE sur GDC fournit des fonctionnalités d'entreprise telles que :

  • Gestion du cycle de vie multicluster
  • Distribution Kubernetes entièrement compatible
  • Visibilité des coûts
  • Gestion de plusieurs équipes
  • Gestion de la configuration basée sur GitOps
  • Maillage de services géré
  • Règle

Toutes ces fonctionnalités sont fournies en standard avec GKE sur GDC et peuvent être utilisées avec les clusters créés par le service Kubernetes géré.

Dans la documentation, les clusters GKE sur GDC sont appelés clusters Kubernetes ou clusters.

Architecture du cluster GDC

Les clusters Kubernetes sont logiquement séparés les uns des autres pour fournir différents domaines de défaillance et garanties d'isolation. Dans certains cas, ils sont même physiquement séparés. Chaque organisation dans GDC dispose d'un ensemble dédié de clusters Kubernetes. Les types de clusters suivants sont disponibles spécifiquement pour vos charges de travail et vos services dans chaque organisation :

  • Cluster d'infrastructure de l'organisation : exécute les composants du plan de contrôle et du plan de données de l'organisation. Il héberge également le serveur de l'API de gestion sur lequel tous les services et charges de travail non conteneurisés sont déployés.
  • Cluster Kubernetes : exécute les charges de travail basées sur des conteneurs pour l'organisation. Le nombre de nœuds de calcul dépend de l'utilisation du cluster. Vous pouvez les adapter à mesure que vos besoins évoluent. Dans Distributed Cloud, un cluster Kubernetes est parfois appelé cluster d'utilisateur.

Lorsque votre opérateur d'infrastructure (IO) crée une organisation, GDC génère automatiquement le cluster d'infrastructure de l'organisation. La configuration initiale du cluster d'infrastructure de l'organisation est définie lors de la création de l'organisation.

En tant qu'administrateur, vous créez et gérez des clusters Kubernetes. Cette section de rubriques couvre la gestion des clusters Kubernetes. Vos charges de travail Kubernetes conteneurisées s'exécutent toutes dans un cluster Kubernetes. Pour en savoir plus sur la création et la gestion de conteneurs dans un cluster Kubernetes, consultez la section Déployer des charges de travail de conteneurs.

Un cluster Kubernetes se compose d'un plan de contrôle et de machines de calcul appelées nœuds. Le plan de contrôle et les nœuds constituent le système d'orchestration de clusters Kubernetes. GKE sur GDC gère l'ensemble de l'infrastructure sous-jacente des clusters, y compris le plan de contrôle et tous les composants du système. Vous êtes responsable de la gestion des nœuds de calcul qui exécutent vos charges de travail conteneurisées.

Le schéma suivant illustre l'architecture d'un cluster Kubernetes :

Un cluster Kubernetes se compose d'un plan de contrôle, de nœuds et de services.

À propos du plan de contrôle

Le plan de contrôle exécute des processus tels que le serveur d'API Kubernetes, le programmeur et les contrôleurs de ressources principales. GKE sur GDC gère le cycle de vie du plan de contrôle, de la création à la suppression du cluster. Cela inclut les mises à niveau de la version de Kubernetes exécutées sur le plan de contrôle, que GDC effectue automatiquement ou manuellement à votre demande si vous préférez effectuer une mise à niveau antérieure à la programmation automatique.

Plan de contrôle et API Kubernetes

Le plan de contrôle est le point de terminaison unifié pour votre cluster. Vous interagissez avec le plan de contrôle via des appels d'API Kubernetes. Le plan de contrôle exécute le processus du serveur d'API Kubernetes, ou kube-apiserver, pour gérer les requêtes API. Vous pouvez effectuer des appels d'API Kubernetes de différentes manières :

  • Appels directs : KRM
  • Appels indirects : clients de ligne de commande Kubernetes, tels que kubectl, ou la console GDC.

Le processus du serveur d'API est le centre de toutes les communications pour le cluster. Tous les composants de cluster internes, tels que les nœuds, les processus système et les contrôleurs d'application, agissent en tant que clients du serveur d'API.

Vos requêtes API indiquent à Kubernetes l'état choisi pour les objets de votre cluster. Kubernetes tente de maintenir en permanence cet état. Kubernetes vous permet de configurer des objets dans l'API de manière impérative ou de manière déclarative.

Gestion des nœuds de calcul

Le plan de contrôle gère ce qui s'exécute sur tous les nœuds du cluster. Le plan de contrôle planifie les charges de travail et gère leur cycle de vie, leur mise à l'échelle et leurs mises à niveau. Le plan de contrôle gère également les ressources réseau et de stockage pour ces charges de travail. Le plan de contrôle et les nœuds communiquent entre eux à l'aide des API Kubernetes.

À propos des nœuds

Les nœuds sont des machines de calcul qui exécutent vos applications en conteneurs et d'autres charges de travail. Les machines individuelles sont des machines virtuelles (VM) créées par GKE sur GDC. Le plan de contrôle gère et reçoit les mises à jour de l'état déclaré par chaque nœud.

Un nœud exécute les services nécessaires pour être compatible avec les conteneurs qui constituent les charges de travail de votre cluster. Ceux-ci incluent l'environnement d'exécution et l'agent de nœud Kubernetes, ou kubelet, qui communique avec le plan de contrôle et est responsable du démarrage et de l'exécution des conteneurs programmés sur le nœud.

GKE sur GDC exécute également un certain nombre de conteneurs système qui s'exécutent en tant qu'agents par nœud, appelés DaemonSets, qui fournissent des fonctionnalités telles que la collecte de journaux et la connectivité réseau au sein des clusters.

Limites de GKE sur GDC

Les fonctionnalités GKE suivantes sont des limites qui ne sont pas disponibles pour GKE sur GDC :

  • Passerelle Connect
  • Associer des clusters multicloud
  • Autorisation binaire
  • Transfert de données entrant multicluster