OpenStack in a snap!
Go to file
Pete Vander Giessen c3ba4ee501 Delay creating external bridge until we are initializing
Previously, the snap set up a bridge using the default 10.20.20.0/24
network upon install. If there was a good reason not to use this
network (e.g., it already exists and is being used for another
purpose), MicroStack, and the host machine, could wind up in a broken
state.

This PR delays setting up the bridge until after we have given an
operator a chance to override the default settings.

This has been manually tested. To test, do the following:

1) Checkout the code, and run tox -e build
2) Run tools/make-a-microstack.sh
3) snapctl set config.network.ext-cidr and config.network.ext-gateway
4) Run microstack_init
5) Exit the snap shell and run microstack.launch

Change-Id: I9e268495f313b29d9781d80a2468fc0a1a450aa0
Closes-Bug: https://bugs.launchpad.net/microstack/+bug/1851521
2019-11-12 23:19:51 +00:00
patches Align ovs version with Stein UCA 2019-10-18 15:40:41 +00:00
snap/hooks Allow off-host access to horizon dashboard by default. 2019-11-05 13:34:32 +00:00
snap-overlay Clustering prototype 2019-11-04 13:03:41 +00:00
snap-wrappers Delay creating external bridge until we are initializing 2019-11-12 23:19:51 +00:00
tests Allow off-host access to horizon dashboard by default. 2019-11-05 13:34:32 +00:00
tools Delay creating external bridge until we are initializing 2019-11-12 23:19:51 +00:00
.gitignore Added testing for control nodes 2019-10-16 15:44:38 +00:00
.gitreview Added automated testing via tox and zuul. 2019-07-24 08:04:38 +01:00
.zuul.yaml Ported and updated launch script 2019-10-23 01:09:42 +00:00
CONTRIBUTING.md Added CONTRIBUTING.md. 2019-01-29 10:33:00 -05:00
DEMO.md Ported and updated launch script 2019-10-23 01:09:42 +00:00
README.md Update README since doc publication 2019-11-04 15:23:51 +00:00
snapcraft.yaml Delay creating external bridge until we are initializing 2019-11-12 23:19:51 +00:00
test-requirements.txt Added testing for control nodes 2019-10-16 15:44:38 +00:00
tox.ini Clean up tox.ini a bit 2019-11-05 15:36:24 +00:00

README.md

MicroStack

Snap Status

MicroStack is a single-machine, snap-deployed OpenStack cloud.

Common purposes include:

  • Development and testing of OpenStack workloads
  • Continuous integration (CI)
  • IoT and appliances
  • Edge clouds (experimental)
  • Introducing new users to OpenStack

Currently provided OpenStack services are: Nova, Keystone, Glance, Horizon, and Neutron.

MicroStack is frequently updated to provide the latest stable updates of the most recent OpenStack release.

Requirements: You will need at least 2 CPUs, 8 GiB of memory, and 100 GiB of disk space.

See the full MicroStack documentation.

Installation

At this time you can install from the --beta or --edge snap channels:

sudo snap install microstack --classic --beta

Initialisation

Initialisation will set up databases, networks, flavors, an SSH keypair, a CirrOS image, and open ICMP/SSH security groups:

sudo microstack.init --auto

OpenStack client

The OpenStack client is bundled as microstack.openstack. For example:

microstack.openstack network list
microstack.openstack flavor list
microstack.openstack keypair list
microstack.openstack image list
microstack.openstack security group rule list

Creating an instance

To create an instance (called "awesome") based on the CirrOS image:

microstack.launch cirros --name awesome

SSH to an instance

The launch output will show you how to connect to the instance. For the CirrOS image, the user account is 'cirros'.

ssh -i ~/.ssh/id_microstack cirros@<ip-address>

Horizon

The launch output will also provide information for the Horizon dashboard. Its credentials are:

username: admin
password: keystone

Customising and contributing

To customise services and settings, look in the .d directories under /var/snap/microstack/common/etc. You can add services with your package manager, or take a look at CONTRIBUTING.md and make a code based argument for adding a service to the default list.

Reporting a bug

Please report bugs to the MicroStack project on Launchpad.