Ajout d'infos sur le mode monitor avec libvirt
This commit is contained in:
parent
6d54407c4b
commit
62da558c7c
87
HowtoKVM.md
87
HowtoKVM.md
|
@ -585,11 +585,8 @@ etc.
|
||||||
L'utilisation du format de stockage QCOW2 permet d'avoir des snapshots à chaud !
|
L'utilisation du format de stockage QCOW2 permet d'avoir des snapshots à chaud !
|
||||||
On peut créer plusieurs snapshots de l'état disque/mémoire, et restaurer en quelques secondes.
|
On peut créer plusieurs snapshots de l'état disque/mémoire, et restaurer en quelques secondes.
|
||||||
|
|
||||||
### Avec libvirt
|
Avec libvirt, création/restauration/suppression de snapshot se gère de façon conviviale avec *virt-manager*
|
||||||
|
ou on peut aussi utiliser _virsh_ (TODO: exemple de XML pour créer un snapshot) :
|
||||||
Avec libvirt, création/restauration/suppression de snapshot se gère de façon conviviale avec *virt-manager*.
|
|
||||||
|
|
||||||
On peut aussi utiliser virsh :
|
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
# virsh snapshot-list template
|
# virsh snapshot-list template
|
||||||
|
@ -622,10 +619,10 @@ Metadata: yes
|
||||||
snapshot-revert Revert a domain to a snapshot
|
snapshot-revert Revert a domain to a snapshot
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
### Sans libvirt
|
|
||||||
|
|
||||||
On peut gérer les snapshots via le [Mode Monitor](#mode-monitor) et les commandes *savevm*/*loadvm*/*info snapshots*.
|
On peut gérer les snapshots via le [Mode Monitor](#mode-monitor) et les commandes *savevm*/*loadvm*/*info snapshots*.
|
||||||
|
|
||||||
|
### Options -loadvm / -snapshot (non gérées avec libvirt)
|
||||||
|
|
||||||
On peut démarrer directement sur un snapshot *s0* avec l'option `-loadvm` :
|
On peut démarrer directement sur un snapshot *s0* avec l'option `-loadvm` :
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
|
@ -673,52 +670,78 @@ backing file: install-debian-base.qcow2base (actual path: install-debian-base..q
|
||||||
/!\\ Attention, ne jamais modifier une image de base si elle a des images dérivées sous peine de tout perdre !!
|
/!\\ Attention, ne jamais modifier une image de base si elle a des images dérivées sous peine de tout perdre !!
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Mode monitor
|
## Mode monitor
|
||||||
|
|
||||||
<http://en.wikibooks.org/wiki/QEMU/Monitor>
|
<http://en.wikibooks.org/wiki/QEMU/Monitor>
|
||||||
|
<https://doc.opensuse.org/documentation/leap/virtualization/html/book.virt/cha.qemu.monitor.html>
|
||||||
|
|
||||||
Le mode *monitor* permet d'effectuer diverses actions. Attention, il n'est pas disponible pour les VM utilisant libvirt.
|
Le _mode monitor_ est une option de **kvm** et permet d'effectuer diverses actions (état de la VM, action sur la VM, snapshots, etc.).
|
||||||
|
|
||||||
Pour créer un mode monitor :
|
_libvirt_ crée automatiquement un _mode monitor_ qu'il utilise (donc non accessible directement), mais on peut aussi l'utiliser via :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# virsh qemu-monitor-command <vm-name> --hmp "info block"
|
||||||
|
~~~
|
||||||
|
|
||||||
|
On peut aussi créer un _mode monitor_ manuellement, qui sera accessible via _telnet_ :
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
$ kvm […] -monitor tcp:127.0.0.1:<port monitor>,server,nowait
|
$ kvm […] -monitor tcp:127.0.0.1:<port monitor>,server,nowait
|
||||||
~~~
|
|
||||||
|
|
||||||
Pour accéder au mode monitor :
|
|
||||||
|
|
||||||
~~~
|
|
||||||
$ telnet 127.0.0.1 <port monitor>
|
$ telnet 127.0.0.1 <port monitor>
|
||||||
Trying 127.0.0.1…
|
Trying 127.0.0.1…
|
||||||
Connected to 127.0.0.1.
|
Connected to 127.0.0.1.
|
||||||
Escape character is '^]'.
|
Escape character is '^]'.
|
||||||
QEMU 0.9.1 monitor - type 'help' for more information
|
QEMU 0.9.1 monitor - type 'help' for more information
|
||||||
(qemu)
|
(qemu)
|
||||||
~~~
|
|
||||||
|
|
||||||
### Extinction ACPI d'une VM
|
|
||||||
|
|
||||||
~~~
|
|
||||||
$ echo system_powerdown | nc 127.0.0.1 <port monitor>
|
$ echo system_powerdown | nc 127.0.0.1 <port monitor>
|
||||||
QEMU 0.12.5 monitor - type 'help' for more information
|
~~~
|
||||||
|
|
||||||
|
### Infos sur une VM
|
||||||
|
|
||||||
|
~~~
|
||||||
|
(qemu) info block
|
||||||
|
(qemu) info blockstats
|
||||||
|
(qemu) info network
|
||||||
|
(qemu) info uuid
|
||||||
|
~~~
|
||||||
|
|
||||||
|
### Actions sur une VM
|
||||||
|
|
||||||
|
Extinction ACPI d'une VM :
|
||||||
|
|
||||||
|
~~~
|
||||||
(qemu) system_powerdown
|
(qemu) system_powerdown
|
||||||
(qemu)
|
|
||||||
^C
|
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
### pause/resume d'une VM
|
pause/resume d'une VM :
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
$ nc 127.0.0.1 <port monitor>
|
|
||||||
QEMU 0.12.5 monitor - type 'help' for more information
|
|
||||||
(qemu) stop
|
(qemu) stop
|
||||||
stop
|
|
||||||
(qemu) cont
|
(qemu) cont
|
||||||
cont
|
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
### Gestion des snapshots via le mode monitor
|
Envoyer une combinaison clavier :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
(qemu) sendkey ctrl-alt-f1
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Mot de passe VNC :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
(qemu) change vnc password
|
||||||
|
~~~~
|
||||||
|
|
||||||
|
Ajout de disques/périphériques à chaud :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
(qemu) drive_add ?
|
||||||
|
(qemu) device_add ?
|
||||||
|
~~~
|
||||||
|
|
||||||
|
### Actions sur les snapshots
|
||||||
|
|
||||||
Ceci n'est disponible que pour les VMs utilisant un stockage QCOW2.
|
Ceci n'est disponible que pour les VMs utilisant un stockage QCOW2.
|
||||||
|
|
||||||
|
@ -751,6 +774,14 @@ sync
|
||||||
cp debian1.qcow2 debian.current.qcow2
|
cp debian1.qcow2 debian.current.qcow2
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
|
/!\\ Attention, avec *libvirt* si l'on passe directement par le _mode monitor_ les snapshots ne seront pas visibles par _libvirt_ qui gère un état XML des snapshots.
|
||||||
|
On pourra néanmoins faire :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# virsh qemu-monitor-command <vm-name> --hmp "savevm snap.current"
|
||||||
|
# virsh qemu-monitor-command <vm-name> --hmp "info snapshots"
|
||||||
|
~~~
|
||||||
|
|
||||||
|
|
||||||
## virsh
|
## virsh
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue