Nodes Kubernetes : gestion et propriétés des nœuds
Un node Kubernetes est un nœud de travail unique dans un cluster Kubernetes, basé sur des composants d’infrastructure sur lesquels s’exécutent des charges de travail de conteneurs (pods). Les nœuds mettent à disposition les ressources nécessaires telles que la puissance de calcul et la mémoire.
Node Kubernetes : définition
Dans un cluster Kubernetes, les nœuds sont des éléments essentiels. Chaque nœud représente une machine physique ou virtuelle et fournit des ressources telles que le processeur, la mémoire et l’espace de stockage. Ces nœuds travaillent ensemble pour accueillir et gérer les charges de travail des conteneurs. Ils effectuent des tâches telles que le démarrage, la surveillance et la mise à l’échelle des conteneurs afin d’assurer le bon fonctionnement des applications.
Les nodes Kubernetes sont évolutifs de manière flexible, car ils peuvent être ajoutés ou supprimés en fonction des besoins. Ils favorisent une utilisation efficace des ressources et s’adaptent de manière dynamique aux exigences des applications en cours d’exécution. En outre, la répartition des nœuds sur différents serveurs favorise la résistance aux pannes du cluster. Grâce à une coordination intelligente avec des ReplicaSets Kubernetes et des DaemonSets Kubernetes, les applications de conteneurs peuvent être gérées de manière sûre et simple.
Statut des nœuds
Le statut des nœuds donne des informations sur l’état d’un nœud de travail dans le cluster Kubernetes. Il indique si le nœud fonctionne correctement et s’il est en mesure d’héberger des pods.
- Adresses : les adresses d’un nœud donnent un aperçu de son accessibilité sur le réseau. Cela comprend les adresses IP, les noms d’hôtes et les ports utilisés pour la communication dans le cluster. Un nœud peut avoir plusieurs adresses, chacune étant essentielle pour assurer une communication efficace au sein du cluster.
- Conditions : les conditions reflètent l’état de santé actuel du node Kubernetes. Les conditions typiques comprennent Ready (prêt), OutOfDisk (manque d’espace), MemoryPressure (pression de la mémoire) et DiskPressure (pression du disque). Ces messages indiquent si les nœuds sont opérationnels ou si certaines pénuries de ressources se produisent.
- Capacité : la capacité d’un nœud fait référence aux ressources disponibles telles que l’unité centrale, la mémoire et l’espace disque. Cette information est importante pour comprendre la charge de travail qu’un nœud peut absorber. Kubernetes utilise ces données pour décider où placer les conteneurs, en fonction des besoins en ressources.
- Infos : la section d’information peut contenir des détails supplémentaires sur le nœud, par exemple le système d’exploitation, la version du noyau ou de Kubelet et d’autres métadonnées.
Avec Managed Kubernetes de IONOS, vous pouvez facilement orchestrer des applications de conteneurs dans des environnements de production distribués. Bénéficiez de la sécurité, de la visibilité et du contrôle en cours d’exécution, le tout avec un minimum d’efforts administratifs.
Node Heartbeat
Les Heartbeats (battements de cœur) envoient périodiquement des informations sur l’état au master Kubernetes. Ces mises à jour d’état servent à informer le master que le nœud est encore disponible et prêt à être utilisé.
Dans le contexte de Kubernetes, il existe deux formes de heartbeats pour les nodes :
- Mises à jour du
.status
d’un nœud : il s’agit de mises à jour régulières du statut qu’un nœud envoie au master Kubernetes. Le statut contient des informations sur la disponibilité et l’état du nœud. - Objets de bail dans l’espace de nom
kube-node-lease
: chaque nœud est lié à un objet appelé « lease » dans l’espace de nomkube-node-lease
. Un objet de bail est essentiellement une sorte de contrat de location qui est envoyé par le nœud au master. Ce bail confirme que le nœud est toujours actif et qu’il utilise des ressources dans le cluster.
Nodes Kubernetes : gestion
Les trois composants principaux qui forment ensemble la gestion des nodes dans un cluster Kubernetes sont le contrôleur de nœuds, Kubelet et l’outil de ligne de commande kubectl
.
Contrôleur de nœuds
Le contrôleur de nœuds est un composant central de Kubernetes qui est responsable de la gestion des nœuds. Il surveille les heartbeats sous forme de mises à jour d’état et d’objets de bail afin de s’assurer que les nœuds fonctionnent sans problème. Si le contrôleur de nœuds constate qu’un nœud n’est plus actif et qu’aucun heartbeat n’est reçu, il peut prendre des mesures appropriées, comme replanifier des pods sur d’autres nœuds disponibles. Le contrôleur de nœuds joue donc un rôle central dans le maintien de la disponibilité et de l’intégrité du pool de nœuds dans le cluster Kubernetes.
Kubectl
kubectl
est un outil en ligne de commande par lequel les utilisateurs interagissent avec un cluster Kubernetes. Avec kubectl
, vous pouvez envoyer des commandes au serveur master Kubernetes pour créer, surveiller, mettre à jour et supprimer des ressources dans le cluster. Cet outil est polyvalent et permet de gérer les déploiements, services, pods, ConfigMaps et autres objets Kubernetes.
Kubelet
Kubelet est présent sur chaque nœud Kubernetes du cluster et est responsable de la communication entre le nœud et le master. La principale responsabilité de Kubelet est de veiller au démarrage, à la surveillance et à l’arrêt des pods de conteneurs selon les instructions du master Kubernetes.
Dans notre tutoriel Kubernetes, vous apprendrez comment configurer votre propre cluster Kubernetes.
Managed Kubernetes est la plateforme idéale pour des applications de conteneurs performantes et hautement évolutives.