Rechercher

6.4. À propos de l'opérateur de configuration de la machine

download PDF

OpenShift Container Platform 4.12 intègre à la fois la gestion du système d'exploitation et du cluster. Étant donné que le cluster gère ses propres mises à jour, y compris les mises à jour de Red Hat Enterprise Linux CoreOS (RHCOS) sur les nœuds du cluster, OpenShift Container Platform offre une expérience de gestion du cycle de vie basée sur l'opinion qui simplifie l'orchestration des mises à niveau des nœuds.

OpenShift Container Platform utilise trois ensembles de démons et contrôleurs pour simplifier la gestion des nœuds. Ces ensembles de démons orchestrent les mises à jour du système d'exploitation et les modifications de configuration des hôtes en utilisant des constructions standard de type Kubernetes. Il s'agit de :

  • Le site machine-config-controller, qui coordonne les mises à niveau des machines à partir du plan de contrôle. Il surveille tous les nœuds de la grappe et orchestre leurs mises à jour de configuration.
  • L'ensemble de démons machine-config-daemon, qui s'exécute sur chaque nœud du cluster et met à jour la configuration d'une machine telle que définie par machine config et selon les instructions du MachineConfigController. Lorsque le nœud détecte un changement, il vide ses pods, applique la mise à jour et redémarre. Ces changements se présentent sous la forme de fichiers de configuration Ignition qui appliquent la configuration machine spécifiée et contrôlent la configuration des kubelets. La mise à jour elle-même est livrée dans un conteneur. Ce processus est la clé du succès de la gestion conjointe des mises à jour d'OpenShift Container Platform et de RHCOS.
  • Le jeu de démons machine-config-server, qui fournit les fichiers de configuration Ignition pour contrôler les nœuds de l'avion lorsqu'ils rejoignent le cluster.

La configuration de la machine est un sous-ensemble de la configuration d'Ignition. Le site machine-config-daemon lit la configuration de la machine pour voir s'il doit effectuer une mise à jour d'OSTree ou s'il doit appliquer une série de modifications de fichiers kubelet systemd, de modifications de configuration ou d'autres modifications du système d'exploitation ou de la configuration d'OpenShift Container Platform.

Lorsque vous effectuez des opérations de gestion de nœuds, vous créez ou modifiez une ressource personnalisée (CR) KubeletConfig.

Important

Lorsque des modifications sont apportées à la configuration d'une machine, le MCO (Machine Config Operator) redémarre automatiquement tous les nœuds correspondants pour que les modifications soient prises en compte.

Pour éviter que les nœuds ne redémarrent automatiquement après des modifications de la configuration de la machine, vous devez, avant d'effectuer ces modifications, interrompre le processus de redémarrage automatique en définissant le champ spec.paused sur true dans le pool de configuration de la machine correspondant. En cas de pause, les modifications de la configuration de la machine ne sont pas appliquées tant que vous n'avez pas défini le champ spec.paused sur false et que les nœuds n'ont pas redémarré dans la nouvelle configuration.

Assurez-vous que les pools ne sont pas interrompus lorsque la rotation des certificats d'AC a lieu. Si les MCP sont en pause, le MCO ne peut pas envoyer les nouveaux certificats à ces nœuds. Cela entraîne la dégradation du cluster et l'échec de plusieurs commandes oc, notamment oc debug, oc logs, oc exec et oc attach. Vous recevez des alertes dans l'interface utilisateur d'alerte de la console Web d'OpenShift Container Platform si un MCP est mis en pause lors de la rotation des certificats.

Les modifications suivantes ne déclenchent pas de redémarrage du nœud :

  • Lorsque le MCO détecte l'un des changements suivants, il applique la mise à jour sans vidanger ou redémarrer le nœud :

    • Modifications de la clé SSH dans le paramètre spec.config.passwd.users.sshAuthorizedKeys de la configuration d'une machine.
    • Changements apportés au secret de tirage global ou au secret de tirage dans l'espace de noms openshift-config.
    • Rotation automatique de l'autorité de certification /etc/kubernetes/kubelet-ca.crt par l'opérateur du serveur API Kubernetes.
  • Lorsque le MCO détecte des modifications dans le fichier /etc/containers/registries.conf, telles que l'ajout ou la modification d'un objet ImageDigestMirrorSet ou ImageTagMirrorSet, il draine les nœuds correspondants, applique les modifications et désenregistre les nœuds :

    • L'ajout d'un registre avec le jeu de paramètres pull-from-mirror = "digest-only" pour chaque miroir.
    • L'ajout d'un miroir avec le paramètre pull-from-mirror = "digest-only" défini dans un registre.
    • L'ajout d'éléments à la liste unqualified-search-registries.

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.

Ressources complémentaires

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.