52 lines
1.3 KiB
Plaintext
52 lines
1.3 KiB
Plaintext
|
QEMU Monitor Protocol
|
||
|
=====================
|
||
|
|
||
|
Introduction
|
||
|
-------------
|
||
|
|
||
|
The QEMU Monitor Protocol (QMP) is a JSON[1] based protocol for QEMU.
|
||
|
|
||
|
By using it applications can control QEMU in reliable and "parseable" way,
|
||
|
QMP also provides asynchronous events support.
|
||
|
|
||
|
For more information, please, refer to the following files:
|
||
|
|
||
|
o qmp-spec.txt QEMU Monitor Protocol current draft specification
|
||
|
o qmp-events.txt List of available asynchronous events
|
||
|
|
||
|
There are also two simple Python scripts available:
|
||
|
|
||
|
o qmp-shell A shell
|
||
|
o vm-info Show some informations about the Virtal Machine
|
||
|
|
||
|
[1] http://www.json.org
|
||
|
|
||
|
Usage
|
||
|
-----
|
||
|
|
||
|
To enable QMP, QEMU has to be started in "control mode". This is done
|
||
|
by passing the flag "control" to the "-monitor" command-line option.
|
||
|
|
||
|
For example:
|
||
|
|
||
|
$ qemu [...] -monitor control,tcp:localhost:4444,server
|
||
|
|
||
|
Will start QEMU in control mode, waiting for a client TCP connection
|
||
|
on localhost port 4444.
|
||
|
|
||
|
To manually test it you can connect with telnet and issue commands:
|
||
|
|
||
|
$ telnet localhost 4444
|
||
|
Trying ::1...
|
||
|
Connected to localhost.
|
||
|
Escape character is '^]'.
|
||
|
{"QMP": {"capabilities": []}}
|
||
|
{ "execute": "query-version" }
|
||
|
{"return": "0.11.50"}
|
||
|
|
||
|
Contact
|
||
|
-------
|
||
|
|
||
|
http://www.linux-kvm.org/page/MonitorProtocol
|
||
|
Luiz Fernando N. Capitulino <lcapitulino@redhat.com>
|