Im Allgemeinen werden Sie virsh verwenden, um VMs zu steuern, aber es gibt ein paar nützliche Funktionen, die Sie von xm bekommen können, aber nicht von virsh. Wir behandeln hier die häufigsten Befehle.
Wie liste ich die aktuell laufende VM auf dem physischen Server auf?
# xm list Name ID Mem VCPUs State Time(s) 0004fb00000600004689b1d1cc6e83d9 1 1027 1 r—– 293.5 Domain-0 0 830 4 r—– 1242.7
Wie listet man die virtuellen CPUs auf, die der VM mit der Domänen-ID 1 zugewiesen sind?
# xm vcpu-list 1 Name ID VCPU CPU State Time(s) CPU Affinity 0004fb00000600004689b1d1cc6e83d9 1 0 2 -b- 287.8 any cpu
Wie überprüfe ich den Status der Domain?
# xm domstate 1 idle
Wie listet man die vNICs auf, die VMs zugewiesen sind?
# xm network-list 1 Idx BE MAC Addr. handle state evt-ch tx-/rx-ring-ref BE-path 0 0 00:21:f6:cd:c2:87 0 4 6 768 /769 /local/domain/0/backend/vif/1/0
Wie überprüfe ich die Betriebszeit der VM?
# xm uptime Name ID Uptime 0004fb00000600004689b1d1cc6e83d9 2 0:01:07 Domain-0 0 4:21:58
Wie listet man die mit VM verknüpften Blockgeräte auf?
# xm block-list 1 Vdev BE handle state evt-ch ring-ref BE-path 51712 0 0 4 12 9 /local/domain/0/backend/vbd/1/51712 51728 0 0 4 13 10 /local/domain/0/backend/vbd/1/51728
Wie starte ich die Domäne vom OVS-Server neu?
# xm reboot 2
Nach dem Neustart wird die Domänen-ID geändert.
# xm list Name ID Mem VCPUs State Time(s) 0004fb00000600004689b1d1cc6e83d9 3 1033 1 -b—- 1.3 Domain-0 0 831 4 r—– 1461.7
Wie führe ich die Trockenprüfung durch, um zu sehen, ob die Domain auf die Ressourcen zugreifen kann?
# xm dry-run /OVS/Repositories/0004fb0000030000f1532acb312df8a2/VirtualMachines/0004fb00000600004689b1d1cc6e83d9/vm.cfg Using config file “/OVS/Repositories/0004fb0000030000f1532acb312df8a2/VirtualMachines/0004fb00000600004689b1d1cc6e83d9/vm.cfg”. Checking domain: 0004fb00000600004689b1d1cc6e83d9: PERMITTED Checking resources: file:/OVS/Repositories/0004fb0000030000f1532acb312df8a2/VirtualDisks/0004fb0000120000f81558f292b2f52e.img: PERMITTED file:/OVS/Repositories/0004fb0000030000f1532acb312df8a2/ISOs/V41362-01.iso: PERMITTED Dry Run: PASSED
Wie speichere ich eine Domain?
Um die Maschine zu speichern, geben Sie Folgendes ein:
# xm save [domain name or id] [savefile]
Dieser Befehl weist die Domain an, sich selbst zu suspendieren; die Domäne gibt ihre Ressourcen wieder an Domäne 0 frei, trennt ihre Interrupt-Handler und wandelt ihre physischen Speicherzuordnungen zurück in domänenvirtuelle Zuordnungen (weil sich die physischen Speicherzuordnungen fast sicher ändern werden, wenn die Domäne wiederhergestellt wird).
Wie stellt man eine Domain wieder her?
Die Wiederherstellung der Domain ist einfach:
# xm restore [savefile]
Die Wiederherstellung funktioniert ähnlich wie das Rückwärtssparen; Der Hypervisor weist der Domäne Speicher zu, schreibt Seiten aus der Sicherungsdatei in den neu zugewiesenen Speicher und übersetzt die Einträge der Schattenseitentabelle, um auf die neuen physischen Adressen zu zeigen. Wenn dies erreicht ist, nimmt die Domäne die Ausführung wieder auf, stellt alles wieder her, was sie entfernt hat, als sie ausgesetzt wurde, und beginnt zu funktionieren, als ob nichts passiert wäre.