Рубрики
ovs / openvswitch / dpdk

debian / openvswitvh / dpdk

0. устанавливаем
apt install openvswitch-switch-dpdk

1. добавить в конец 
vim /etc/dpdk/interfaces  
------------------------------
pci     0000:09:00.0    vfio-pci 
pci     0000:09:00.1    vfio-pci
------------------------------

2. добавить в конец 
vim /etc/dpdk/dpdk.conf
-----------------------
NR_2M_PAGES=1024
NR_1G_PAGES=4
------------------------

3. настраиваем ovs
!!! Для проверки номерации ядер в системе можно использовать команду lstopo из пакета hwloc.
!!! lstop
!!! (numactl -H) Установите ядра процессора, на которых должны создаваться потоки ядра dpdk dpdk-core-mask: (требуется шестнадцатеричная строка для наборов процессоров)

ovs-vsctl set Open_vSwitch . "other_config:dpdk-init=true"
ovs-vsctl set Open_vSwitch . "other_config:dpdk-lcore-mask=0x1"
ovs-vsctl set Open_vSwitch . "other_config:dpdk-socket-mem=2048"
ovs-vsctl set Open_vSwitch . "other_config:vhost-iommu-support=true"
systemctl restart ovs-vswitchd.service

4. Создаем бридж и добавляем сетевые карты
ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev 
ovs-vsctl add-port br0 dpdk-p0 -- set Interface dpdk-p0 type=dpdk options:dpdk-devargs=0000:09:00.0 
ovs-vsctl add-port br0 dpdk-p1 -- set Interface dpdk-p1 type=dpdk options:dpdk-devargs=0000:09:00.1