83 lines
2.0 KiB
Markdown
83 lines
2.0 KiB
Markdown
# Setup deployment host
|
|
|
|
> https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html
|
|
|
|
```sh
|
|
# 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.
|
|
|
|
```sh
|
|
ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa -C "" <<< y
|
|
```
|
|
|
|
Push keys to Openstack nodes.
|
|
|
|
```sh
|
|
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.
|
|
|
|
```sh
|
|
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
|
|
```
|