Openstack-Ansible (OSA) is a way to deploy Openstack cloud using Ansible scripts. The deployment process consist of below steps:-
Prepare deployment hosts
For production environment, it is recommended to use separate deployment host that contains Ansible and orchestrates the OpenStack-Ansible (OSA) installation on the target hosts. Install Ubuntu and then configure SSH keys. Ansible uses SSH with public key authentication to connect the deployment host and target hosts. Configure the deployment host and install docker. Then build and run deploy container
One or more target hosts needs to be prepared so that Openstack cloud will be deployed on them. It typically involves installing and configuring operating systems (e.g. Ubuntu/Debian/CentOs/Rocky Linux etc.) and then configure SSH keys. Here, we have to copy the contents of the public key file of the deployment host to the /root/.ssh/authorized_keys
file on each target host. Then configure the storage and network.
Configure deployment
To prepare Ansible for playbook execution, certain files containing essential and optional configuration directives need to be adjusted to define the target environment. The configuration tasks involves defining bridge interfaces, defining target hosts, setting virtual and physical network relationship and setting password for services etc.
Run Ansible playbooks
By executing three playbooks i.e. “setup-hosts.yml”, “setup-infrastructure.yml ” and “setup-openstack.yml”, the infrastructure and services required for an OpenStack environment are established.
Verify Openstack operations
To verify basic operation of the OpenStack API and the Dashboard, perform the few tasks on an infrastructure host. This involves logging into utility container, listing openstack users and/or projects, connect to horizon dashboard.