Introduction and quickstart

MicroStack speedily installs OpenStack on a single machine. Supported services are currently Glance, Horizon, Keystone, Neutron, and Nova.

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


Begin by installing MicroStack via a snap.

The beta channel is moving towards a strictly confined snap. At this time it must be installed in devmode.

Install using the beta channel:

sudo snap install microstack --devmode --beta

The standard openstack client is also installed, and is invoked like so:

microstack.openstack <command>

MicroStack has been tested on a physical machine running either Ubuntu 18.04 LTS or Ubuntu 20.04 LTS.


The purpose of the Quickstart guide is to confirm that the cloud is in working order. The following can all be done within 10 to 15 minutes depending on your machine:

  • configure OpenStack automatically
  • launch an instance based on the CirrOS image (with
    floating IP address)
  • SSH to the instance

Let’s begin.

Configure OpenStack in this way:

sudo microstack init --auto --control

This configured and started services. It also created the database, networks, an image, several flavors, ICMP/SSH security groups, and an SSH keypair (called ‘microstack’). These can be viewed with the standard client commands. For example:

microstack.openstack network list


| ID                                   | Name     | Subnets                              |
| 92763cdb-8543-445a-973a-952a1483506d | external | 18cef02a-03ba-448f-9d11-59dfd28f12b0 |
| b7d73bd0-f12d-4446-99e9-7e6c18b657fe | test     | 50540f94-ca00-40a1-8faa-4e0408369f36 |

MicroStack comes with the convenient instance launcher microstack launch that uses default values for network, image, flavor, and SSH key. It also sets up a floating IP address.

To launch an instance named ‘test’ that uses the CirrOS image:

microstack launch cirros --name test

The instance’s public IP address will be shown in the resulting output:

Creating local "microstack" ssh key at /home/ubuntu/snap/microstack/common/.ssh/id_microstack
Launching server ...
Allocating floating ip ...
Server test launched! (status is BUILD)

Access it with `ssh -i /home/ubuntu/snap/microstack/common/.ssh/id_microstack cirros@`
You can also visit the OpenStack dashboard at

Access that instance using the default SSH key (the CirrOS image comes with a ‘cirros’ user account):

ssh -i /home/ubuntu/snap/microstack/common/.ssh/id_microstack cirros@

Pro tip:
The CirrOS image user account ‘cirros’ has a default password of ‘gocubsgo’. It can be useful if you have trouble logging in with a key.

The microstack launch command also supports arguments --key, --flavor, --image, and --net-id. You may need to create objects using the standard client if non-default values are used. You can, of course, replace the command entirely with microstack.openstack server create.


The Horizon dashboard lives here:

and the password for the admin user can be obtained in this way:

sudo snap get microstack config.credentials.keystone-password

Sample output:


Next steps

This Quickstart has shown you how simple it is to get started with MicroStack. You can now go on to perform native OpenStack operations such as importing boot images; creating keypairs, networks, and cloud flavors. See the OpenStack documentation.

Last updated a month ago.