OnWorks Linux 和 Windows 在线工作站

商标

工作站免费在线托管

<上一页 | 内容 | 下一页>

5.5。 OpenVswitch-DPDK


作为一个库,它本身并没有做很多事情,所以它依赖于使用它的新兴项目。 已经捆绑在 Ubuntu 16.04 版本中的库的一个使用者是 OpenVswitch,在包 openvswitch-switch-dpdk 中支持 DPDK。

这是一个如何使用 DPDK 安装和配置基本 OpenVswitch 以供以后通过 libvirt/qemu-kvm 使用的示例。


须藤 apt-get 安装 openvswitch-switch-dpdk

须藤更新替代方案 --set ovs-vswitchd /usr/lib/openvswitch-switch-dpdk/ovs-vswitchd-dpdk

echo "DPDK_OPTS='--dpdk -c 0x1 -n 4 -m 2048 --vhost-owner libvirt-qemu:kvm --vhost-perm 0664'" | 须藤 tee -a /etc/default/openvswitch-switch

须藤服务 openvswitch-switch 重启


请记住,您必须在重新启动之前将设备分配给 DPDK 兼容驱动程序(见上文)。


这部分 --vhost-所有者 libvirt-qemu:kvm --vhost-perm 0664 将使用所有者/权限设置 vhost_user 端口,以与 Ubuntu 以降低的权限运行 qemu-kvm/libvirt 的方式兼容,以提高安全性。

请注意该部分 -m 2048 是单套接字系统最基本的 numa 设置。 如果您有多个套接字,您可能需要定义如何在它们之间分配内存,例如 -m 1024, 1024. 请注意,DPDK 将尝试仅使用本地内存到它所使用的网卡(出于性能原因)。 也就是说,如果您有多个节点,但所有网卡都在一个节点上,您应该考虑分散您的网卡。 如果不是至少将内存分配给卡所在的节点,例如在两个节点中全部分配给节点 #2: -m 0, 2048. 您可以使用该工具 停止 从包 hwloc-诺克斯 查看您的卡位于哪个插槽。

您现在启动的 OpenVswitch 支持 OpenVswitch 通常支持的所有端口类型,以及 DPDK 端口类型。 这里有一个例子,如何创建一个桥接器——而不是一个普通的外部端口——向它添加一个外部 DPDK 端口。


ovs-vsctl add-br ovsdpdkbr0 -- 设置网桥 ovsdpdkbr0 datapath_type=netdev ovs-vsctl add-port ovsdpdkbr0 dpdk0 -- 设置接口 dpdk0 type=dpdk



图片

Open vSwitch 中 DPDK 的启用在 2.6 版中发生了变化。 所以对于发行版的用户

>=16.10,也适用于 Ubuntu Cloud Archive 的用户37 >=neutron 与 Ubuntu 16.04 用户相比,启用已更改。 以前通过 DPDK_OPTS 传递的选项现在通过 ovs-vsctl 配置到 Open vSwitch 配置数据库中。


与上面相同的示例在新的方式中看起来像:


图片

37 https://wiki.ubuntu.com/OpenStack/CloudArchive



# 启用 DPDK

ovs-vsctl 设置 Open_vSwitch 。 “other_config:dpdk-init=true”

# 在核心 0 上运行

ovs-vsctl 设置 Open_vSwitch 。 “other_config:dpdk-lcore-mask=0x1”

# 分配 2G 大页面(不知道 Numa 节点)

ovs-vsctl 设置 Open_vSwitch 。 “other_config:dpdk-alloc-mem=2048”

# vhost-user 套接字的组/权限(需要与 libvirt/qemu 一起使用) ovs-vsctl set Open_vSwitch 。 \

“other_config:dpdk-extra=--vhost-owner libvirt-qemu:kvm --vhost-perm 0666”


有关更多详细信息,请参阅相关的上游文档和软件包提供的 vswitch 配置的手册页:

/usr/share/doc/openvswitch-common/INSTALL.DPDK.md.gz

/usr/share/doc/openvswitch-common/INSTALL.DPDK-ADVANCED.md.gz

人 ovs-vswitchd.conf.db


OnWorks 的顶级操作系统云计算: