This document covers how to setup an Openstack running on HA and using a Ceph as storage.
We will be using CentOS 7 as operating system of our servers and should be running the following Services and Information:
- Infrastructure and Server Details
- IP List and Blocks
- Controllers Installation
- Controller1 / Controller2 / Controller3
- IP Address Config
- Mongodb
- Pacemaker
- HAProxy
- Database/Galera
- RabbitMQ
- Keystone
- Glance
- Nova
- Neutron
- Dashboard
- Cinder
- Controller1 / Controller2 / Controller3
- Compute Installation
- Compute1 / Compute2 / Compute3
- IP Address Config
- Nova-Compute
- Linux Bridge
- Compute1 / Compute2 / Compute3
- Cinder and Ceph Installation
- Ceph1 / Ceph2 / Ceph3
- Ceph
- Cinder-Volume
- Cinder-Backup
- Ceph1 / Ceph2 / Ceph3
Basic Configurations are the following:
#CONTROLLERS 10.10.10.70 controller1 10.10.10.71 controller2 10.10.10.72 controller3 # COMPUTES 10.10.10.80 compute1 10.10.10.81 compute2 10.10.10.82 compute3 #CEPHS 172.16.16.20 ceph1 172.16.16.21 ceph2 172.16.16.22 ceph3 #DATABASES 192.168.10.101 db-server01 192.168.10.102 db-server02 192.168.10.103 db-server03 #VIPs 10.10.10.4 database-vip 10.10.10.5 dashboard-vip controller 10.10.10.6 rabbitmq-vip 10.10.10.7 keystone-vip 10.10.10.8 memcached-vip 10.10.10.9 neutron-vip 10.10.10.10 glance-vip 10.10.10.11 nova-vip 10.10.10.12 cinder-vip
NTP
ALL: Install the packages to all of the nodes
# yum -y install chrony
ALL: Edit the /etc/chrony.conf file and add, change, or remove these keys as necessary for your environment:
server sg.pool.ntp.org iburst
ALL: Start the NTP service and configure it to start when the system boots:
# systemctl enable chronyd.service # systemctl start chronyd.service
Openstack Repository
ALL: Enable the Openstack Repository
# yum -y install centos-release-openstack-ocata
ALL: Upgrade packages
# yum -y upgrade
ALL: Install the OpenStack client:
# yum -y install python-openstackclient
Database (Galera Cluster) for High Availability
ALL CONTROLLER NODES: Configure REPO and Install the packages by running the following:
# sed -i -e 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # cat >> /etc/yum.repos.d/mariadb.repo << EOF [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.0/rhel7-amd64/ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 EOF # yum -y remove mariadb-common mariadb-config mariadb-libs # yum -y install MariaDB-Galera-server MariaDB-client galera rsync nmap lsof perl-DBI nc socat jemalloc python2-PyMySQL # systemctl enable mysql # systemctl start mysql # mysql_secure_installation # systemctl restart mysql