Chapter 1. Overview
Network Functions Virtualization (NFV) is a software-based solution that virtualizes a network function on general-purpose, cloud-based infrastructure. NFV allows the Communication Service Provider to move away from traditional hardware.
This guide provides examples for CPU assignments, memory allocation, and NIC configurations that may vary from your topology and use case. See the Network Functions Virtualization Product Guide and the Network Functions Virtualization Planning Guide to understand the hardware and configuration options.
Red Hat OpenStack Platform 10 director allows you to isolate the overcloud networks (for example, external, tenant, internal API and so on). You can deploy a network on a single network interface or distributed over a multiple host network interface. Network isolation in a Red Hat OpenStack Platform 10 installation is configured using template files. If you do not provide template files, all the service networks are deployed on the provisioning network. There are multiple types of template configuration files:
-
network-environment.yaml
- Contains the network details such as subnets and IP address ranges that are used to configure the network on the overcloud nodes. This file also contains the different settings that override the default parameter values for various scenarios. -
Host templates (for example,
compute.yaml
,controller.yaml
and so on) - Define the network interface configuration for the overcloud nodes. first-boot.yaml
- Provides various configuration steps, for example:- Grub arguments.
- DPDK parameters.
-
Tuned installation and configuration. The
tuned
package contains thetuned
daemon that monitors the use of system components and dynamically tunes system settings based on that monitoring information. To provide proper CPU affinity configuration in OVS-DPDK and SR-IOV deployments, you should use thetuned-cpu-partitioning
profile.
These heat template files are located at /usr/share/openstack-tripleo-heat-templates/
on the undercloud node.
For samples of these heat template files for NFV, see the Sample YAML Files.
NFV configuration makes use of YAML files. See YAML in a Nutshell for an introduction to the YAML file format.
The following sections provide more details on how to configure the heat template files for NFV using the Red Hat OpenStack Platform director.
1.1. Composable Roles
With Red Hat OpenStack Platform 10, you can use composable roles to create custom deployment roles for NFV. Composable roles allow you to add or remove services from each role. For more information on Composable Roles, see Composable Roles and Services.
To configure composable roles:
-
Copy and modify the
roles-data.yaml
file to add the composable role for OVS-DPDK or SR-IOV. - Create an OpenStack flavor and assign the appropriate properties to that flavor.
- Associate this new flavor with a node.
-
Update the appropriate
network-environment.yaml
file to include parameters for kernel arguments and DPDK or SR-IOV arguments. -
Run the
overcloud_deploy.sh
script to deploy the overcloud with the composable roles.