Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Task nameDescriptionAirship componentImplementationUpstream reference
create openvswitch agent chartcreate helm chart for openvswitch agentopenstack-helm
https://review.openstack.org/#/c/626894/
create ovs-dpdk chartcreate helm chart for openvswitch dpdk containeropenstack-helm

deploy neutron openvswitch agentensure chart of openvswitch agent is deployedopenstack-helm & Armada

DPDK host config: enable 1G hugepagesmodify kernel cmdline to enable 1G hugepages (hugepagez=1G hugepages=8 iommu=pt intel_iommu=on )drydock

Already available:

Define the number of available hugepages in the node's HardwareProfile:
https://github.com/openstack/airship-drydock/blob/master/python/tests/yaml_samples/deckhand_fullsite.yaml#L427

Define the kernel paramters for enabling hgepages in the node's BaremetalNode configuration (kernel_param section):
https://github.com/openstack/airship-drydock/blob/master/python/tests/yaml_samples/deckhand_fullsite.yaml#L366

https://storyboard.openstack.org/#!/story/2004790
DPDK host config: mount hugepagesmount hugepages into local file system on system boot (hardcoded mount point)Divingbell

Deploy Divingbell daemonset on compute nodes with a given chart configuration (values.yaml).

https://airship-divingbell.readthedocs.io/en/latest/#mounts

https://storyboard.openstack.org/#!/story/2004790
DPDK host config: make hugepage mount point a config optionmake mount point config option for e.g. use by helm chartsopenstack-helmconfig option of helm chart (see patchset). Need to figure out how to pass overwrites to chart.https://review.openstack.org/#/c/626894/
specify PCI IDs of NICs for use by DPDKspecify in site config which PCI IDs (NICs) should be decided to DPDK 
Reuse data_nic0x config option defined in HardwareProfinehttps://storyboard.openstack.org/#!/story/2004790
DPDK host config: install DPDK kernel modules and tools on host OSeither install host OS dpdk package or build from sourcedrydock (or divingbell)
https://storyboard.openstack.org/#!/story/2004790
DPDK host config: load DPDK kernel module in host OSload dpdk kernel modules uio and igb_uio during host boot-updrydock (or divingbell)
https://storyboard.openstack.org/#!/story/2004790
DPDK host config: bind NICs to DPDKuse dpdk-devbind to bind specified NICs to DPDKdrydock (or divingbell)
https://storyboard.openstack.org/#!/story/2004790
DPDK host config: enable hugepage support for kubeletenable hugepage support for k8s kubelet via feature-gate optionpromenade
https://storyboard.openstack.org/#!/story/2004791
ensure communication between OVS agent and OVSensure common socket configurationopenstack-helm

create docker image with dpdk-enabled OVScreate 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-dpdkcreate a site configuration which actually deploys ovs-dpdk as data planetreasuremap

...