Update Servers/Virtualization/OpenStack/Ansible Openstack.md
This commit is contained in:
@ -7,9 +7,9 @@
|
||||
| **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 |
|
||||
| OPENSTACK-NODE-01 | 192.168.3.43 (eth0) | 250GB (OS), 500GB (Ceph Storage) | 32GB | 16-Cores | eth0, eth1 | OpenStack Cluster/Target Node |
|
||||
| OPENSTACK-NODE-02 | 192.168.3.44 (eth0) | 250GB (OS), 500GB (Ceph Storage) | 32GB | 16-Cores | eth0, eth1 | OpenStack Cluster/Target Node |
|
||||
| OPENSTACK-NODE-03 | 192.168.3.45 (eth0) | 250GB (OS), 500GB (Ceph Storage) | 32GB | 16-Cores | eth0, eth1 | OpenStack Cluster/Target 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.
|
||||
@ -47,9 +47,32 @@ cat /etc/hosts
|
||||
|
||||
## 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](https://docs.openstack.org/project-deploy-guide/openstack-ansible/latest/deploymenthost.html)
|
||||
|
||||
### Install Necessary Software
|
||||
```sh
|
||||
sudo su
|
||||
dnf upgrade
|
||||
dnf install -y git chrony openssh-server python3-devel sudo
|
||||
dnf group install -y "Development Tools"
|
||||
```
|
||||
|
||||
### Configure SSH keys
|
||||
Ansible uses SSH with public key authentication to connect the deployment host and target hosts. Run the following commands to configure this.
|
||||
|
||||
!!! warning "Do not run as root"
|
||||
You want to make sure you run these commands as a normal user. (e.g. `nicole`).
|
||||
|
||||
``` sh
|
||||
# Generate SSH Keys (Private / Public)
|
||||
ssh-keygen
|
||||
|
||||
# Install Public Key on OpenStack Cluster/Target Nodes
|
||||
ssh-copy-id -i /home/nicole/.ssh/id_rsa.pub nicole@openstack-node-01.bunny-lab.io
|
||||
ssh-copy-id -i /home/nicole/.ssh/id_rsa.pub nicole@openstack-node-02.bunny-lab.io
|
||||
ssh-copy-id -i /home/nicole/.ssh/id_rsa.pub nicole@openstack-node-03.bunny-lab.io
|
||||
|
||||
# Validate that SSH Authentication Works Successfully on Each Node
|
||||
ssh nicole@openstack-node-01.bunny-lab.io
|
||||
ssh nicole@openstack-node-02.bunny-lab.io
|
||||
ssh nicole@openstack-node-03.bunny-lab.io
|
||||
```
|
Reference in New Issue
Block a user