Ce document décrit les options et les fonctionnalités des clusters Kubernetes disponibles dans Google Distributed Cloud (GDC) air-gapped. Les clusters Kubernetes fournissent un service Kubernetes géré avec Google Kubernetes Engine (GKE), qui vous permet de déployer et d'exécuter des charges de travail de conteneurs à l'aide des méthodologies Kubernetes standards du secteur.
Ce document s'adresse à des audiences telles que les administrateurs informatiques du groupe d'administrateurs de plate-forme et les développeurs d'applications du groupe d'opérateurs d'applications, qui sont chargés de gérer les charges de travail de conteneurs au sein de leur organisation. Pour en savoir plus, consultez Audiences pour la documentation GDC sous air gap.
GKE dans un environnement déconnecté
GKE sur GDC est un service Kubernetes géré qui apporte les principales fonctionnalités de GKE à votre environnement déconnecté. Dans la documentation, les clusters gérés par GKE sur GDC sont appelés clusters Kubernetes. Pour en savoir plus sur les concepts Kubernetes, consultez Commencer à découvrir Kubernetes.
GKE sur GDC vous permet de créer et de gérer des charges de travail de conteneur dans votre environnement déconnecté de la même manière que vous le feriez avec GKE dans le Google Cloudpublic.
Le tableau suivant compare les clusters dans GDC et Google Cloud :
| Fonctionnalité | Description | GKE sur GDC | GKE sur Google Cloud |
|---|---|---|---|
| Entièrement déconnecté | Fonctionne dans un environnement sans connexion Internet. | Oui | Non |
| Solution de sauvegarde | Service permettant de créer des copies des données et des configurations d'un cluster pour assurer la protection des données et permettre la récupération en cas de défaillance, d'erreur ou de cyberattaque. | Sauvegarde pour GDC | Sauvegarde pour GKE |
| Surveillance et journalisation intégrées | Service qui combine la collecte et l'analyse des journaux avec la surveillance des indicateurs clés de performance pour obtenir une vue complète du comportement du cluster. | Prometheus, Grafana et Loki | Cloud Logging et Cloud Monitoring |
| Registre de conteneurs géré | Service qui héberge et organise les images de conteneurs, en gérant l'infrastructure, la disponibilité et la sécurité des images. | Managed Harbor Service | Artifact Registry |
| Isolement du conteneur | Possibilité de séparer et d'isoler les applications de conteneur et leurs dépendances les unes des autres et du système hôte. | Oui | Oui |
| Compatibilité avec les GPU et TPU | Unités de calcul hautes performances qui permettent d'améliorer les capacités de traitement. | GPU uniquement | GPU et TPU |
| Autoscaling horizontal des pods | Ajustement automatique du nombre de répliques de pods dans un déploiement ou une autre charge de travail en fonction des métriques observées, comme l'utilisation du processeur ou de la mémoire. | Oui | Oui |
| Conteneurs Linux | Environnement isolé pour exécuter des applications sur un hôte Linux. | Oui | Oui |
| UI pour les clusters | Interface graphique qui permet de gérer et de surveiller un cluster de manière visuelle et conviviale. | Cluster partagé uniquement | Oui |
| Interface utilisateur pour les ressources de cluster | Interface graphique qui permet de gérer et de surveiller de manière visuelle et conviviale les charges de travail de conteneurs d'un cluster. | Lecture seule | Oui |
Pour en savoir plus sur GKE et l'ensemble de ses fonctionnalités disponibles dans Google Cloud, consultez Explorer la documentation GKE.
Avantages des clusters Kubernetes
GKE sur GDC offre des avantages clés pour vos clusters Kubernetes, tels que les suivants :
- Gestion du cycle de vie multiclusters : déployez plusieurs clusters dans GDC simultanément pour diverses instances hébergées pour vos charges de travail de conteneurs.
- Distribution Kubernetes entièrement compatible : créez des clusters regroupant des fonctionnalités Kubernetes standards à jour.
- Visibilité sur les coûts : surveillez l'utilisation et les insights en temps réel pour vous aider à surveiller en continu vos coûts Kubernetes.
- Gestion multi-équipes : accordez à plusieurs groupes d'utilisateurs l'accès aux clusters Kubernetes pour des limites de gestion flexibles.
- Workflows Kubernetes automatisés : gérez vos charges de travail de conteneurs de manière fluide grâce au provisionnement automatique des nœuds et à l'autoscaling horizontal des pods.
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é.
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.
Vous configurez un cluster Kubernetes en tant que cluster partagé ou cluster standard. Un cluster partagé s'étend sur plusieurs projets. Un cluster standard est limité à un seul projet. Pour en savoir plus, consultez Configurations de cluster Kubernetes.
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 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 :

Ce schéma montre un cluster Kubernetes avec les composants suivants :
- Le plan de contrôle, qui inclut un serveur d'API et des services prédéfinis tels que le stockage et la planification par défaut des pods.
- Nœuds de calcul qui exécutent des charges de travail de conteneurs.
- Services GDC, tels que la mise en réseau VPC et l'équilibrage de charge, fournis par le service géré GKE sur GDC.
À 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 la CLI 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.
Les 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 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 (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 ce 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.
Les nœuds sont regroupés dans un pool de nœuds, qui est un ensemble de nœuds au sein d'un cluster qui partagent la même configuration et les mêmes caractéristiques. Vous ne pouvez pas configurer un seul nœud dans un pool de nœuds.
Les pools de nœuds personnalisés sont utiles lorsque vous planifiez des pods nécessitant plus de ressources que d'autres, par exemple plus de mémoire ou d'espace disque local. Vous pouvez utiliser des rejets de nœuds si vous avez besoin de mieux contrôler la planification des pods.
Pour en savoir plus, consultez la page Gérer les pools de nœuds.
Configurations de cluster Kubernetes
Les configurations de cluster suivantes sont disponibles avec le service GKE sur GDC pour gérer vos charges de travail de conteneurs dans une organisation :
- Cluster partagé : cluster Kubernetes à portée d'organisation qui s'étend sur plusieurs projets et n'est pas géré par un seul projet, mais qui y est associé.
- Cluster standard : cluster Kubernetes à portée de projet qui gère les ressources de cluster au sein d'un projet et ne peut pas s'étendre sur plusieurs projets.
Vous pouvez choisir le cluster qui répond le mieux à vos besoins pour gérer les charges de travail de conteneurs. Pour en savoir plus, consultez Configurations de cluster Kubernetes.
Charges de travail GPU dans un cluster
GDC est compatible avec les GPU NVIDIA pour les clusters Kubernetes, et exécute vos appareils GPU en tant que charges de travail utilisateur. Par exemple, vous pouvez préférer exécuter des notebooks d'intelligence artificielle (IA) et de machine learning (ML) dans un environnement GPU. Vous devez configurer votre cluster pour qu'il soit compatible avec les appareils GPU en provisionnant des machines GPU pour ceux-ci. Pour obtenir la liste des types de machines compatibles avec les clusters Kubernetes dans GDC, consultez Machines des nœuds de cluster.
Les GPU sont alloués de manière statique. Les quatre premiers GPU sont toujours dédiés aux charges de travail telles que les API d'IA et de ML préentraînés. Ces GPU ne s'exécutent pas sur un cluster Kubernetes. Les GPU restants sont disponibles pour les clusters Kubernetes. Les notebooks d'IA et de ML s'exécutent sur des clusters Kubernetes.
Veillez à allouer des machines GPU aux types de clusters appropriés pour permettre aux composants tels que les API d'IA et de ML de s'exécuter dans votre cluster. Pour en savoir plus, consultez Créer un cluster partagé ou Créer un cluster standard.
Limites de GKE sur GDC
Les fonctionnalités GKE suivantes sont des limites qui ne sont pas disponibles pour GKE sur GDC :
- Gestion automatisée des clusters
- Réparation automatique des nœuds : la surveillance du cluster corrige automatiquement les nœuds lorsqu'ils deviennent défectueux, ce qui réduit le besoin d'intervention manuelle.
- Mises à niveau automatiques des clusters : mises à niveau automatiques de la version de Kubernetes pour le plan de contrôle et les nœuds de calcul d'un cluster afin de s'assurer que le cluster exécute une version compatible et sécurisée.
- Autoscaling de cluster : ajustement automatique de la taille d'un cluster en ajoutant ou en supprimant des nœuds en fonction des exigences de la charge de travail.
- GKE Autopilot : mode opérationnel entièrement géré qui s'occupe de la gestion de l'infrastructure.
- Autoscaling vertical des pods : ajustement automatique des demandes et des limites de ressources de processeur et de mémoire pour les pods d'un cluster en fonction de l'utilisation historique.
- Multicloud
- Associer des clusters multiclouds : créez des clusters dans d'autres environnements cloud et gérez-les depuis la consoleGoogle Cloud .
- Passerelle Connect : connectez-vous aux clusters d'autres fournisseurs de services cloud avec votre identité Google Cloud pour l'authentification.
- Entrée multicluster : déployez des ressources d'équilibrage de charge partagées entre les clusters.
- Opérations
- Gestion des ressources multizones : le cluster et ses conteneurs couvrent plusieurs zones en tant que ressource régionale ou mondiale.
- Compatibilité avec les conteneurs Windows : environnement isolé pour exécuter des applications sur un hôte Windows.
Étapes suivantes
- Charges de travail de conteneur dans GDC
- Haute disponibilité pour vos applications
- Configurations de cluster Kubernetes