Every host running OpenStack services should have the following prerequisite configurations to successfully deploy OpenStack.
Getting ready
To successfully install OpenStack, every host needs to follow a few steps for the configuration. Every host needs to configure RDO yum repository from which we are going to install OpenStack packages. This can be done by manually configuring yum repository /etc/yum.repos.d/OpenStack.repo or installing them directly from RDO repository.
In addition, every node needs to enable firewalld service, enable SELinux and install OpenStack SELinux policies, enable and configure NTP, and also install the OpenStack utils package.
How to do it...
Perform the following steps to install and configure OpenStack prerequisites:
Yum repositories
To install OpenStack RDO distribution, we need to add RDO's yum repository on all nodes and epel, yum repository for additional needed packages:
Install yum-plugin-priorities packages, which enables repositories management in yum:
# yum install yum-plugin-priorities -y
Install rdo-release package, which configures RDO repos in /etc/yum.repos.d:
Install epel repository package, which configures epel repos in /etc/yum.repos.d:
# yum install -y epel-release
Firewall service
The default netfilter firewalld service in CentOS 7.0 is firewall. For security reasons, we need to make sure that firewalld service is running and enabled, so it is started after reboot:
Start firewalld service as follows:
# systemctl start firewalld.service
Enable firewalld service, as follows, so that it's started after host reboot as well:
# systemctl enable firewalld.service
Note
Throughout this book, we will open ports needed for OpenStack to operate using the firewalld-cmd command.
openstack-utils Package
openstack-utils package brings utilities that ease OpenStack configuration and management of OpenStack services. openstack-utils includes the following utilities:
/usr/bin/openstack-status: Show status overview of installed OpenStack
Install openstack-utils package:
# yum install openstack-utils
SELinux
It is highly recommended to ensure that SELinux is enabled and in an enforcing state. the package openstack-selinux adds SELinux policy modules for OpenStack services.
Ensure that SELinux is enforcing, and run the getenforce command as follows:
# getenforce
The output should say SELinux is enforcing
Install openstack-selinux package:
# yum install openstack-selinux
NTP
OpenStack services are deployed over multiple nodes. For services' successful synchronization, all nodes running OpenStack need to have a synchronized system clock, and NTP service can be used for this: