Preparing to install a cluster that uses SR-IOV or OVS-DPDK on OpenStack

Before you install a OKD cluster that uses single-root I/O virtualization (SR-IOV) or Open vSwitch with the Data Plane Development Kit (OVS-DPDK) on OpenStack, you must understand the requirements for each technology and then perform preparatory tasks.

Requirements for clusters on OpenStack that use either SR-IOV or OVS-DPDK

If you use SR-IOV or OVS-DPDK with your deployment, you must meet the following requirements:

  • OpenStack compute nodes must use a flavor that supports huge pages.

Requirements for clusters on OpenStack that use SR-IOV

To use single-root I/O virtualization (SR-IOV) with your deployment, you must meet the following requirements:

  • Plan your OpenStack SR-IOV deployment.

  • OKD must support the NICs that you use. For a list of supported NICs, see “About Single Root I/O Virtualization (SR-IOV) hardware networks” in the “Hardware networks” subsection of the “Networking” documentation.

  • For each node that will have an attached SR-IOV NIC, your OpenStack cluster must have:

    • One instance from the OpenStack quota

    • One port attached to the machines subnet

    • One port for each SR-IOV Virtual Function

    • A flavor with at least 16 GB memory, 4 vCPUs, and 25 GB storage space

  • SR-IOV deployments often employ performance optimizations, such as dedicated or isolated CPUs. For maximum performance, configure your underlying OpenStack deployment to use these optimizations, and then run OKD compute machines on the optimized infrastructure.

Requirements for clusters on OpenStack that use OVS-DPDK

To use Open vSwitch with the Data Plane Development Kit (OVS-DPDK) with your deployment, you must meet the following requirements:

Preparing to install a cluster that uses SR-IOV

You must configure OpenStack before you install a cluster that uses SR-IOV on it.

When installing a cluster using SR-IOV, you must deploy clusters using cgroup v1. For more information, Enabling Linux control group version 1 (cgroup v1).

Creating SR-IOV networks for compute machines

If your OpenStack deployment supports single root I/O virtualization (SR-IOV), you can provision SR-IOV networks that compute machines run on.

The following instructions entail creating an external flat network and an external, VLAN-based network that can be attached to a compute machine. Depending on your OpenStack deployment, other network types might be required.

Prerequisites

  • Your cluster supports SR-IOV.

    If you are unsure about what your cluster supports, review the OKD SR-IOV hardware networks documentation.

  • You created radio and uplink provider networks as part of your OpenStack deployment. The names radio and uplink are used in all example commands to represent these networks.

Procedure

  1. On a command line, create a radio OpenStack network:

    1. $ openstack network create radio --provider-physical-network radio --provider-network-type flat --external
  2. Create an uplink OpenStack network:

    1. $ openstack network create uplink --provider-physical-network uplink --provider-network-type vlan --external
  3. Create a subnet for the radio network:

    1. $ openstack subnet create --network radio --subnet-range <radio_network_subnet_range> radio
  4. Create a subnet for the uplink network:

    1. $ openstack subnet create --network uplink --subnet-range <uplink_network_subnet_range> uplink

Preparing to install a cluster that uses OVS-DPDK

You must configure OpenStack before you install a cluster that uses SR-IOV on it.

After you perform preinstallation tasks, install your cluster by following the most relevant OKD on OpenStack installation instructions. Then, perform the tasks under “Next steps” on this page.

Next steps