OpenStack packages for RHEL and CentOS

Distributions release OpenStack packages as part of the distribution or using other methods because of differing release schedules. Perform these procedures on all nodes.

Warning

Starting with the Ussuri release, you will need to use either CentOS8 or RHEL 8. Previous OpenStack releases will need to use either CentOS7 or RHEL 7. Instructions are included for both distributions and versions where different.

Note

The set up of OpenStack packages described here needs to be done on all nodes: controller, compute, and Block Storage nodes.

Warning

Your hosts must contain the latest versions of base installation packages available for your distribution before proceeding further.

Note

Disable or remove any automatic update services because they can impact your OpenStack environment.

Prerequisites

Warning

We recommend disabling EPEL when using RDO packages due to updates in EPEL breaking backwards compatibility. Or, preferably pin package versions using the yum-versionlock plugin.

Note

The following steps apply to RHEL only. CentOS does not require these steps.

  1. When using RHEL, it is assumed that you have registered your system using Red Hat Subscription Management and that you have the rhel-7-server-rpms or rhel-8-for-x86_64-baseos-rpms repository enabled by default depending on your version.

    For more information on registering a RHEL 7 system, see the Red Hat Enterprise Linux 7 System Administrator’s Guide.

  2. In addition to rhel-7-server-rpms on a RHEL 7 system, you also need to have the rhel-7-server-optional-rpms, rhel-7-server-extras-rpms, and rhel-7-server-rh-common-rpms repositories enabled:

    # subscription-manager repos --enable=rhel-7-server-optional-rpms \
      --enable=rhel-7-server-extras-rpms --enable=rhel-7-server-rh-common-rpms
    

    For more information on registering a RHEL 8 system, see the Red Hat Enterprise Linux 8 Installation Guide.

    In addition to rhel-8-for-x86_64-baseos-rpms on a RHEL 8 system, you also need to have the rhel-8-for-x86_64-appstream-rpms, rhel-8-for-x86_64-supplementary-rpms, and codeready-builder-for-rhel-8-x86_64-rpms repositories enabled:

    # subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms \
      --enable=rhel-8-for-x86_64-supplementary-rpms --enable=codeready-builder-for-rhel-8-x86_64-rpms
    

Enable the OpenStack repository

  • On CentOS, the extras repository provides the RPM that enables the OpenStack repository. CentOS includes the extras repository by default, so you can simply install the package to enable the OpenStack repository. For CentOS8, you will also need to enable the PowerTools repository.

    When installing the Ussuri release, run:

    # yum install centos-release-openstack-ussuri
    # yum config-manager --set-enabled PowerTools
    

    When installing the Train release, run:

    # yum install centos-release-openstack-train
    

    When installing the Stein release, run:

    # yum install centos-release-openstack-stein
    

    When installing the Rocky release, run:

    # yum install centos-release-openstack-rocky
    

    When installing the Queens release, run:

    # yum install centos-release-openstack-queens
    

    When installing the Pike release, run:

    # yum install centos-release-openstack-pike
    
  • On RHEL, download and install the RDO repository RPM to enable the OpenStack repository.

    On RHEL 7:

    # yum install https://rdoproject.org/repos/rdo-release.rpm
    

    On RHEL 8:

    # dnf install https://www.rdoproject.org/repos/rdo-release.el8.rpm
    

    The RDO repository RPM installs the latest available OpenStack release.

Finalize the installation

  1. Upgrade the packages on all nodes:

    # yum upgrade
    

    Note

    If the upgrade process includes a new kernel, reboot your host to activate it.

  2. Install the appropriate OpenStack client for your version.

    For CentOS 7 and RHEL 7

    # yum install python-openstackclient
    

    For CentOS 8 and RHEL 8

    # yum install python3-openstackclient
    
  3. RHEL and CentOS enable SELinux by default. Install the openstack-selinux package to automatically manage security policies for OpenStack services:

    # yum install openstack-selinux