Erreur de calcul OpenStack : Bien que les hôtes de calcul aient nova-compute service à l'écoute, ces nœuds n'étaient pas affichés lorsque 'nova hypervisor-list ‘ la commande a été exécutée.
# nova hypervisor-list+----+---------------------------------+-------+ ---------+| identifiant | Nom d'hôte de l'hyperviseur | État | Statut |+----+-----------------------+-------+----- ----+
Mais la commande nova service-list n'a eu aucun problème pour afficher les hôtes de calcul. Eh bien, le problème peut sembler un peu étrange, mais si vous rencontrez un problème similaire dans OpenStack, voici la solution.
Solution :
Comment corriger l'erreur OpenStack Compute – Aucun enregistrement de nœud de calcul pour l'hôte ?
Étape 1 :Étant donné que les hôtes de calcul ne sont pas répertoriés, le problème est lié à nova-compute un service. J'ai donc commencé à déboguer le problème directement à partir des journaux des nœuds de calcul nova @.
[compute-node]# cd /var/log/nova
[compute-node]# tailf nova-compute.log
Exemple de résultat :
ERREUR nova.compute.manager [req-1d2c4e83-a57d-4e66-b8b4-81da4772b0d2 - - - - -] Aucun enregistrement de nœud de calcul pour l'hôte cloudsecurity5 INFO nova.compute.resource_tracker [req-1d2c4e83-a57d-4e66-b8b4-81da4772b0d2 - - - - -] Audit des ressources de calcul disponibles localement pour le nœud cloudsecurity5 ERREUR nova.compute.manager [req-1d2c4e83-a57d-4e66-b8b4-81da4772b0d2 - - - - -] Erreur lors de la mise à jour des ressources pour le nœud cloudsecurity5
L'erreur ci-dessus indique que le planificateur OpenStack n'est pas en mesure de trouver un hôte de calcul approprié, probablement en raison d'un hyperviseur non valide ou de nova-compute le service n'est pas opérationnel ou autre problème de configuration.
Étape 2 : Vérifier les configurations de Nova Compute
[compute-node]# vim /etc/nova-compute.conf
et recherchez les entrées ci-dessous sous [DEFAULT] rubrique.
[DEFAULT] compute_driver=libvirt.LibvirtDriver [libvirt] virt_type=kvm
Vérifiez également /etc/nova/nova.conf dispose de toutes les configurations nécessaires pour exécuter un hôte de calcul.
La partie centrale de nova-compute service est le pilote de virtualisation qui s'interface avec l'hyperviseur. OpenStack prend en charge de nombreux pilotes de calcul tels que libvirt.LibvirtDriver pour KVM , xenapi.XenAPIDriver pour Xen, vmwareapi.VMwareVCDriver pour VMware et hyperv.HyperVDrive pour HyperV. Dans mon cas, j'utilisais libvirt pilote de calcul (attention à compute_driver attribut dans l'instantané ci-dessus).
Étape 3 :Assurez-vous que libvirt démon est en cours d'exécution.
[compute-node]# /etc/init.d/état de libvirt-bin
Heureusement, le service libvirt-bin était actif, mais j'ai vu quelques erreurs à la fin de la sortie d'état, comme indiqué ci-dessous :
cloudsecurity5 libvirtd[58988] :nom d'hôte :cloudsecurity5.test.in cloudsecurity5 libvirtd[58988] :fin de fichier lors de la lecture des données :erreur d'entrée/sortie
Bien que libvirt-bin démon était en cours d'exécution, il indique toujours un problème lors de l'exécution d'une opération d'entrée/sortie.
Par conséquent, j'ai décidé de redémarrer libvirt-bin et son démon associé appelé libvirt-guests .
[compute-node]# /etc/init.d/libvirt-guests restart
[compute-node]# /etc/init.d/libvirt-bin restart
Une fois cela fait, confirmez si le démon s'exécute sans aucune erreur.
[compute-node]# /etc/init.d/état de libvirt-bin
Exemple de sortie à la fin du message d'état du service :
cloudsecurity2 systemd[1] :Démarrage du démon de virtualisation... cloudsecurity2 systemd[1] :Démarrage du démon de virtualisation. cloudsecurity2 dnsmasq[2960] :lire /etc/hosts - 9 adresses cloudsecurity2 dnsmasq[2960] :lire /var/lib/libvirt/dnsmasq/def cloudsecurity2 dnsmasq-dhcp[2960] :lire /var/lib/libvirt/dnsmasÉtape 4 : Redémarrez nova-compute service également.
[compute-node]# /etc/init.d/nova-compute restartDans mon cas, l'erreur d'entrée/sortie du démon libvirt était le coupable. Le problème est résolu et maintenant les nœuds de calcul sont correctement enregistrés comme indiqué ci-dessous :
# nova hypervisor-list +----+----------------------------+------- +---------+ | identifiant | Nom d'hôte de l'hyperviseur | État | Statut | +----+----------------------------+-------+------- --+ | 1 | cloudsecurity5.test.in | haut | activé | +----+----------------------------+-------+------- --+