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:
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.
- For more information about configuring performant OpenStack compute nodes, see Configuring Compute nodes for performance.
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:
Plan your OpenStack OVS-DPDK deployment by referring to Planning your OVS-DPDK deployment in the Network Functions Virtualization Planning and Configuration Guide.
Configure your OpenStack OVS-DPDK deployment according to Configuring an OVS-DPDK deployment in the Network Functions Virtualization Planning and Configuration Guide.
Preparing to install a cluster that uses SR-IOV
You must configure OpenStack before you install a cluster that uses SR-IOV on it.
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
anduplink
are used in all example commands to represent these networks.
Procedure
On a command line, create a radio OpenStack network:
$ openstack network create radio --provider-physical-network radio --provider-network-type flat --external
Create an uplink OpenStack network:
$ openstack network create uplink --provider-physical-network uplink --provider-network-type vlan --external
Create a subnet for the radio network:
$ openstack subnet create --network radio --subnet-range <radio_network_subnet_range> radio
Create a subnet for the uplink network:
$ 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.
- Complete Creating a flavor and deploying an instance for OVS-DPDK before you install a cluster on OpenStack.
After you perform pre-installation 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
For either type of deployment:
To complete SR-IOV configuration after you deploy your cluster:
Consult the following references after you deploy your cluster to improve its performance: