-
Notifications
You must be signed in to change notification settings - Fork 1
Install MicroStack with Snap
MicroStack is a full OpenStack in a single snap package. OpenStack is a collection of open source projects designed to work together to form a basis of a cloud computing platform. OpenStack can be used for both: private and public clouds. Itself, MicroStack provides a single or multi-node OpenStack deployment which can run directly on any workstation. Also, MicroStack is an OpenStack in a snap which means that all OpenStack services and supporting libraries are packaged together in a single package which can be easily installed, upgraded or removed. MicroStack includes all keys OpenStack Components:
- Keystone: Is an OpenStack service that provides API client authentication, service discovery, and distributed multi-tenant authorization by implementing OpenStack's Identity API. Reference: https://docs.openstack.org/keystone/latest/
- Cinder: Cinder is the OpenStack Block Storage service for providing volumes to Nova virtual machines, Ironic bare metal hosts, containers and more. As an end user, Ciner can be used for creating and managing volumes using the Horizon user interface, command line tools such the OpenStack SDK or Python OpenStack client, or by directly using the REST API. Reference: https://docs.openstack.org/cinder/latest/
- Nova: Is the core component of the OpenStack cloud computing platform, and is therefore used to provision and control cloud computing systems. OpenStack compute service relies on other services to achieve this functionality (1) Identity service for authentication and authorization to access all the required OpenStack services, (2) Image service to provision the images to be used by the compute instances, (3) Networking service to provide the physical and virtual networks that the compute instances connect to (4) Placement service for resource and resource-usage tracking.
- Neutron: Usted to create and manage network and/or sub-networks. during instance creation, the OpenStack networking service interacts with the compute service to create network interfaces and provide the required connectivity to the compute instances.
- Glance: Provides a RESTful API that enables an OpenStack user to register, discover, provision and store VM images, such as image metadata. This metadata may include such information as the image disk and container formats.
Reference: https://ieeexplore.ieee.org/document/9173665
The official OpenStack map gives you an view of the landscape to see where those services fit and how they can work together.
Reference: https://www.openstack.org/software/
The contents of this page are:
To get a single-node OpenStack cloud up and running with MicroStack, the minimum hardware and operative system requirements are:
Feature | Value |
---|---|
CPU | 4 |
RAM | 8 GiB |
Disk | 100 GB |
OS Used | Ubuntu 20.04 LTS |
Install MicroStack from Beta channel and developer mode. This install mode is recommended for testing all OpenStack functionalities. This installation is not recommended for production. The steps for installation are:
sudo apt update && sudo apt upgrade -y
sudo apt install snapd -y
sudo snap install microstack --devmode --beta
When the installation process has finished you should see the following message on the terminal:
microstack (beta) ussuri from Canonical✓ installed
You can run sudo snap info microstack
command to see which versiones are currently available. MicroStack needs to be initialised, so that networks and databases get configured. To do this, run:
sudo microstack.init --auto --control # Wait 20-25 minutes with the hardware requirements
Once this complete your OpenStack cloud will be up and running. At the time of writing, the installed version of OpenStack was Ussuri. However, being a Snap, MicroStack is published in channels which are made up of a track and an expected level of stability. Run sudo snap info microstack
to see current versions available.
To interact with your cloud via the web GUI visit http://localhost:80/
and log in with the credentials. The user by default is admin
. So, the password can get executing sudo snap get microstack config.credentials.keystone-password
. Assume that the output of this command is OAEHxLgCBz7Wz4usvolAAt61TrDUz6zz
then:
username: admin
password: OAEHxLgCBz7Wz4usvolAAt61TrDUz6zz
If everything goes fine, you should see the next page. You can now start playing with your OpenStack installation (i.e. create additional users, launch instances, etc.).
You can also interact with your OpenStack cloud via the CLI by using the microstack.openstack
command. The syntax is identical to the client delivered by the python-openstackclient package. For example, to list available OpenStack images run:
microstack.openstack image list
# +--------------------------------------+---------------+--------+
# | ID | Name | Status |
# +--------------------------------------+---------------+--------+
# | cf5aa2d9-1ed6-4292-975c-ff0d7ae121ec | cirros | active |
# +--------------------------------------+---------------+--------+
You can run microstack.openstack --help
to get a list of available subcommands and their required syntax. To streamline the commands with microstack.openstack
you can add an alias
in Ubuntu. For this, open the bashrc
file and add a line with the alias that you want. The steps are next:
sudo nano ~/.bashrc
# Add the next line to the end of file (or in the alias subsection)
alias openstack="microstack.openstack"
Now, you can run commands without microstack
prefix. For example, to list available OpenStack images run:
microstack.openstack image list
# +--------------------------------------+---------------+--------+
# | ID | Name | Status |
# +--------------------------------------+---------------+--------+
# | cf5aa2d9-1ed6-4292-975c-ff0d7ae121ec | cirros | active |
# +--------------------------------------+---------------+--------+
Another useful command is microstack.openstack catalog lit
. This command list available OpenStack endpoints.
Reference: https://yetiops.net/posts/prometheus-service-discovery-openstack/
Reference: https://ubuntu.com/tutorials/microstack-get-started#1-overview