Node Qemu Server Save

Free GUI / Frontend / Management tool for simple setup, configure and control virtual machines (qemu / kvm) within your HTML5 Webbrowser. Virtualization with Node.js / Currently under complete rewrite.

Project README

node-qemu-server

node-qemu-server lets you control virtual machines in your webbrowser.

Requirements

Linux

  • LSB Linux x86_64 (tested with Debian (Sid) GNU/Linux)
  • qemu-system-x86 v1.6.1
  • nodejs v0.10.21
  • npm
  • packages: {numactl, usbutils} (usb and numa are only available on Linux)

OS X

  • v10.8 / v10.9 x86_64
  • macports qemu v1.6.1

Installation

Install node-qemu-server on Debian GNU/Linux and OS X (assume you have installed qemu, node, npm and numactl)

$ git clone https://github.com/baslr/node-qemu-server
$ cd node-qemu-server
$ npm install
$ git submodule init
$ git submodule update
$ cd public/vendor/
$ bower install
$ cd ../../
$ ./cc
$ node server

Now open your HTML5 Webbrowser and open http://127.0.0.1:4224

gui_host gui_guests gui_disks gui_isos guest_creation


setup and control qemu instances with Node.js

more to come in the future

vision: setup and control qemu instances via web gui, lean and simple

implemented qmp commands

system commands

pause, reset, resume, shutdown, stop
node-qemu command qmp command
qVm.pause() {"name": "stop"}
qVm.reset() {"name": "system_reset"}
qVm.resume() {"name": "cont"}
qVm.shutdown() {"name": "system_powerdown"}
qVm.stop() {"name": "quit"}
qVm.status() {"name": "query-status"}
# in work
      {"name": "qom-list-types"}
      {"name": "change-vnc-password"}
      {"name": "qom-get"}
      {"name": "qom-set"}
      {"name": "qom-list"}
      {"name": "query-block-jobs"}
      {"name": "query-balloon"}
      {"name": "query-migrate"}
      {"name": "query-uuid"}
      {"name": "query-name"}
      {"name": "query-spice"}
      {"name": "query-vnc"}
      {"name": "query-mice"}
      {"name": "query-kvm"}
      {"name": "query-pci"}
      {"name": "query-cpus"}
      {"name": "query-blockstats"}
      {"name": "query-block"}
      {"name": "query-chardev"}
      {"name": "query-commands"}
      {"name": "query-version"}
      {"name": "human-monitor-command"}
      {"name": "qmp_capabilities"}
      {"name": "add_client"}
      {"name": "expire_password"}
      {"name": "set_password"}
      {"name": "block_set_io_throttle"}
      {"name": "block_passwd"}
      {"name": "closefd"}
      {"name": "getfd"}
      {"name": "set_link"}
      {"name": "balloon"}
      {"name": "blockdev-snapshot-sync"}
      {"name": "transaction"}
      {"name": "block-job-cancel"}
      {"name": "block-job-set-speed"}
      {"name": "block-stream"}
      {"name": "block_resize"}
      {"name": "netdev_del"}
      {"name": "netdev_add"}
      {"name": "client_migrate_info"}
      {"name": "migrate_set_downtime"}
      {"name": "migrate_set_speed"}
      {"name": "migrate_cancel"}
      {"name": "migrate"}
      {"name": "xen-save-devices-state"}
      {"name": "inject-nmi"}
      {"name": "pmemsave"}
      {"name": "memsave"}
      {"name": "cpu"}
      {"name": "device_del"}
      {"name": "device_add"}

      {"name": "system_wakeup"}
      {"name": "screendump"}
      {"name": "change"}
      {"name": "eject"}
Open Source Agenda is not affiliated with "Node Qemu Server" Project. README Source: baslr/node-qemu-server
Stars
51
Open Issues
3
Last Commit
6 years ago

Open Source Agenda Badge

Open Source Agenda Rating