Validate the deployment to make sure that nothing slips through the cracks

Key Value
Summary Validating the deployment.
Categories openstack
Difficulty 2
Author Tytus Kurek tytus.kurek@canonical.com

Overview

Duration: 3 minutes

Before you get started!

Welcome to OpenStack!

In this series of tutorials, we will walk you through all the necessary steps to install, configure and get started with OpenStack. Using just three dedicated machines, you will learn how to deploy OpenStack in highly available, multi-node, production-grade clusters.

This tutorial is the seventh in the “Phase 2 - Deploy OpenStack” series.

Explore other tutorials >

What is OpenStack?

OpenStack is a collection of open source projects designed to work together to form the basis of a cloud. OpenStack can be used for both private and public cloud implementation.

What is Sunbeam?

Sunbeam is an upstream project under the governance of the OpenInfra Foundation (OIF), which was created to lower the barrier to entry for OpenStack, simplify its adoption process, and set the foundation for an autonomous private cloud. Sunbeam uses cloud-native architecture and total bottom-up automation to make OpenStack more accessible to newcomers and to help users get to grips with the platform immediately.

What is MicroStack?

MicroStack (based on Sunbeam) is an OpenStack distribution designed for small-scale cloud environments. While it is available with full commercial support from Canonical, it can also be self-deployed with no friction, effectively eliminating the need for a paid consulting engagement. MicroStack currently includes core OpenStack services only, but is expected to evolve quickly to ensure full feature parity with Canonical’s Charmed OpenStack soon.

In this tutorial, you will learn how to:

  • Enable the Validation plugin
  • Validate your deployment with Tempest

You will only need:

  • Theoretical knowledge of OpenStack gained by completing all tutorials in the “Phase I - Learning OpenStack” series
  • Three fresh physical machines with:
    • Ubuntu 22.04 LTS installed,
    • A minimum of 32 GB of free memory
    • 200 GB of SSD storage available on the root disk
    • At least one un-partitioned disk of at least 200 GB in size
    • Two network interfaces:
      • A primary network interface for access to the OpenStack control plane
      • A secondary network interface for remote access to cloud VMs
  • OpenStack cloud bootstrapped and configured
  • Additional nodes added to the cluster

Enable the Validation plugin

Duration: 5 minutes

Before moving the cloud to production, the deployment should be validated using Sunbeam’s built-in Validation plugin. This plugin deploys Tempest which is a tool for running integration tests.

In order to enable the Validation plugin, execute the following command on sunbeam01 machine:


$ sunbeam enable validation

Once finished, you should be able to see the following message:


OpenStack validation application enabled.

Validate your deployment with Tempest

Duration: 5 minutes

In order to list available validation profiles, execute the following command:


$ sunbeam validation profiles

In order to run a one-time validation test against the deployment using the refstack profile, execute the following command:


$ sunbeam validation run refstack --output ./validation.log

! sunbeam validation run
This command takes a while to finish. Please, be patient.

Once finished, you should be able to a message similar to the following one:


Totals
======
Ran: 172 tests in 802.9191 sec.
 - Passed: 152
 - Skipped: 14
 - Expected Fail: 0
 - Unexpected Success: 0
 - Failed: 6
Sum of execute time for each test: 1911.6792 sec.

You can then inspect the ./validation.log file for a detailed report from the Tempest tool.

Note that since “remote” access to VMs has been configured, Tempest won’t be able to SSH into them. As a result, SSH checks will fail resulting in some errors in the output above.

Note that SSH checks will fail

Next steps

Duration: 2 minutes

Congratulations! You have reached the end of this tutorial.

You can now move to the next tutorial - “8. Observability” - or explore other tutorials.

In this tutorial, you have learnt how to:

  • Enable the Validation plugin
  • Validate your deployment with Tempest

Where to go from here?