Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/juergh/dwarf

OpenStack API on top of libvirt/kvm
https://github.com/juergh/dwarf

Last synced: about 1 month ago
JSON representation

OpenStack API on top of libvirt/kvm

Awesome Lists containing this project

README

        

Dwarf
=====

In a nutshell, dwarf is OpenStack API on top of local libvirt/KVM. It supports
a subset of the Keystone, Glance and Nova APIs to manage images and instances
on the local machine.

Restrictions
------------

Lots :-) It only supports a subset of the OpenStack API and it currently
doesn't do user authentication. Meaning everybody who can log into the machine
can manipulate all images and instances managed through dwarf.

Everything is serialized and blocking. All calls to dwarf will be served in the
order they're received and only return after they've finished. There's no
scheduling and background processing.

Configuration
-------------

After installation, check that the settings in '/etc/dwarf.conf' match your
environment. You need to restart dwarf if you make any modifications:
$ sudo initctl restart dwarf

Set the OpenStack environment variables (modify the port number accordingly, if
you changed it in the config file):
$ export OS_AUTH_URL=http://localhost:35357/v2.0/
$ export OS_COMPUTE_API_VERSION=1.1
$ export OS_REGION_NAME=dwarf-region
$ export OS_TENANT_NAME=dwarf-tenant
$ export OS_USERNAME=dwarf-user
$ export OS_PASSWORD=dwarf-password

Supported OpenStack CLI commands
--------------------------------

At the moment, the following commands are supported:

keystone token-get
keystone catalog

glance image-create
glance image-delete
glance image-list
glance image-show
glance image-update

nova flavor-create
nova flavor-delete
nova flavor-list
nova flavor-show

nova image-list
nova image-show

nova keypair-add
nova keypair-delete
nova keypair-list
nova keypair-show

nova boot
nova console-log
nova delete
nova list
nova reboot
nova show

Notes
-----

Default compute flavors are automatically added, check them with:
$ nova flavor-list

Before you can boot an instance, you need to add an image and a keypair:
$ nova keypair-add
$ glance image-create --name 'My Image Name' --file

When booting an instance, the instance will receive a DHCP IP address from
libvirt's dnsmasq. It takes a bit until that happens, check the status with:
$ nova show

Debugging
---------

Check the log at /var/lib/dwarf/dwarf.log.