github.com/emc-advanced-dev/unik@v0.0.0-20190717152701-a58d3e8e33b7/docs/providers/openstack.md (about) 1 # OpenStack UniK Provider 2 3 **DISCLAIMER: OpenStack provider is under active development, please don't use it in production yet. ** 4 5 UniK supports running OSv, IncludeOS, and Rumprun unikernels on OpenStack (using the QEMU hypervisor). 6 The OpenStack stub of your `daemon-config.yaml` file should look something like the following: 7 ```yaml 8 providers: 9 #... 10 openstack: 11 - name: openstack-1 12 username: myusername 13 password: mypassword 14 auth_url: http://12.23.34.45:5000/v2.0 15 tenant_id: 3dfe7bf545ff4885a3912a92a4a5f8e0 16 tenant_name: admin 17 project_name: admin 18 region_name: RegionOne 19 network_uuid: 73954b5b-7292-487d-9e22-1a63c8b5799e 20 ``` 21 You can override any of the settings above using environment variables, e.g. 22 ```bash 23 $ export OS_USERNAME=realusername 24 $ export OS_PASSWORD=realpassword 25 ``` 26 UniK suggests that your OpenStack credentials are set via [default OpenStack environment variables](http://docs.openstack.org/user-guide/common/cli-set-environment-variables-using-openstack-rc.html), however, this is not asserted. 27 28 ## About Flavors 29 UniK picks the most suitable flavor to run instance with, where most suitable means: 30 - as small as possible to fit logical image to it 31 - as little RAM as possible but not less than specified 32 33 ## Misc 34 UniK stores OpenStack data in the following paths: 35 * JSON representation of the state: `$HOME/.unik/openstack/state.json` 36 37 ## Network 38 You must specify a network (by uuid) to attach unikernels to. 39 40 If UniK gets into a bad state (i.e. you manually remove a state file or OpenStack VM), you should manually edit the `$HOME/.unik/openstack/state.json` file to remove the instance that no longer exists. UniK will eventually become self-correcting to deal with disruptions in the state.