<div dir="ltr"><div><div><div><div><div><div><div><div>Hi all,<br><br>I created a python script, with similar 'dog' syntax with the scope of simplifying cluster management.<br><br>  <a href="https://github.com/sirio81/vmcli">https://github.com/sirio81/vmcli</a><br>
<br></div>With a simple command like<br></div><div>  alias vmcli='/path/to/vmcli.py --cluster=test --config=/path/config/dir'<br></div>  vmcli cluster show<br></div>I get quick overview of the guests and servers.<br>
<br></div>I have been often searching for the vnc diplay of a qemu process before running a vnc client. And when you manage a cluster may also be difficult to remember which is the right host.<br></div>This is made easier by<br>
<br></div>  vmcli guest show guestName<br><br></div><div>To migrate a guest is way more easy then running several command on servers and qemu monitor:<br><br></div><div>  vmcli guest migrate guesName serverName<br></div><div>
 <br></div>It also<br><ul><li>check if the host has enough resources (ram and cpu) to start the guest;</li><li>check if the guest is already running on another host, to avoid virtual disk corruption;</li><li>check if a mac address or a virtual disk is already used by another running guest (due to user configuration error).</li>
</ul>There are some known bugs that I have to fix:<br><br></div><div>if  you run<br></div><div>  vmcli guest kill windows<br></div><div>and there's another guest named 'windows1', it will be killed as well.<br>
<br></div><div>'guest show' works also creating ssh tunnel.<br></div><div>Once the vnc client is closed there's nothing that close the ssh tunnel.<br></div><div>I have to think a way to manage that.<br><br></div>
<div>The most important thing for this to work is ssh configured on each server with a rsa key.<br></div><div>Then the proper cluster and guest configuration.<br><br></div><div>You may find this too useful.<br><br></div><div>
Notice that the libs may be re-used in other project.<br><br></div><div>Suggestions for a better coding and/or project structure are very welcome since I'm not a experienced programmer (and with very little time to spend on it).<br>
<br></div><div>Thank you.<br></div></div>