Files
docs/Servers/Virtualization/OpenStack/Ansible Openstack.md

2.8 KiB

!!! warning "Document Under Construction" This document is very unfinished and should NOT be followed by anyone for deployment at this time.

Purpose: Deploying OpenStack via Ansible.

Required Hardware/Infrastructure Breakdown

Hostname IP Storage Memory CPU Network Purpose
OPENSTACK-BOOTSTRAPPER 192.168.3.46 (eth0) 120GB 8GB 8-Cores eth0 OpenStack Ansible Playbook Deployment Node
OPENSTACK-NODE-01 192.168.3.43 (eth0) 250GB (OS), 500GB (Ceph Storage) 32GB 16-Cores eth0, eth1 OpenStack Cluster Node
OPENSTACK-NODE-02 192.168.3.44 (eth0) 250GB (OS), 500GB (Ceph Storage) 32GB 16-Cores eth0, eth1 OpenStack Cluster Node
OPENSTACK-NODE-03 192.168.3.45 (eth0) 250GB (OS), 500GB (Ceph Storage) 32GB 16-Cores eth0, eth1 OpenStack Cluster Node

Configure Hard-Coded DNS for Cluster Nodes

We want to ensure everything works even if the nodes have no internet access. By hardcoding the FQDNs, this protects us against several possible stupid situations.

Run the following script to add the DNS entries.

# Make yourself root
sudo su

!!! note "Run sudo su Separately" When I ran sudo su and the echo commands below as one block of commands, it did not correctly write the changes to the /etc/hosts file. Just run sudo su by itself, then you can copy paste the codeblock below for all of the echo lines for each DNS entry.

# Add the OpenStack node entries to /etc/hosts
echo "192.168.3.43 OPENSTACK-NODE-01.bunny-lab.io OPENSTACK-NODE-01" >> /etc/hosts
echo "192.168.3.44 OPENSTACK-NODE-02.bunny-lab.io OPENSTACK-NODE-02" >> /etc/hosts
echo "192.168.3.45 OPENSTACK-NODE-03.bunny-lab.io OPENSTACK-NODE-03" >> /etc/hosts

Validate DNS Entries Added

cat /etc/hosts

!!! example "/etc/hosts Example Contents" When you run cat /etc/hosts, you should see output similar to the following: ini title="/etc/hosts" 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.3.43 OPENSTACK-NODE-01.bunny-lab.io OPENSTACK-NODE-01 192.168.3.44 OPENSTACK-NODE-02.bunny-lab.io OPENSTACK-NODE-02 192.168.3.45 OPENSTACK-NODE-03.bunny-lab.io OPENSTACK-NODE-03

OpenStack Deployment Node

The "Deployment" node / bootstrapper is responsible for running Ansible playbooks against the cluster nodes that will eventually be running OpenStack. Original Deployment Node Documentation

sudo su
dnf upgrade
dnf install -y git chrony openssh-server python3-devel sudo
dnf group install -y "Development Tools"