2.0 KiB
2.0 KiB
Setup deployment host
https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html
# install dependencies
sudo apt-get update -y
sudo apt-get install python3-dev python3-venv libffi-dev gcc libssl-dev sshpass ca-certificates jq -y
python3 -m venv /home/openstack/kolla_zed
# enter venv, install kolla
source /home/openstack/kolla_zed/bin/activate
pip install -U pip
pip install 'ansible>=4,<6'
pip install git+https://opendev.org/openstack/kolla-ansible@master
kolla-ansible install-deps
# create kolla config files
sudo mkdir -p /etc/kolla
sudo chown $USER:$USER /etc/kolla
cp -r /home/openstack/kolla_zed/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
cp /home/openstack/kolla_zed/share/kolla-ansible/ansible/inventory/multinode .
# create ansible config
sudo mkdir /etc/ansible
sudo touch /etc/ansible/ansible.cfg
sudo nano -cw /etc/ansible/ansible.cfg
[defaults]
host_key_checking=False
pipelining=True
forks=100
# populate hosts
sudo nano -cw /etc/hosts
### openstack
192.168.30.60 node1 control1
192.168.30.61 node2 compute1
192.168.30.62 node3 ceph1
# setup passwordless sudo for the openstack user on the deployment node, kolla requirment
sudo su -
echo "%openstack ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/openstack
chmod 0440 /etc/sudoers.d/openstack
Create local ssh config
Generate keypair.
ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa -C "" <<< y
Push keys to Openstack nodes.
sshpass -p "Password0" ssh-copy-id -o StrictHostKeyChecking=no openstack@192.168.140.60
Create local ssh config, ansible targets node1 as control1 using this configuration.
nano -cw ~/.ssh/config
###### openstack
Host control1
Hostname 192.168.30.60
User openstack
IdentityFile ~/.ssh/id_rsa
Host compute1
Hostname 192.168.30.61
User openstack
IdentityFile ~/.ssh/id_rsa
Host ceph1
Hostname 192.168.30.62
User openstack
IdentityFile ~/.ssh/id_rsa