If you have access to a project on an OpenStack cloud, you can try Azimuth!
The azimuth-config repository
contains a special environment called
demo that will
provision a short-lived Azimuth deployment for demonstration purposes
only. This environment attempts to infer all required configuration from
the target OpenStack cloud - if this process is unsuccessful, an error will
Inferring configuration in the way that the
demo environment does is
not recommended as it is not guaranteed to produce the same result
each time. For production deployments it is better to be explicit.
Deploying a demo instance
The Azimuth deployment requires a clouds.yaml to run. Ideally, this should be an Application Credential.
Once you have a
clouds.yaml, run the following to deploy the Azimuth demo
# Set OpenStack configuration variables export OS_CLOUD=openstack export OS_CLIENT_CONFIG_FILE=/path/to/clouds.yaml # Clone the azimuth-config repository git clone https://github.com/stackhpc/azimuth-config cd azimuth-config # Set up the virtual environment ./bin/ensure-venv # Activate the demo environment source ./bin/activate demo # Install Ansible dependencies ansible-galaxy install -f -r requirements.yml # Deploy Azimuth ansible-playbook stackhpc.azimuth_ops.provision
The URL for the Azimuth UI is printed at the end of the playbook run. The credentials you use to authenticate with Azimuth are the same as you would use with the underlying OpenStack cloud.
Azimuth is deployed using Ansible, which does not support Windows as a controller. Azimuth deployment has been tested on Linux and macOS.
The demo deployment has a number of limitations in order to give it the best chance of running on any given cloud:
- It uses the single node deployment method.
- Community images are uploaded as private images, so Azimuth will only be able to provision Kubernetes clusters and Cluster-as-a-Service appliances in the same project as it is deployed in.
- sslip.io is used to provide DNS. This avoids the need for a DNS entry to be provisioned in advance.
- TLS is disabled for ingress, allowing the Azimuth to work even when the deployment is not reachable from the internet (outbound internet connectivity is still required).
- Verification of SSL certificates for the OpenStack API is disabled, allowing Azimuth to work even when the target cloud uses a custom CA.
- The deployment secrets are not secret, as they are stored in plain
text in the
azimuth-configrepository on GitHub.
Created: March 20, 2023