7.4. Dépannage des problèmes liés au système d'exploitation
OpenShift Container Platform fonctionne sous RHCOS. Vous pouvez suivre ces procédures pour résoudre les problèmes liés au système d'exploitation.
7.4.1. Enquêter sur les pannes du noyau Copier lienLien copié sur presse-papiers!
Le service kdump
, inclus dans le paquetage kexec-tools
, fournit un mécanisme de crash-dump. Vous pouvez utiliser ce service pour sauvegarder le contenu de la mémoire d'un système en vue d'une analyse ultérieure.
L'architecture x86_64
supporte kdump en état de disponibilité générale (GA), tandis que les autres architectures supportent kdump en état d'aperçu technologique (TP).
Le tableau suivant fournit des détails sur le niveau de support de kdump pour différentes architectures.
Architecture | Niveau de soutien |
---|---|
|
GA |
|
TP |
|
TP |
|
TP |
La prise en charge de Kdump, pour les trois architectures précédentes dans le tableau, est une fonctionnalité d'aperçu technologique uniquement. Les fonctionnalités de l'aperçu technologique ne sont pas prises en charge par les accords de niveau de service (SLA) de production de Red Hat et peuvent ne pas être complètes sur le plan fonctionnel. Red Hat ne recommande pas leur utilisation en production. Ces fonctionnalités offrent un accès anticipé aux fonctionnalités des produits à venir, ce qui permet aux clients de tester les fonctionnalités et de fournir un retour d'information au cours du processus de développement.
Pour plus d'informations sur la portée de l'assistance des fonctionnalités de l'aperçu technologique de Red Hat, voir Portée de l'assistance des fonctionnalités de l'aperçu technologique.
7.4.1.1. Activation de kdump Copier lienLien copié sur presse-papiers!
RHCOS est livré avec le paquetage kexec-tools
, mais une configuration manuelle est nécessaire pour activer le service kdump
.
Procédure
Effectuez les étapes suivantes pour activer kdump sur RHCOS.
Pour réserver de la mémoire pour le noyau de crash lors du premier démarrage du noyau, fournissez des arguments au noyau en entrant la commande suivante :
rpm-ostree kargs --append='crashkernel=256M'
# rpm-ostree kargs --append='crashkernel=256M'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Facultatif : Pour écrire le crash dump sur le réseau ou à un autre endroit, plutôt qu'à l'emplacement local par défaut de
/var/crash
, modifiez le fichier de configuration de/etc/kdump.conf
.NoteSi votre nœud utilise des dispositifs cryptés LUKS, vous devez utiliser des vidages de réseau, car kdump ne prend pas en charge l'enregistrement des vidages de collisions sur des dispositifs cryptés LUKS.
Pour plus de détails sur la configuration du service
kdump
, voir les commentaires dans/etc/sysconfig/kdump
,/etc/kdump.conf
, et la page de manuelkdump.conf
. Consultez également la documentation RHEL kdump pour plus d'informations sur la configuration de la cible de vidage.Activez le service
kdump
systemd.systemctl enable kdump.service
# systemctl enable kdump.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Redémarrez votre système.
systemctl reboot
# systemctl reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Assurez-vous que kdump a chargé un noyau en panne en vérifiant que le service
kdump.service
systemd a démarré et s'est arrêté avec succès et que la commande,cat /sys/kernel/kexec_crash_loaded
, affiche la valeur1
.
7.4.1.2. Activation de kdump au jour 1 Copier lienLien copié sur presse-papiers!
Le service kdump
est destiné à être activé par nœud pour déboguer les problèmes du noyau. Étant donné que l'activation de kdump a un coût et que ce coût s'accumule avec chaque nœud supplémentaire activé par kdump, il est recommandé de n'activer le service kdump
sur chaque nœud qu'en cas de besoin. Les coûts potentiels de l'activation du service kdump
sur chaque nœud sont les suivants :
- Moins de RAM disponible en raison de la mémoire réservée au noyau de crash.
- Indisponibilité du nœud alors que le noyau est en train de vider le cœur.
- Espace de stockage supplémentaire utilisé pour stocker les crash dumps.
Si vous connaissez les inconvénients et les compromis liés à l'activation du service kdump
, il est possible d'activer kdump à l'échelle de la grappe. Bien que les configurations de machines spécifiques ne soient pas encore prises en charge, vous pouvez utiliser une unité systemd
dans un objet MachineConfig
en tant que personnalisation du jour 1 et activer kdump sur tous les nœuds de la grappe. Vous pouvez créer un objet MachineConfig
et injecter cet objet dans l'ensemble des fichiers manifestes utilisés par Ignition lors de la configuration du cluster.
Voir "Personnaliser les nœuds" dans la section Installing
Procédure
Créer un objet MachineConfig
pour la configuration de l'ensemble du cluster :
Créez un fichier de configuration Butane,
99-worker-kdump.bu
, qui configure et active kdump :Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1 2
- Remplacer
worker
parmaster
aux deux endroits lors de la création d'un objetMachineConfig
pour les nœuds du plan de contrôle. - 3
- Fournir des arguments au noyau pour réserver de la mémoire pour le noyau de crash. Vous pouvez ajouter d'autres arguments du noyau si nécessaire.
- 4
- Si vous souhaitez modifier le contenu de
/etc/kdump.conf
par rapport à la valeur par défaut, incluez cette section et modifiez la sous-sectioninline
en conséquence. - 5
- Si vous souhaitez modifier le contenu de
/etc/sysconfig/kdump
par rapport à la valeur par défaut, incluez cette section et modifiez la sous-sectioninline
en conséquence.
Utiliser Butane pour générer un fichier YAML de configuration de la machine,
99-worker-kdump.yaml
, contenant la configuration à fournir aux nœuds :butane 99-worker-kdump.bu -o 99-worker-kdump.yaml
$ butane 99-worker-kdump.bu -o 99-worker-kdump.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Placez le fichier YAML dans le répertoire
<installation_directory>/manifests/
lors de l'installation du cluster. Vous pouvez également créer cet objetMachineConfig
après l'installation du cluster avec le fichier YAML :oc create -f 99-worker-kdump.yaml
$ oc create -f 99-worker-kdump.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.1.3. Test de la configuration de kdump Copier lienLien copié sur presse-papiers!
Voir la section Test de la configuration de kdump dans la documentation RHEL pour kdump.
7.4.1.4. Analyse d'un core dump Copier lienLien copié sur presse-papiers!
Voir la section Analyse d'un core dump dans la documentation RHEL pour kdump.
Il est recommandé d'effectuer l'analyse vmcore sur un système RHEL distinct.
Ressources supplémentaires
- Configuration de kdump dans RHEL
- Documentation du noyau Linux pour kdump
-
kdump.conf(5) - une page de manuel pour le fichier de configuration
/etc/kdump.conf
contenant la documentation complète des options disponibles -
kexec(8) - une page de manuel pour le paquetage
kexec
- Article de la base de connaissances de Red Hat concernant kexec et kdump
7.4.2. Débogage des pannes d'allumage Copier lienLien copié sur presse-papiers!
Si une machine ne peut pas être provisionnée, Ignition échoue et RHCOS démarre dans le shell d'urgence. Utilisez la procédure suivante pour obtenir des informations de débogage.
Procédure
Exécutez la commande suivante pour afficher les unités de service qui ont échoué :
systemctl --failed
$ systemctl --failed
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Facultatif : Exécutez la commande suivante sur une unité de service individuelle pour obtenir plus d'informations :
journalctl -u <unit>.service
$ journalctl -u <unit>.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow