Remotely manage Unraid KVM


Recommended Posts

I would like to use 3rd party management apps to manage the VMs. The main reason for this is I need something more robust than the existing web management tool. I need to snapshot, clone, etc. I realize I can do this via a shell but I'm looking for a GUI.

 

Do you know if this is possible?

 

Thanks!

 

 

Link to comment

Try looking at webvirtmgr and virt-manager. Webvirtmgr is a web interface to manage KVM hypervisors and virt-manager is a GUI package to do the same. There are docker images for both of them on docker hub. I would suggest unws/webvirtmgr and tukiyo3/virt-manager.

  • Upvote 1
Link to comment

You rock. I have WebvirtMgr up and running as a docker container and its exactly what I needed. I did have to change the libvirtd.conf to listen on 0.0.0.0 vs the 127.0.0.1 but thats the only change on the unraid side and then just setting up the docker, connecting to the container and adding my user and away we go.

 

Thank you!

 

Link to comment

You rock. I have WebvirtMgr up and running as a docker container and its exactly what I needed. I did have to change the libvirtd.conf to listen on 0.0.0.0 vs the 127.0.0.1 but thats the only change on the unraid side and then just setting up the docker, connecting to the container and adding my user and away we go.

 

Thank you!

 

care to post a screenshot?

Link to comment

Main Panel for a VM

 

OuDDNpo.png

 

Snapshot:

 

Si1MrxM.png

 

Clone:

 

qx4U7QO.png

 

I have not attempted a clone yet.

 

The snapshots want the disk to be in qcow2 and I did have an issue restoring a snapshot. I dont know what happened but it didnt want to start right away. Maybe it was still restoring as it worked a little later. I made a file, snapshotted it, removed the file and then restored back..my file was back.

It does need the VM down when doing the snapshot.

 

 

Link to comment

A little tricky but I think this is complete:

 

1: Enable dockerhub access in the settings section of the Community Applications and then search for primiano/docker-webvirtmgr and add it to the system. You'll get a dialog like this. Change the port and /data/vm path to your appdata directory as needed. it will place a sqllite db in the appdata location.

uADMvuo.png

 

 

2: connect into the container:

docker exec -it docker-webvirtmgr bash

 

3. run this to add a user in the container..it will prompt for user/password/email.

/webvirtmgr/manage.py createsuperuser

 

4. exit out of the container: exit

 

5. edit /etc/libvirt/libvirtd.conf and comment out the line: listen_addr = "127.0.0.1" by putting a # symbol in front of it.

 

6. add a new line to  /etc/libvibvirt/libvirtd.conf:  listen_addr = "0.0.0.0" and save it

 

7) Restart the KVM system via unraid: Settings->VM Manager->Enable VMs to No and apply, Enable VMs to Yes and Apply.

 

8 ) Connect to your WebvirtMgr: http://<unraid ip>:8089 in my case

 

9) log into it with your new user created in step 3

 

10) Select Add connection and choose TCP and I filled in my unraid IP/root/root_password

 

 

 

 

 

  • Upvote 1
Link to comment

followup. I was a little concerned that the /etc/libvirt/libvirtd.conf change wouldnt survive a reboot given how unraid unpacks every time so I rebooted my box.

It survived and I was able to just start the webvirtmgr container and connect via the web url and it was all good.

 

Maybe someone(not me) should make a unraid xml file for this thing so it can be in the main 'Apps' section? I dont know enough to do so.

Link to comment

A little tricky but I think this is complete:

 

1:

Run this from the shell:  8089 is my web port..pick an open port and the /mnt/cache/docker/appdata/webvirtmgr is the app data location.

docker run -d -p 8089:8080 -p 6080:6080 --name webvirtmgr -v /mnt/cache/docker/appdata/webvirtmgr:/data/vm primiano/docker-webvirtmgr

To keep everything so that it can be properly managed through the GUI including, instead of step 1,

 

Search for primiano/docker-webvirtmgr in CA (get more results from docker hub) then select the appropriate appdata path within the template.

 

Adding containers manually through the command line (while it works) means that amongst other things should you ever have need to recreate the image file (cache drive failure?) you will have to search the forums etc for that particular container again. 

Link to comment

A little tricky but I think this is complete:

 

1:

Run this from the shell:  8089 is my web port..pick an open port and the /mnt/cache/docker/appdata/webvirtmgr is the app data location.

docker run -d -p 8089:8080 -p 6080:6080 --name webvirtmgr -v /mnt/cache/docker/appdata/webvirtmgr:/data/vm primiano/docker-webvirtmgr

To keep everything so that it can be properly managed through the GUI including, instead of step 1,

 

Search for primiano/docker-webvirtmgr in CA (get more results from docker hub) then select the appropriate appdata path within the template.

 

Adding containers manually through the command line (while it works) means that amongst other things should you ever have need to recreate the image file (cache drive failure?) you will have to search the forums etc for that particular container again.

 

I get a no matching content when i search it, also don't have the button that says search docker hub.. im on 6.1.9

Link to comment

Squid: How do I remove the "Display Recommended" section so Community Apps thinks it hasnt been converted already?

Hitting "Display Recommended" just kicks me out and doesnt allow me to get to the config section like if I hadnt converted it already.

 

VuGB1wL.png

 

Thanks!

 

Link to comment

Squid: How do I remove the "Display Recommended" section so Community Apps thinks it hasnt been converted already?

Hitting "Display Recommended" just kicks me out and doesnt allow me to get to the config section like if I hadnt converted it already.

 

VuGB1wL.png

 

Thanks!

 

 

I have the same problem.

Link to comment

Squid: How do I remove the "Display Recommended" section so Community Apps thinks it hasnt been converted already?

Hitting "Display Recommended" just kicks me out and doesnt allow me to get to the config section like if I hadnt converted it already.

 

VuGB1wL.png

 

Thanks!

uh you found a bug in a section of code I haven't looked at in 6 months.  (and no one else has noticed either)

 

Display Recommended was originally in there so that if the same container existed within unRaid repositories it would add that one instead of allowing you to add the bare repo.  However it doesn't work properly if you don't actually add the container.  (And it doesn't particularly make sense if the container in question was originally converted from dockerHub)

 

go to the flash drive (config/plugins/community.applications/private/DockerHub) and delete the appropriate xml file.  As my wife continually reminds me, I'm not perfect  :(

 

I'll issue an update tonight and probably take the display recommended button completely out of the system.

 

Link to comment
  • 8 months later...

Hey RXWatcher,

 

Thanks for the detailed instructions. I'm working on getting a template going for it. I have the container running, but any time I click on the name of my server in the "connections" page, I get the error below. Any ideas? I restarted libvirt with "/etc/rc.d/rc.libvirt restart" instead of the UI, but I don't think that matters. I'm running unraid 6.3.2.

 

Also, why did you give it your /mnt/user path?

 

 

Oops!

500 Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete you request.

Link to comment
  • 3 weeks later...
  • 3 weeks later...
  • 2 weeks later...

I've been wondering if any of you have found or know of a fix for that "Error 500" problem?


I was able to sucessfully install webvirmgr but can't connect to the unRAID VMs. Furthermore, everything should be configured correctly since I can - without any problems - connect to unraid with the desktop version of Virt-Manager.

Link to comment
  • 2 months later...

I can't seem to find the dockers listed here. Any alternative dockers for managing KVM?

 

update: I missed enabling dockerhub access as per instructions in this thread. I can now see them.

 

I am getting the "500 Internal Server Error" also. Libvirt Log shows the following: 2017-07-22 13:55:22.676+0000: 3266: error : virNetSocketReadWire:1808 : End of file while reading data: Input/output error

Edited by SCSI
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.