...
Please see Akraino Technical Community Document section 3.1.3 for more detailed information.
Committer | Committer Company | Committer Contact Info | Committer Bio | Committer Picture | Self Nominate for PTL (Y/N) |
Andrew Wilkinson | Ericsson | N | |||
Georg Kunz | Ericsson | georg.kunz@ericsson.com | Georg is a Senior Systems Designer at Ericsson, working mainly on SDN and NFV, and an active member of the OPNFV and OpenStack communities. Georg is a member of the OPNFV TSC and a former PTL of the OPNFV NetReady and Dovetail projects. He contributes to the OPNFV Verified compliance program and the OPNFV testing community. Moreover, he has been a contributor to the OpenStack Gluon project and the OpenStack Interop working group. In previous roles, he worked on designing and prototyping SDN solutions for 5G networks as well as integrating Openstack-based cloud infrastructures, particularly specializing in storage solutions. |
Y | |||||
Use Case Details:
Feature project proposers: Ericsson, Nokia and Radysis (confirm) and (others - confirm).
...
The table below provides a list of high-level work items required to enable support for OVS-DPDK in Airship. This list is not considered to be complete but a starting point for design discussions in the feature project. Please feel free to add / modify / extend work items.
Task name | Description | Airship component |
---|---|---|
create openvswitch agent chart | create helm chart for openvswitch agent (https://review.openstack.org/#/c/626894/) | openstack-helm |
create ovs-dpdk chart | create helm chart for openvswitch dpdk container | openstack-helm |
deploy neutron openvswitch agent | ensure chart of openvswitch agent is deployed | openstack-helm & Armada |
DPDK host config: enable 1G hugepages | modify kernel cmdline to enable 1G hugepages (hugepagez=1G hugepages=8 iommu=pt intel_iommu=on ) | drydock / MAAS (or divingbell) |
DPDK host config: mount hugepages | mount hugepages into local file system on system boot (hardcoded mount point) | drydock (or divingbell) |
DPDK host config: make hugepage mount point a config option | make mount point config option for e.g. use by helm charts | openstack-helm |
specify PCI IDs of NICs for use by DPDK | specify in site config which PCI IDs (NICs) should be decided to DPDK | |
DPDK host config: install DPDK kernel modules and tools on host OS | either install host OS dpdk package or build from source | drydock (or divingbell) |
DPDK host config: load DPDK kernel module in host OS | load dpdk kernel modules uio and igb_uio during host boot-up | drydock (or divingbell) |
DPDK host config: bind NICs to DPDK | use dpdk-devbind to bind specified NICs to DPDK | drydock (or divingbell) |
DPDK host config: enable hugepage support for kubelet | enable hugepage support for k8s kubelet via feature-gate option | promenade |
ensure communication between OVS agent and OVS | ensure common socket configuration | openstack-helm |
create docker image with dpdk-enabled OVS | create and host a docker image including an OVS with DPDK enabled (consider matching kernel and dpdk versions with host OS). Potential Kolla images: https://hub.docker.com/r/kolla/ubuntu-binary-ovsdpdk/ or https://hub.docker.com/r/kolla/ubuntu-source-ovsdpdk/ | kolla or loci |
update site configuration to deploy ovs-dpdk | create a site configuration which actually deploys ovs-dpdk as data plane | treasuremap |