OpenStack in a snap!
Go to file
Pete Vander Giessen 597ffc99d8 Perist external bridge over reboots.
This fixes an issue where we weren't creating a netplan config and/or
and entry in /etc/network/interfaces for br-ex, and thus losing
external access to our virtual networks after reboot.

Since we don't actually want to touch the host system's networking
config, we just drop a oneshot daemon into place that sets br-ex up
each time the snap services are started.
2018-12-05 21:25:11 +00:00
patches Major restructure 2018-11-02 10:55:42 +00:00
snap/hooks Perist external bridge over reboots. 2018-12-05 21:25:11 +00:00
snap-overlay Perist external bridge over reboots. 2018-12-05 21:25:11 +00:00
snap-wrappers Drop libvirt wrapper script, no longer needed 2018-11-06 09:07:05 +00:00
src Avoid getting to "(try 4 of 3)" tries to build the instance (#40) 2018-11-28 18:24:43 -05:00
tests Switch region name to microstack 2018-11-08 09:41:49 +00:00
.gitignore Fix horizon (#23) 2018-11-07 16:30:20 -05:00 Revert "Rename snap from microstack to openstack" 2018-11-13 14:40:46 +00:00
snapcraft.yaml Perist external bridge over reboots. 2018-12-05 21:25:11 +00:00


Snap Status

OpenStack in a snap that you can run locally on a single machine!

microstack currently provides Nova, Keystone, Glance, Horizon and Neutron OpenStack services.


microstack is frequently updated to provide the latest stable updates of the most recent OpenStack release. The quickest was to get started is to install directly from the snap store. You can install microstack using:

sudo snap install microstack --classic --edge

Accessing OpenStack

microstack provides a pre-configured OpenStack CLI to access the local OpenStack deployment; its namespaced using the microstack prefix:

microstack.openstack server list

You can setup this command as an alias for openstack if you wish (removing the need for the microstack. prefix):

sudo snap alias microstack.openstack openstack

Alternatively you can access the Horizon OpenStack dashboard on with the following credentials:

username: admin
password: keystone

Booting and accessing an instance

microstack comes preconfigured with networking and images so you can get starting using OpenStack as soon as microstack is installed; to boot an instance:

microstack.openstack server create --flavor m1.small --nic net-id=test --image cirros my-microstack-server

To access the instance, you'll need to assign it a floating IP address:

ALLOCATED_FIP=`microstack.openstack floating ip create -f value -c floating_ip_address external`
microstack.openstack server add floating ip my-microstack-server $ALLOCATED_FIP

and as you would expect, microstack is just like a full OpenStack Cloud and does not allow ingress access to the instance by default, so next enable SSH and ping access to the instance:

SECGROUP_ID=`microstack.openstack security group list --project admin -f value -c ID`
microstack.openstack security group rule create $SECGROUP_ID --proto tcp --remote-ip --dst-port 22
microstack.openstack security group rule create $SECGROUP_ID --proto icmp --remote-ip

once this is complete you should be able to SSH to the instance:

ssh cirros@$ALLOCATED_FIP

Happy microstacking!

Stopping and starting microstack

You may wish to temporarily shutdown microstack when not in use without un-installing it.

microstack can be shutdown using:

sudo snap disable microstack

and re-enabled latest using:

sudo snap enable microstack