Install command for a new KVM is simply that (copy disk image to new vm filename before), removal would be shutdown/destroy/undefine/rm diskfile, reinstall the same and new install. VNC port should be stored in a DB with the name i guess, the XML file generated by this command (located here: http://paste.ee/p/WUDts ) should be read out for more informations (mac addresses, name, ram?) and possibly editable remotely (rename/change ram by admin or so?) config installer, a simple bash script on a NFS share on my hosting KVM - echo into it: n_hostname="nameofvm" extip="149.154.150.10 255.255.255.0 149.154.150.1" intip="10.76.138.125 255.255.255.0" run KVM install: virt-install --prompt --hvm --noautoconsole --graphics vnc,port=9300,keymap=de --autostart --name nameofvm --os-type linux --os-variant debiansqueeze --ram 1024 --vcpus=2 --disk path=/kvm/img/nameofvm.img,device=disk,bus=virtio --network bridge=br0,model=e1000 --network bridge=br1,model=e1000 --noreboot --import virsh start nameofvm Install from here on runs automatic, but i have no way to set a password yet - maybe integrate something to echo a SSH key in the bash installer that i can echo inside the KVM then? Sponsored KVMs also need to be modifed after one reboot (removal of br1 as bridge from the XML, my internal net) and once reset (destroy, define, start).