一 、 Architecture de base
plan de contrôle: plan de contrôle
composant optionnel: composant optionnel
Serveur API: suivi de l'état de tous les composants du cluster et gestion des interactions entre eux
Serveur API: suivez l'état de tous les composants du cluster et gérez l'interaction entre eux
Cloud Controller Manager: exécute des processus de contrôleur cloud qui prennent en charge, par exemple, le point de terminaison Load Balancer ou l'allocation du volume de stockage
Cloud Controller Manager: exécutez le processus du contrôleur cloud, responsable des points de terminaison de l'équilibreur de charge ou de l'allocation du volume de stockage
Controller manager: exécute tous les contrôleurs intégrés, tels que Node ou Replication Controller
Controller Manager: exécutez tous les contrôleurs intégrés, tels que le nœud ou le contrôleur de réplication
Scheduler: répartit les charges de travail non planifiées sur les nœuds de travail disponibles
Planificateur: répartissez la charge de travail non planifiée sur les nœuds de travail disponibles
Cluster NDS: fournit un DNS dans le cluster pour les pods et les services, généralement fournis à l'aide du plug-in K8s de CoreDNS
Cluster NDS: fournit un DNS de cluster pour les pods et les services, généralement fournis par le plug-in K8s de CoreDNS
etcd: magasin de valeurs de clé pour toutes les données de configuration du cluster
etcd: magasin clé-valeur pour toutes les données de configuration du cluster
API du fournisseur de cloud: API pour gérer les ressources cloud (AWS, Azure, GCP, ...)
API du fournisseur de cloud: API de gestion des ressources cloud (AWS, Azure, GCP, etc.)
noeuds worker: noeuds worker
agent kube: gérez la connexion réseau au pod de nœuds, par exemple à l'aide des règles iptables
kube-proxy: gère les connexions réseau aux pods du nœud, par exemple en utilisant les règles iptables
kubelet: gère le conteneur en fonction des spécifications du pod entrant
kubelet: gérer les conteneurs en fonction de la spécification du pod entrant
Container Runtime: runtime qui implémente le CRI, comme CRI-O ou containerd
Container runtime: runtime qui implémente CRI, tel que CRI-O ou containerd
Deux, charge de travail
Pod: plus petite ressource de calcul K8 contenant 1 ... conteneurs
Pod: la plus petite ressource informatique K8s, comprenant 1 ... conteneurs
conteneur d'initialisation: conteneur exécutant des tâches de démarrage, comme par exemple la migration de la base de données
conteneur d'initialisation: un conteneur qui effectue des tâches de démarrage, telles que la migration de la base de données
container: container avec application principale ou side-car
Conteneur: Conteneur pour application principale ou side-car
Autoscaler de pod horizontal: met à l'échelle le nombre de pods en fonction de diverses métriques
Autoscaler de pod horizontal: ajustez le nombre de pods en fonction de diverses métriques
ReplicationController: prédécesseur du déploiement, ne l'utilisez plus
ReplicationController: le prédécesseur du déploiement, ne l'utilisez plus
StatefulSet: crée des pods tout en gérant les besoins des applications avec état
StatefulSet: créer des pods pour répondre aux besoins des applications avec état
Déploiement: crée un ReplicaSet et prend en charge les déploiements et les annulations
Déploiement: créer un jeu de réplicas et être responsable du déploiement et de la restauration
ReplicaSet: crée la quantité souhaitée d'instances de pod
ReplicaSet: créez le nombre requis d'instances de pod
CronJob: crée des Jobs en fonction d'un calendrier
CronJob: créer des emplois selon le calendrier
Travail: crée des pods vivants courts pour des exécutions uniques
Tâche: créer des pods de survie à court terme pour une exécution unique
DaemonSet: crée exactement un pod par nœud
Ensemble de démons: un seul pod est créé pour chaque nœud
Trois, réseautage
Pod: expose les ports et communique avec d'autres entités internes ou externes
Pod: exposez les ports et communiquez avec d'autres entités internes ou externes
Stratégie de réseau: permet de mettre sur liste blanche le trafic entrant et sortant depuis et vers les pods en fonction des adresses IP, des espaces de noms et des pods
Politique de réseau: autoriser le trafic entrant et sortant du POD à être mis sur liste blanche en fonction de l'adresse IP, de l'espace de nom et du POD
Endpoint: contient des informations sur les adresses IP des pods et les ports ouverts qu'ils exposent
Endpoint: enregistrez les informations sur l'adresse IP du pod et ses ports ouverts publics
Endpoint Slice: successeur d'Endpoint, fournit des améliorations fonctionnelles et d'évolutivité
Tranchage des points de terminaison: le successeur des points de terminaison, offrant des améliorations de fonctionnalités et d'évolutivité
Ingress: rend un service accessible depuis l'extérieur du cluster
Entrée: rendre le service accessible depuis l'extérieur du cluster
Classe d'entrée: permet de spécifier quel contrôleur d'entrée doit implémenter une entrée.
Classe d'entrée: permet de spécifier quel contrôleur d'entrée doit implémenter l'entrée.
Ingress Controller: implémente les spécifications des ressources Ingress
Contrôleur d'entrée: implémenter la spécification des ressources d'entrée
Service: la charge équilibre le trafic entre un certain nombre de pods sélectionnés
Services: équilibrer la charge du trafic entre plusieurs pods sélectionnés
IP du cluster: rend le service accessible uniquement à partir du cluster
IP du cluster: rendre le service accessible uniquement à partir du cluster
Node Port: expose le service à l'adresse IP de chaque nœud sur un port statique
Port de nœud: exposez le service sur l'IP de chaque nœud sur un port statique
Load Balancer: expose le Service à l'aide d'un équilibreur de charge externe
Équilibreur de charge: utilisez un équilibreur de charge externe pour exposer les services
Nom externe: mappe le service à un nom de domaine complet DNS existant
Nom externe: mappez le service au nom de domaine complet DNS existant
Quatre, stockage
Pod: unité de calcul qui lit / écrit depuis / vers le système de fichiers
Pod: l'unité informatique qui lit et écrit les fichiers à partir du système de fichiers
ConfigMap / Secret: contient des données qui peuvent être montées en lecture seule sur un système de fichiers
ConfigMap / Secret: contient des données qui peuvent être montées en lecture seule sur le système de fichiers
emptyDir: agit comme un stockage local temporaire pendant la durée de vie d'un Pod
emptyDir: sert de stockage local temporaire pendant la durée de vie du pod
Volumes éphémères génériques: crée des PVC temporaires en utilisant des classes de stockage déjà existantes
Volume de travail universel: utilisez la classe de stockage existante pour créer du PVC temporaire
Instantané de volume: demandes de création d'un instantané à partir d'un PVC avec le VSC donné
Instantané de volume: demande de création d'un instantané à partir d'un PVC avec un VSC donné
Classe d'instantané de volume: identique à la classe de stockage, mais pour les instantanés de volume
Classe d'instantané de volume: identique à la classe de stockage, mais utilisée pour l'instantané de volume
Contenu de l'instantané de volume: un instantané contenant des données PVC existantes ou pré-provisionnées
Contenu de l'instantané de volume: un instantané contenant un PVC existant ou des données préconfigurées
Réclamation de volume persistant: demande le stockage à partir d'un PV, y compris la quantité requise et le mode d'accès
Déclaration de volume persistant: demande de stockage à partir de PV, y compris la quantité requise et le mode d'accès
Volume persistant: abstraction d'un conteneur de stockage, y compris la taille et les capacités
Volume persistant: abstraction du conteneur de stockage, y compris la taille et la fonction
Classe de stockage: configuration pour différents types de stockage, par exemple Local, NFS, GlusterFs, ...
Catégorie de stockage: configuration pour différents types de stockage, tels que local, NFS, GlusterFs, etc. . .
Storage Class Provisioner: service qui crée des PV pour un certain SC
Storage Provisioner: un service pour créer des PV pour un SC spécifique
五 、 RBAC
Pod: unité de calcul pouvant interagir avec le serveur d'API Kubernetes
Pod: une unité informatique qui peut interagir avec le serveur kubernetesapi
Compte de service: utilisateur géré Kubernetes à espace de nom destiné à être utilisé par les processus dans le cluster
Compte de service: utilisateur d'hébergement Kubernetes de l'espace de noms, utilisé pour les processus du cluster
Liaison de rôle: attache les règles d'un rôle ou d'un rôle de cluster aux utilisateurs, groupes ou SA
Liaison de rôle: associez des règles dans un rôle ou un rôle de cluster à des utilisateurs, des groupes ou des SA
Utilisateur: un utilisateur qui s'authentifie auprès du serveur d'API kubernetes
Utilisateur: l'utilisateur qui authentifie le serveur kubernetesapi
Groupe: une collection d'utilisateurs
Groupe: une collection d'utilisateurs
Liaison de rôle de cluster: attache les règles d'un rôle de cluster aux utilisateurs, groupes ou SA
Liaison de rôle de cluster: attachez une règle de rôle de cluster à un utilisateur, un groupe ou une sa
Rôle de cluster (agrégé): un ensemble de règles globales de cluster
Rôle de cluster (agrégé): ensemble de règles globales pour le cluster
Rôle: une collection de règles d'étendue d'espace de noms
Rôle: une collection de règles d'étendue d'espace de noms
Règle: Ressources (Pod, Serivce, ...) et Verbes (Get, List, ...)
Règles: ressources (Pod, Serivce, ...) et verbes (Get, List, ...)
Lien d'origine: https://brennerm.github.io/posts/kubernetes-overview-diagrams.html