Gestion des clusters de services de virtualisation
Virtual Private Cloud 4.21 and later Bare metal worker nodes only RHCOS only
Découvrez comment gérer votre cluster du service de virtualisation d' OpenShift, notamment comment utiliser les composants préconfigurés, gérer les nœuds de travail et effectuer des tâches de maintenance.
Comprendre les composants gérés
Les clusters de services de virtualisation comprennent plusieurs composants préconfigurés qui sont gérés différemment de ceux des clusters d' OpenShift s standard.
Composants essentiels (ne peuvent pas être désactivés)
Les composants suivants sont indispensables au service de virtualisation et ne peuvent pas être désactivés :
- OpenShift Module complémentaire de virtualisation
- Le module complémentaire «
openshift-virtualization» est automatiquement activé sur tous les clusters du service de virtualisation et ne peut pas être désactivé. Ce module complémentaire gère l'installation et les mises à jour des opérateurs « OpenShift Virtualization », « NMState » et « Node Maintenance ». Pour plus d'informations, consultez la section « Gestion du module complémentaire de virtualisation d' OpenShift ». - Opérateur de virtualisation OpenShift
- Offre des fonctionnalités de gestion des machines virtuelles. Cet opérateur est installé automatiquement par le module complémentaire et mis à jour dans le cadre du cycle de vie du cluster. L'installation à partir de Red Hat OperatorHub est bloquée.
- Opérateur NMState
- Gère la configuration réseau des machines virtuelles et des nœuds. Cet opérateur est installé automatiquement par l'extension.
- Node Opérateur de maintenance
- Gère les opérations de maintenance des nœuds pour les charges de travail des machines virtuelles. Cet opérateur est installé automatiquement par l'extension.
- OpenShift Data Foundation (ODF)
- Permet le stockage de disques d' VM s et prend en charge la migration à chaud. ODF est préconfiguré pour utiliser le stockage NVMe local sur les nœuds bare metal.
Affichage des modules complémentaires gérés
Répertorier tous les modules complémentaires de votre cluster :
ibmcloud ks cluster addon ls --cluster CLUSTER_NAME
Exemple de sortie :
Name Version Health State Health Status
ibm-storage-operator 1.0 normal Addon Ready. For more info: http://ibm.biz/addon-state (H1500)
openshift-virtualization 4.21 normal Addon Ready. For more info: http://ibm.biz/addon-state (H1500)
Le module complémentaire « openshift-virtualization » est activé automatiquement et ne peut pas être désactivé sur les clusters Virtualization Service.
Pour plus d'informations sur la gestion du module complémentaire « Virtualisation » d' OpenShift, notamment sur l'affichage des détails, la vérification des versions et la mise à jour, consultez la section « Gestion du module complémentaire « Virtualisation » d' OpenShift ».
Gestion des nœuds de travail
Affichage des nœuds de travail
Répertoriez tous les nœuds de travail de votre cluster :
ibmcloud ks workers --cluster CLUSTER_NAME
Ou utilisez l'interface de ligne de commande (CLI) d' OpenShift:
oc get nodes
Ajout de noeuds worker
Ajouter des nœuds de travail à un pool de travail existant :
ibmcloud ks worker-pool resize --cluster CLUSTER_NAME \
--worker-pool default \
--size-per-zone NUMBER_OF_WORKERS
Tous les nœuds de travail d'un cluster Virtualization Service doivent utiliser des configurations « bare metal » prises en charge.
Remplacement des nœuds de travail
Remplacer un nœud de travail :
ibmcloud ks worker replace --cluster CLUSTER_NAME --worker WORKER_ID
Le remplaçant est configuré de la même manière que le titulaire.
Rechargement des nœuds de travail
Avant de redémarrer un nœud de travail, mettez ce nœud en mode maintenance à l’aide de l’opérateur de maintenance Node ou migrez les machines virtuelles en cours d’exécution vers d’autres nœuds. Pour plus d'informations, consultez les sections Mise en maintenance d'un nœud et Migration en direct de machines virtuelles.
Rechargez un nœud de travail pour appliquer les mises à jour ou résoudre les problèmes :
ibmcloud ks worker reload --cluster CLUSTER_NAME --worker WORKER_ID
Gestion des viviers de main-d'œuvre
Affichage des groupes de travailleurs
ibmcloud ks worker-pool ls --cluster CLUSTER_NAME
Création de pools de travailleurs supplémentaires
Créez un nouveau pool de workers avec une variante de serveur physique différente :
ibmcloud ks worker-pool create vpc-gen2 \
--name POOL_NAME \
--cluster CLUSTER_NAME \
--flavor BARE_METAL_FLAVOR \
--size-per-zone NUMBER_OF_WORKERS
Tous les pools de machines de travail d'un cluster Virtualization Service doivent utiliser des configurations « bare metal » prenant en charge l'offre « openshift-vs ».
Ajouter des zones aux groupes de travailleurs
Ajouter une zone à un pool de travailleurs existant :
ibmcloud ks zone add vpc-gen2 \
--cluster CLUSTER_NAME \
--zone ZONE \
--subnet-id SUBNET_ID \
--worker-pool POOL_NAME
Mise à jour du cluster
Recherche de mises à jour
Vérifiez si des mises à jour sont disponibles pour votre cluster :
ibmcloud ks cluster get --cluster CLUSTER_NAME | grep "Master Version"
Voir les versions disponibles :
ibmcloud ks versions --show-version openshift
Mise à jour du maître du cluster
Mettre à jour le maître du cluster vers une nouvelle version :
ibmcloud ks cluster master update --cluster CLUSTER_NAME --version VERSION
La mise à jour principale dure généralement entre 30 et 60 minutes. Pendant cette période, vous ne pourrez pas accéder à l'API Kubernetes ni à la console OpenShift.
Mise à jour des noeuds worker
Après avoir mis à jour le nœud maître, mettez à jour les nœuds de travail :
ibmcloud ks worker update --cluster CLUSTER_NAME --worker WORKER_ID
Ou mettre à jour tous les workers d'un pool de workers :
ibmcloud ks worker-pool update --cluster CLUSTER_NAME --worker-pool POOL_NAME
Avant de mettre à jour les nœuds de travail, placez chaque nœud en mode maintenance à l'aide de l'opérateur de maintenance Node ou migrez les machines virtuelles en cours d'exécution vers d'autres nœuds. Pour plus d'informations, consultez les sections Mise en maintenance d'un nœud et Migration en direct de machines virtuelles.
Surveillance de l'état de santé du cluster
Vérification de l'état du cluster
ibmcloud ks cluster get --cluster CLUSTER_NAME
Recherchez :
- État: Devrait être
normal - Statut principal: Devrait être
Ready - Santé: devrait être
normal
Surveillance de l'état des composants
Vérifier l'état de la virtualisation d' OpenShift:
oc get hyperconverged -n openshift-cnv
Vérifier l'état de santé de l'ODF :
oc get storagecluster -n openshift-storage
Affichage des journaux du cluster
Afficher l'activité du cluster :
ibmcloud ks cluster get --cluster CLUSTER_NAME --show-resources
Pour une journalisation détaillée, configurez IBM Log Analysis. Voir la section « Journalisation pour les clusters ».
Gestion des machines virtuelles
Affichage des machines virtuelles
Répertorier toutes les machines virtuelles du cluster :
oc get vms -A
Afficher les machines virtuelles d'un espace de noms spécifique :
oc get vms -n NAMESPACE
Mise en maintenance d'un nœud
Avant d'effectuer des opérations de maintenance telles que la mise à jour, le rechargement ou le remplacement d'un nœud de travail bare metal, mettez le nœud en mode maintenance. L'opérateur de maintenance d' Node isole le nœud et procède automatiquement à l'évacuation ou à la migration à chaud de toutes les charges de travail des machines virtuelles éligibles vers d'autres nœuds de la même zone, sans interrompre les charges de travail.
Si votre cluster utilise l' OpenShift Data Foundation (ODF), les nœuds exécutant des composants de stockage ODF doivent suivre les procédures de mise à niveau et de maintenance ODF plutôt que ce processus. Pour plus d'informations, voir Présentation d'OpenShift Data Foundation.
Lancement de la maintenance d’un nœud depuis la console Web
Vous pouvez lancer la maintenance d'un nœud directement depuis la console Web d' Red Hat OpenShift.
- Dans la console Web d' OpenShift, en mode Administrateur, accédez à Compute > Nodes.
- Recherchez le nœud de travail bare metal sur lequel vous souhaitez effectuer une opération de maintenance.
- Cliquez sur le menu d'actions (trois points verticaux) correspondant à ce nœud, puis sélectionnez Démarrer la maintenance.
- Dans la boîte de dialogue de confirmation, vérifiez les paramètres de maintenance, puis cliquez sur Démarrer.
- Vérifiez que l'état du nœud s'affiche comme
Scheduling disabledet que le menu des actions indique Arrêter la maintenance au lieu de Démarrer la maintenance. Attendez que toutes les instances d' VM s aient migré vers d'autres nœuds disponibles avant de procéder à votre action au niveau du nœud (telle queibmcloud ks worker reloadouibmcloud ks worker update). - Une fois votre intervention de maintenance terminée et le nœud remis en état de fonctionnement, revenez dans Compute > Nodes, cliquez sur le menu d'actions du nœud, puis sélectionnez Arrêter la maintenance.
Lancement de la maintenance du nœud à partir de l'interface de ligne de commande (CLI)
Vous pouvez également lancer la maintenance d'un nœud en créant une ressource personnalisée NodeMaintenance.
-
Créez un fichier YAML nommé
node-maintenance.yamlcontenant la définition de la ressource personnaliséeNodeMaintenance. Indiquez le nom du nœud de travail bare metal cible dans le champnodeName.apiVersion: nodemaintenance.medik8s.io/v1beta1 kind: NodeMaintenance metadata: name: nodemaintenance-NODE_NAME spec: nodeName: NODE_NAME reason: Node maintenance for update or reload -
Appliquez la ressource personnalisée pour mettre le nœud en mode maintenance :
oc apply -f node-maintenance.yaml -
Surveillez l'état de la ressource
NodeMaintenancepour vérifier que l'opération de vidange s'est déroulée avec succès :oc get nodemaintenance nodemaintenance-NODE_NAME -o jsonpath='{.status.phase}'Vérifiez les rapports de phase avant
Succeededde procéder au rechargement, à la mise à jour ou au remplacement du nœud. -
Effectuez l'action prévue au niveau du nœud, telle que le rechargement ou la mise à jour du nœud de travail :
ibmcloud ks worker reload --cluster CLUSTER_NAME --worker WORKER_ID -
Une fois le rechargement ou la mise à jour du nœud terminé et lorsque l'état du nœud dans est
oc get nodesReady, retirez le nœud de la maintenance en supprimant la ressourceNodeMaintenance:oc delete nodemaintenance nodemaintenance-NODE_NAME
Migration manuelle de machines virtuelles à chaud
Si vous souhaitez déclencher manuellement une migration à chaud pour une machine virtuelle spécifique au lieu d'utiliser l'opérateur de maintenance Node:
-
Répertoriez les instances de machines virtuelles dans l'espace de noms afin d'identifier le nom de l' VM e que vous souhaitez migrer :
oc get vmi -n NAMESPACE -
Lancer une migration en direct pour l' VM:
virtctl migrate VM_NAME -n NAMESPACE
Si une instance VM est associée à une interface réseau virtuelle (VNI), la migration à chaud n’est prise en charge qu’au sein de la même zone. La migration d’une telle VM d’une zone à l’autre réussit, mais l’ VM se retrouve avec un réseau défaillant, car les VNI ne peuvent pas être associés entre différentes zones.
Arrêt et démarrage des machines virtuelles
Mettre fin à une VM:
virtctl stop VM_NAME -n NAMESPACE
Lancez une VM:
virtctl start VM_NAME -n NAMESPACE
Gestion du stockage
Suivi de la capacité de stockage
Vérifier la capacité de stockage ODF :
oc get cephcluster -n openshift-storage -o jsonpath='{.items[0].status.ceph.capacity}'
Afficher l'utilisation de l'espace de stockage :
oc get cephblockpool -n openshift-storage
Gestion des revendications de volume persistant
Liste des PVC utilisés par les machines virtuelles :
oc get pvc -A | grep virtualmachine
Voir les détails sur le PVC :
oc describe pvc PVC_NAME -n NAMESPACE
Traitement des incidents
Pour résoudre les problèmes courants liés aux clusters du service de virtualisation, consultez les rubriques suivantes :
- Dépannage des clusters: problèmes liés aux nœuds de travail, accès au cluster et problèmes généraux liés au cluster
- Dépannage de la virtualisation d' OpenShift: problèmes liés aux machines virtuelles, difficultés rencontrées par les opérateurs et erreurs spécifiques à la virtualisation
- Dépannage du stockage- Problèmes liés à Data Foundation d' OpenShift et aux volumes persistants