Rechercher

Chapitre 7. Tâches du nœud post-installation

download PDF

Après avoir installé OpenShift Container Platform, vous pouvez étendre et personnaliser votre cluster en fonction de vos besoins grâce à certaines tâches de nœuds.

7.1. Ajouter des machines de calcul RHEL à un cluster OpenShift Container Platform

Comprendre et travailler avec les nœuds de calcul RHEL.

7.1.1. À propos de l'ajout de nœuds de calcul RHEL à un cluster

Dans OpenShift Container Platform 4.12, vous avez la possibilité d'utiliser des machines Red Hat Enterprise Linux (RHEL) comme machines de calcul dans votre cluster si vous utilisez une installation d'infrastructure fournie par l'utilisateur sur l'architecture x86_64. Vous devez utiliser des machines Red Hat Enterprise Linux CoreOS (RHCOS) pour les machines du plan de contrôle dans votre cluster.

Si vous choisissez d'utiliser des machines de calcul RHEL dans votre cluster, vous êtes responsable de la gestion et de la maintenance de l'ensemble du cycle de vie du système d'exploitation. Vous devez effectuer les mises à jour du système, appliquer les correctifs et effectuer toutes les autres tâches requises.

Important
  • Étant donné que la suppression d'OpenShift Container Platform d'une machine du cluster nécessite la destruction du système d'exploitation, vous devez utiliser du matériel dédié pour toutes les machines RHEL que vous ajoutez au cluster.
  • La mémoire swap est désactivée sur toutes les machines RHEL que vous ajoutez à votre cluster OpenShift Container Platform. Vous ne pouvez pas activer la mémoire swap sur ces machines.

Vous devez ajouter toutes les machines de calcul RHEL au cluster après avoir initialisé le plan de contrôle.

7.1.2. Configuration requise pour les nœuds de calcul RHEL

Les machines de calcul Red Hat Enterprise Linux (RHEL) hôtes de votre environnement OpenShift Container Platform doivent répondre aux spécifications matérielles minimales et aux exigences de niveau système suivantes :

  • Vous devez avoir un abonnement OpenShift Container Platform actif sur votre compte Red Hat. Si ce n'est pas le cas, contactez votre représentant commercial pour plus d'informations.
  • Les environnements de production doivent fournir des machines de calcul pour prendre en charge les charges de travail prévues. En tant qu'administrateur de cluster, vous devez calculer la charge de travail prévue et ajouter environ 10 % de frais généraux. Pour les environnements de production, allouez suffisamment de ressources pour que la défaillance d'un hôte de nœud n'affecte pas votre capacité maximale.
  • Chaque système doit répondre aux exigences matérielles suivantes :

    • Système physique ou virtuel, ou instance fonctionnant sur un IaaS public ou privé.
    • Système d'exploitation de base : RHEL 8.6 ou 8.7 avec l'option d'installation "Minimal".

      Important

      L'ajout de machines de calcul RHEL 7 à un cluster OpenShift Container Platform n'est pas pris en charge.

      Si vous disposez de machines de calcul RHEL 7 qui étaient prises en charge dans une version antérieure d'OpenShift Container Platform, vous ne pouvez pas les mettre à niveau vers RHEL 8. Vous devez déployer de nouveaux hôtes RHEL 8, et les anciens hôtes RHEL 7 doivent être supprimés. Voir la section "Suppression des nœuds" pour plus d'informations.

      Pour obtenir la liste la plus récente des fonctionnalités majeures qui ont été dépréciées ou supprimées dans OpenShift Container Platform, consultez la section Deprecated and removed features des notes de version d'OpenShift Container Platform.

    • Si vous avez déployé OpenShift Container Platform en mode FIPS, vous devez activer FIPS sur la machine RHEL avant de la démarrer. Voir Installation d'un système RHEL 8 avec le mode FIPS activé dans la documentation RHEL 8.
Important

The use of FIPS Validated / Modules in Process cryptographic libraries is only supported on OpenShift Container Platform deployments on the x86_64 architecture.

  • NetworkManager 1.0 ou version ultérieure.
  • 1 vCPU.
  • Minimum 8 Go de RAM.
  • Minimum 15 Go d'espace sur le disque dur pour le système de fichiers contenant /var/.
  • Minimum 1 Go d'espace sur le disque dur pour le système de fichiers contenant /usr/local/bin/.
  • Au moins 1 Go d'espace sur le disque dur pour le système de fichiers contenant son répertoire temporaire. Le répertoire temporaire du système est déterminé selon les règles définies dans le module tempfile de la bibliothèque standard Python.

    • Chaque système doit répondre aux exigences supplémentaires de votre fournisseur de système. Par exemple, si vous avez installé votre cluster sur VMware vSphere, vos disques doivent être configurés conformément à ses directives de stockage et l'attribut disk.enableUUID=true doit être défini.
    • Chaque système doit pouvoir accéder aux points d'extrémité de l'API du cluster en utilisant des noms d'hôtes résolubles dans le DNS. Tout contrôle d'accès à la sécurité du réseau en place doit permettre l'accès du système aux points d'extrémité du service API de la grappe.

Ressources supplémentaires

7.1.2.1. Certificate signing requests management

Because your cluster has limited access to automatic machine management when you use infrastructure that you provision, you must provide a mechanism for approving cluster certificate signing requests (CSRs) after installation. The kube-controller-manager only approves the kubelet client CSRs. The machine-approver cannot guarantee the validity of a serving certificate that is requested by using kubelet credentials because it cannot confirm that the correct machine issued the request. You must determine and implement a method of verifying the validity of the kubelet serving certificate requests and approving them.

7.1.3. Préparation de la machine pour l'exécution du cahier de jeu

Avant d'ajouter des machines de calcul qui utilisent Red Hat Enterprise Linux (RHEL) comme système d'exploitation à un cluster OpenShift Container Platform 4.12, vous devez préparer une machine RHEL 8 pour exécuter un playbook Ansible qui ajoute le nouveau nœud au cluster. Cette machine ne fait pas partie du cluster mais doit pouvoir y accéder.

Conditions préalables

  • Installez le CLI OpenShift (oc) sur la machine sur laquelle vous exécutez le playbook.
  • Connectez-vous en tant qu'utilisateur disposant de l'autorisation cluster-admin.

Procédure

  1. Assurez-vous que le fichier kubeconfig pour le cluster et le programme d'installation que vous avez utilisé pour installer le cluster se trouvent sur l'ordinateur RHEL 8. Pour ce faire, vous pouvez utiliser la même machine que celle que vous avez utilisée pour installer le cluster.
  2. Configurez la machine pour accéder à tous les hôtes RHEL que vous prévoyez d'utiliser comme machines de calcul. Vous pouvez utiliser n'importe quelle méthode autorisée par votre entreprise, y compris un bastion avec un proxy SSH ou un VPN.
  3. Configurez un utilisateur sur la machine sur laquelle vous exécutez le playbook et qui dispose d'un accès SSH à tous les hôtes RHEL.

    Important

    Si vous utilisez l'authentification par clé SSH, vous devez gérer la clé avec un agent SSH.

  4. Si ce n'est pas déjà fait, enregistrez la machine auprès du RHSM et associez-lui un pool avec un abonnement OpenShift:

    1. Enregistrer la machine auprès du RHSM :

      # subscription-manager register --username=<user_name> --password=<password>
    2. Tirer les dernières données d'abonnement du RHSM :

      # subscription-manager refresh
    3. Liste des abonnements disponibles :

      # subscription-manager list --available --matches '*OpenShift*'
    4. Dans la sortie de la commande précédente, trouvez l'ID du pool pour un abonnement à OpenShift Container Platform et attachez-le :

      # subscription-manager attach --pool=<pool_id>
  5. Activer les dépôts requis par OpenShift Container Platform 4.12 :

    # subscription-manager repos \
        --enable="rhel-8-for-x86_64-baseos-rpms" \
        --enable="rhel-8-for-x86_64-appstream-rpms" \
        --enable="rhocp-4.12-for-rhel-8-x86_64-rpms"
  6. Installez les paquets nécessaires, y compris openshift-ansible:

    # yum install openshift-ansible openshift-clients jq

    Le paquet openshift-ansible fournit des utilitaires de programme d'installation et attire d'autres paquets dont vous avez besoin pour ajouter un nœud de calcul RHEL à votre cluster, tels qu'Ansible, les playbooks et les fichiers de configuration associés. Le paquet openshift-clients fournit la CLI oc, et le paquet jq améliore l'affichage de la sortie JSON sur votre ligne de commande.

7.1.4. Préparation d'un nœud de calcul RHEL

Avant d'ajouter une machine Red Hat Enterprise Linux (RHEL) à votre cluster OpenShift Container Platform, vous devez enregistrer chaque hôte auprès du gestionnaire d'abonnements Red Hat (RHSM), attacher un abonnement OpenShift Container Platform actif et activer les référentiels requis.

  1. Sur chaque hôte, s'enregistrer auprès du RHSM :

    # subscription-manager register --username=<user_name> --password=<password>
  2. Tirer les dernières données d'abonnement du RHSM :

    # subscription-manager refresh
  3. Liste des abonnements disponibles :

    # subscription-manager list --available --matches '*OpenShift*'
  4. Dans la sortie de la commande précédente, trouvez l'ID du pool pour un abonnement à OpenShift Container Platform et attachez-le :

    # subscription-manager attach --pool=<pool_id>
  5. Désactiver tous les dépôts yum :

    1. Désactiver tous les dépôts RHSM activés :

      # subscription-manager repos --disable="*"
    2. Dressez la liste des dépôts yum restants et notez leur nom sous repo id, le cas échéant :

      # yum repolist
    3. Utilisez yum-config-manager pour désactiver les autres dépôts yum :

      # yum-config-manager --disable <repo_id>

      Vous pouvez également désactiver tous les dépôts :

      # yum-config-manager --disable \*

      Notez que cette opération peut prendre quelques minutes si vous avez un grand nombre de référentiels disponibles

  6. Activez uniquement les dépôts requis par OpenShift Container Platform 4.12 :

    # subscription-manager repos \
        --enable="rhel-8-for-x86_64-baseos-rpms" \
        --enable="rhel-8-for-x86_64-appstream-rpms" \
        --enable="rhocp-4.12-for-rhel-8-x86_64-rpms" \
        --enable="fast-datapath-for-rhel-8-x86_64-rpms"
  7. Arrêtez et désactivez firewalld sur l'hôte :

    # systemctl disable --now firewalld.service
    Note

    Vous ne devez pas activer firewalld par la suite. Si vous le faites, vous ne pourrez pas accéder aux logs de OpenShift Container Platform sur le worker.

7.1.5. Ajout d'une machine de calcul RHEL à votre cluster

Vous pouvez ajouter des machines de calcul qui utilisent Red Hat Enterprise Linux comme système d'exploitation à un cluster OpenShift Container Platform 4.12.

Conditions préalables

  • Vous avez installé les paquets requis et effectué la configuration nécessaire sur la machine sur laquelle vous exécutez le playbook.
  • Vous avez préparé les hôtes RHEL pour l'installation.

Procédure

Effectuez les étapes suivantes sur la machine que vous avez préparée pour exécuter le manuel de jeu :

  1. Créez un fichier d'inventaire Ansible nommé /<path>/inventory/hosts qui définit les hôtes de votre machine de calcul et les variables requises :

    [all:vars]
    ansible_user=root 1
    #ansible_become=True 2
    
    openshift_kubeconfig_path="~/.kube/config" 3
    
    [new_workers] 4
    mycluster-rhel8-0.example.com
    mycluster-rhel8-1.example.com
    1
    Indiquez le nom de l'utilisateur qui exécute les tâches Ansible sur les ordinateurs distants.
    2
    Si vous ne spécifiez pas root pour ansible_user, vous devez définir ansible_become pour True et attribuer à l'utilisateur les autorisations sudo.
    3
    Indiquez le chemin et le nom du fichier kubeconfig pour votre cluster.
    4
    Dressez la liste de chaque machine RHEL à ajouter à votre cluster. Vous devez fournir le nom de domaine complet pour chaque hôte. Ce nom est le nom d'hôte que le cluster utilise pour accéder à la machine. Définissez donc le nom public ou privé correct pour accéder à la machine.
  2. Naviguez jusqu'au répertoire du playbook Ansible :

    $ cd /usr/share/ansible/openshift-ansible
  3. Exécutez le manuel de jeu :

    $ ansible-playbook -i /<path>/inventory/hosts playbooks/scaleup.yml 1
    1
    Pour <path>, indiquez le chemin d'accès au fichier d'inventaire Ansible que vous avez créé.

7.1.6. Paramètres requis pour le fichier hosts d'Ansible

Vous devez définir les paramètres suivants dans le fichier hosts Ansible avant d'ajouter des machines de calcul Red Hat Enterprise Linux (RHEL) à votre cluster.

ParamètresDescriptionValeurs

ansible_user

L'utilisateur SSH qui permet une authentification basée sur SSH sans mot de passe. Si vous utilisez l'authentification par clé SSH, vous devez gérer la clé avec un agent SSH.

Un nom d'utilisateur sur le système. La valeur par défaut est root.

ansible_become

Si les valeurs de ansible_user ne sont pas celles de root, vous devez définir ansible_become comme True, et l'utilisateur que vous spécifiez comme ansible_user doit être configuré pour un accès sudo sans mot de passe.

True. Si la valeur n'est pas True, ne pas spécifier ni définir ce paramètre.

openshift_kubeconfig_path

Spécifie un chemin et un nom de fichier vers un répertoire local qui contient le fichier kubeconfig pour votre cluster.

Le chemin et le nom du fichier de configuration.

7.1.7. Optionnel : Suppression des machines de calcul RHCOS d'un cluster

Après avoir ajouté les machines de calcul Red Hat Enterprise Linux (RHEL) à votre cluster, vous pouvez éventuellement supprimer les machines de calcul Red Hat Enterprise Linux CoreOS (RHCOS) afin de libérer des ressources.

Conditions préalables

  • Vous avez ajouté des machines de calcul RHEL à votre cluster.

Procédure

  1. Affichez la liste des machines et enregistrez les noms des nœuds des machines de calcul RHCOS :

    $ oc get nodes -o wide
  2. Pour chaque machine de calcul RHCOS, supprimer le nœud :

    1. Marquez le nœud comme non ordonnançable en exécutant la commande oc adm cordon:

      $ oc adm cordon <node_name> 1
      1
      Indiquez le nom du nœud de l'une des machines de calcul RHCOS.
    2. Égoutter toutes les gousses du nœud :

      oc adm drain <node_name> --force --delete-emptydir-data --ignore-daemonsets 1
      1
      Indiquez le nom du nœud de la machine de calcul RHCOS que vous avez isolée.
    3. Supprimer le nœud :

      oc delete nodes <node_name> $ oc delete nodes <node_name> 1
      1
      Indiquez le nom du nœud de la machine de calcul RHCOS que vous avez drainée.
  3. Examinez la liste des machines de calcul pour vous assurer que seuls les nœuds RHEL sont conservés :

    $ oc get nodes -o wide
  4. Supprimez les machines RHCOS de l'équilibreur de charge pour les machines de calcul de votre cluster. Vous pouvez supprimer les machines virtuelles ou réimager le matériel physique des machines de calcul RHCOS.
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.