Comment utiliser «virsh shutdown» sur les domaines KVM pour arrêter les invités Ubuntu?

13

J'utilise divers domaines KVM sur un serveur Ubuntu. L'hôte et les invités exécutent les noyaux 10.04.1, 2.6.32-24, virsh reports version 0.7.5, KVM 0.12.3. Les invités démarrent automatiquement lorsque l'hôte démarre et qu'ils l'ont <features><acpi/><features>dans leur configuration.

Je n'ai jamais réussi à faire virsh shutdown MyDomainde l'hôte un effet. Il répond avec Domain MyDomain is being shutdownet le domaine continue de fonctionner avec bonheur. virsh listles répertorie toujours dans l'état running.

virsh destroy MyDomain fonctionne bien, mais bien sûr ce n'est pas vraiment ce que je veux, donc la plupart du temps je me connecte à chacun et les arrête manuellement, ce qui est assez ennuyeux.

Je n'ai pas vraiment pu trouver d'informations sur la façon virsh shutdownde fermer le domaine. Les pointeurs vers des documents utiles sont les bienvenus.

Qu'est-ce qui pourrait provoquer cela? Comment est-il censé fonctionner?

hheimbuerger
la source

Réponses:

11

Vérifiez si le package acpid est installé sur chacun des invités.

En général, je crée de nouvelles machines virtuelles à l'aide de VMBuilder avec le paramètre --addpkg acpidet la seule fois où j'ai eu du mal à arrêter les invités Ubuntu à l'aide virshétait lorsque la VM invitée s'était bloquée d'une manière ou d'une autre.

moberley
la source
Génial, c'est tout ce qu'il a fallu! J'ai également ajouté cela à mon script VMBuilder maintenant. Ai-je raté un élément important de la documentation ici, ou êtes-vous supposé comme par magie le savoir? Rétrospectivement, cela a du sens pour moi, je suppose que virsh shutdownc'est juste l'équivalent d'appuyer sur le bouton d'alimentation d'une boîte physique. Mais que je n'ai vu nulle part mentionné non plus, ou j'aurais pu relier les points et enquêter davantage dans cette direction ... Quoi qu'il en soit, merci beaucoup! (Votera quand j'obtiendrai le représentant nécessaire.)
hheimbuerger
Je sais qu'il est mentionné dans la section Guide du serveur sur vmbuilder très près de la fin de l'article. Je ne sais pas si cela est mentionné ailleurs. help.ubuntu.com/10.04/serverguide/C/jeos-and-vmbuilder.html
moberley
Je ne dois pas l'avoir lu jusqu'au bout. blush Ou peut-être que je vais juste prétendre que ce n'était pas là quand j'ai initialement configuré la plupart de ces machines virtuelles (8.04 ou plus). : P
hheimbuerger
1
Remarque pour Debian: si vous avez désactivé l'installation des paquets recommandés , alors à elle acpidseule ne fait pas grand-chose car elle ne contient que les binaires. Vous devez installer le acpi-support-basepackage pour gérer les événements ACPI du bouton d'alimentation. Pour Ubuntu, acpidcontient à la fois des binaires et des gestionnaires d'événements de base et est suffisant.
cbliard
0

Si vous ne disposez pas de cette option, il existe des «modes d'arrêt» que vous pouvez utiliser pour déclencher un arrêt

$ sudo virsh shutdown --help
OPTIONS
[--domain] <string>  domain name, id or uuid
--mode <string>  shutdown mode: acpi|agent|initctl|signal|paravirt

c'est à dire,

sudo virsh shutdown domain1 --mode acpi
Octavian
la source