Skip to content

Instantly share code, notes, and snippets.

@gilangvperdana
Last active June 30, 2022 01:08
Show Gist options
  • Save gilangvperdana/7042caa2af2c7729c798581a86509e8d to your computer and use it in GitHub Desktop.
Save gilangvperdana/7042caa2af2c7729c798581a86509e8d to your computer and use it in GitHub Desktop.
Openstack Other Side Deployment

Openstack AIO Xena

Environment

  • Network Interface :
    • ens3 172.16.1.2
    • ens5 none ip (172.16.2.0/24)
  • 1 disk 500GB (/dev/vda)
  • RAM 24GB | Core 16
  • Ubuntu 20.04LTS

Update Package

sudo apt update -y && sudo apt-get full-upgrade -y
sudo apt-get install python3-dev libffi-dev gcc libssl-dev python3-selinux python3-setuptools python3-venv -y

Install Dependencies

apt install python3-pip
pip install -U pip
pip install wheel
pip install 'ansible<3.0'

Ansible Configuration

sudo mkdir -p /etc/ansible
sudo nano /etc/ansible/ansible.cfg
[defaults]
host_key_checking=False
pipelining=True
forks=100

Kolla Ansible Preparation

pip install 'kolla-ansible==13.0.1'

Make a Directory

mkdir ~/openstack
cd ~/openstack
mkdir -p /etc/kolla
chown -R $USER:$USER /etc/kolla
cp -r /usr/local/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
cp /usr/local/share/kolla-ansible/ansible/inventory/* .

Global Configuration

nano /etc/kolla/globals.yml
kolla_base_distro: "ubuntu"
kolla_install_type: "source"
openstack_release: "xena"
kolla_internal_vip_address: "172.16.1.3"
kolla_external_vip_address: "172.16.1.4"
network_interface: "ens3"
neutron_external_interface: "ens5"
enable_openstack_core: "yes"
enable_haproxy: "yes"
enable_neutron_provider_networks: "yes"
nova_compute_virt_type: "kvm"
enable_fluentd: "no" 

## FQDN
kolla_external_fqdn: "public.bignetlab.my.id" 

## monitoring
enable_prometheus: "yes"
enable_prometheus_openstack_exporter: "yes"
enable_grafana: "yes"

## tls 
kolla_enable_tls_external: "yes" 
kolla_copy_ca_into_containers: "yes"  
openstack_cacert: "/etc/ssl/certs/ca-certificates.crt"

Pre Installation

nano /etc/hosts
172.16.1.4 public.bignetlab.my.id

Installation

ansible -i all-in-one all -m ping
kolla-genpwd
kolla-ansible -i ./all-in-one certificates
kolla-ansible -i ./all-in-one bootstrap-servers
kolla-ansible -i ./all-in-one prechecks
kolla-ansible -i ./all-in-one deploy
kolla-ansible post-deploy

Post Installation

echo "export OS_CACERT=/etc/ssl/certs/ca-certificates.crt" | tee -a /etc/kolla/admin-openrc.sh
cat /etc/kolla/certificates/ca/root.crt | sudo tee -a /etc/ssl/certs/ca-certificates.crt
cp /etc/kolla/admin-openrc.sh /root/

Check from CLI

apt  install python3-openstackclient
source admin-openrc.sh
openstack server list

Error

  • Ansible Error
    Ansible version should be between 2.10 and 2.11. Current version is 2.12.6 which is not supported
    
    pip list | grep ansible-core
    ansible-core           2.12.6
    
    pip uninstall ansible-core
    pip install ansible-core==2.11.0
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment