Go to main content
Guide d'administration de Pilote et utilitaires Nova 1.0 d'Oracle® VM Server for SPARC OpenStack

Quitter la vue de l'impression

Mis à jour : Septembre 2016
 
 

Dépannage des problèmes de service de calcul Nova

Cette section décrit le dépannage des problèmes avec le pilote Nova.

Présentation de la sortie de journal du pilote Nova

Le pilote Nova d'OpenStack Oracle VM Server for SPARC fournit différents niveaux de détail sur la base des valeurs de propriétés de debug et verbose dans nova.conf.

La valeur verbose=true est préférable. Vous pouvez également définir debug=true pour aider à résoudre un problème.

  • En mode de débogage, le pilote Nova d'OpenStack Oracle VM Server for SPARC fournit des messages de suivi pour aider à identifier de manière précise la méthode en cours d'exécution à un moment donné. Ces messages peuvent vous aider à identifier la cause d'un problème que vous rencontrez. Pour trouver une entrée de méthode, recherchez method_run: dans le journal de service (SMF) nova-compute. Pour trouver un retour de méthode, recherchez method_return: dans le journal de service nova-compute.

  • Il est possible de visualiser d'autres messages de journal du pilote. Le pilote fournit également une autre sortie de journal qui commence par DEBUG:, WARNING:, ERROR:, EXCEPTION: ou INFO:.

    Notez que les entrées du journal du pilote de débogage Nova commencent par une ligne de ce type :

    2016-07-07 15:14:51.404 29186 DEBUG nova.virt.ldoms.driver
  • Le service nova-compute fournit des messages TRACE si une exception non gérée s'est produite. Recherchez les messages de TRACE pour identifier la cause d'un problème.

  • Assurez-vous que le pilote a démarré comme prévu. Lorsque vous démarrez le service nova-compute, assurez-vous qu'il démarre correctement. Lorsque le pilote démarre ou redémarre, les lignes de ce type devraient apparaître dans le journal :

    2016-07-07 15:20:14.011 1098 DEBUG nova.service [req-d8973f20-af93-4de6-9732-9e4a0ab6c61a - - - - -] Creating RPC server for service compute start /usr/lib/python2.7/vendor-packages/nova/service.py:188
    2016-07-07 15:20:14.013 1098 INFO oslo_messaging._drivers.impl_rabbit [req-d8973f20-af93-4de6-9732-9e4a0ab6c61a - - - - -] Connecting to AMQP server on 10.0.68.21:5672
    2016-07-07 15:20:14.026 1098 INFO oslo_messaging._drivers.impl_rabbit [req-d8973f20-af93-4de6-9732-9e4a0ab6c61a - - - - -] Connected to AMQP server on 10.0.68.21:5672
    2016-07-07 15:20:14.033 1098 DEBUG nova.service [req-d8973f20-af93-4de6-9732-9e4a0ab6c61a - - - - -] Join ServiceGroup membership for this service compute start /usr/lib/python2.7/vendor-packages/nova/service.py:206
    2016-07-07 15:20:14.033 1098 DEBUG nova.servicegroup.drivers.db [req-d8973f20-af93-4de6-9732-9e4a0ab6c61a - - - - -] DB_Driver: join new ServiceGroup member 10.0.68.22 to the compute group, service = <nova.service.Service object at 0xea967cf0> join /usr/lib/python2.7/vendor-packages/nova/servicegroup/drivers/db.py:59

    Si vous ne voyez pas de connexion à AMQP ni le message DB_Driver: join new ServiceGroup member, vérifiez que l'arrêt du pilote n'est pas dû à un problème de configuration. Si le problème est un problème de configuration, vous verrez une exception commençant par EXCEPTION ou ERROR au début du journal de démarrage.

    Si le pilote ne détecte pas les problèmes de configuration, vérifiez que votre MTU pour le réseau de gestion est la même partout, que NTP est configuré et que la résolution de noms fonctionne.

  • En mode débogage (debug=true), les messages DEBUG du pilote figurent dans les journaux de gestion de calcul Nova. Le pilote Nova possède des traces run_method et method_return. Vous pouvez suivre ces traces pour toutes les méthodes que le pilote exécute. Ces traces permettent de localiser précisément où un problème survient et montrent toutes les étapes précédentes qui ont conduit au problème.

    Vous pouvez utiliser les commandes suivantes pour simplifier le processus de débogage en mode débogage ou avec un fichier journal de débogage :

    nova# tail -f `svcs -L nova-compute` | egrep 'DEBUG: run_method:|TRACE|EXCEPTION'

    Ou exécutez une trace qui comporte method_return avec la valeur de retour :

    nova# tail -f `svcs -L nova-compute` \
    | egrep 'DEBUG: run_method:|DEBUG: method_return:|TRACE|EXCEPTION'

    La commande suivante effectue une trace et exclut DLM et d'autres tâches PERIODIC :

    nova# tail -f `svcs -L nova-compute` | egrep 'DEBUG: run_method:|TRACE|EXCEPTION' \
    | egrep -v 'PERIODIC|dlm'