Configuring hosts prerequisites
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 inyum
:# yum install yum-plugin-priorities -y
- Install
rdo-release
package, which configures RDOrepos
in/etc/yum.repos.d
:# yum install -y https://rdoproject.org/repos/rdo-release.rpm
- Install
epel
repository package, which configuresepel
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-config
: Manipulates OpenStack configuration files/usr/bin/openstack-db
: Creates databases for OpenStack services/usr/bin/openstack-service
: Control-enabled OpenStack services/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:
- Install
ntpd
package as follows:# yum install ntp
- Start and enable
ntpd
as follows:# systemctl start ntpd # systemctl enable ntpd