Chapitre 6. Architecture du plan de contrôle

Le site control plane, qui est composé de machines de plan de contrôle, gère le cluster OpenShift Container Platform. Les machines du plan de contrôle gèrent les charges de travail sur les machines de calcul, qui sont également connues sous le nom de machines de travail. Le cluster lui-même gère toutes les mises à niveau des machines grâce aux actions du Cluster Version Operator (CVO), du Machine Config Operator et d'un ensemble d'opérateurs individuels.

6.1. Gestion de la configuration des nœuds avec des pools de configuration de machines

Les machines qui exécutent des composants du plan de contrôle ou des charges de travail utilisateur sont divisées en groupes en fonction des types de ressources qu'elles gèrent. Ces groupes de machines sont appelés pools de configuration de machines (MCP). Chaque MCP gère un ensemble de nœuds et les configurations de machines correspondantes. Le rôle du nœud détermine le MCP auquel il appartient ; le MCP régit les nœuds en fonction de l'étiquette de rôle qui lui a été attribuée. Les nœuds d'un MCP ont la même configuration, ce qui signifie que les nœuds peuvent être agrandis ou réduits en fonction de l'augmentation ou de la diminution de la charge de travail.

Par défaut, deux MCP sont créés par le cluster lors de son installation : master et worker. Chaque MCP par défaut a une configuration définie appliquée par le MCO (Machine Config Operator), qui est responsable de la gestion des MCP et de la facilitation des mises à niveau des MCP. Vous pouvez créer des MCP supplémentaires, ou des pools personnalisés, pour gérer les nœuds dont les cas d'utilisation personnalisés dépassent les types de nœuds par défaut.

Les pools personnalisés sont des pools qui héritent de la configuration du pool de travail. Ils utilisent n'importe quelle configuration de machine ciblée pour le worker pool, mais ajoutent la possibilité de déployer des changements uniquement ciblés sur le custom pool. Étant donné qu'un pool personnalisé hérite de la configuration du worker pool, toute modification apportée au worker pool est également appliquée au custom pool. Les pools personnalisés qui n'héritent pas de leur configuration du pool de travailleurs ne sont pas pris en charge par le MCO.

Note

Un nœud ne peut être inclus que dans un seul MCP. Si un nœud possède plusieurs étiquettes correspondant à plusieurs MCP, comme worker,infra, il est géré par le pool personnalisé infra, et non par le pool de travail. Les pools personnalisés sont prioritaires dans la sélection des nœuds à gérer en fonction des étiquettes des nœuds ; les nœuds qui n'appartiennent pas à un pool personnalisé sont gérés par le pool de travail.

Il est recommandé d'avoir un pool personnalisé pour chaque rôle de nœud que vous souhaitez gérer dans votre cluster. Par exemple, si vous créez des nœuds infra pour gérer des charges de travail infra, il est recommandé de créer un MCP infra personnalisé pour regrouper ces nœuds. Si vous appliquez une étiquette de rôle infra à un nœud de travailleur pour qu'il ait la double étiquette worker,infra, mais que vous n'avez pas de MCP infra personnalisé, le MCO le considère comme un nœud de travailleur. Si vous retirez l'étiquette worker d'un nœud et que vous appliquez l'étiquette infra sans le regrouper dans un pool personnalisé, le nœud n'est pas reconnu par le MCO et n'est pas géré par le cluster.

Important

Tout nœud étiqueté avec le rôle infra qui exécute uniquement des charges de travail infra n'est pas pris en compte dans le nombre total d'abonnements. Le MCP qui gère un nœud infra est mutuellement exclusif de la manière dont le cluster détermine les frais d'abonnement ; l'étiquetage d'un nœud avec le rôle infra approprié et l'utilisation de taints pour empêcher les charges de travail utilisateur d'être planifiées sur ce nœud sont les seules conditions requises pour éviter les frais d'abonnement pour les charges de travail infra.

Le MCO applique les mises à jour des pools de manière indépendante ; par exemple, si une mise à jour affecte tous les pools, les nœuds de chaque pool sont mis à jour parallèlement les uns aux autres. Si vous ajoutez un pool personnalisé, les nœuds de ce pool tentent également de se mettre à jour simultanément avec les nœuds maître et subordonné.

Il peut arriver que la configuration d'un nœud ne corresponde pas entièrement à ce que la configuration de la machine actuellement appliquée spécifie. Cet état est appelé configuration drift. Le Machine Config Daemon (MCD) vérifie régulièrement que les nœuds ne présentent pas de dérive de configuration. Si le MCD détecte une dérive de la configuration, le MCO marque le nœud degraded jusqu'à ce qu'un administrateur corrige la configuration du nœud. Un nœud dégradé est en ligne et opérationnel, mais il ne peut pas être mis à jour.