vpp 在centos 8 中运行以及注意事项
2020-09-21 本文已影响0人
super大太阳
本文主要是讲解vpp在centos 8 中如何运行,以及在配置的过程中遇到的问题
PS:以挂载ens7 网卡,pci 0000:02:05.0 为例
- 关闭计划用dpdk接管的网卡接口,并查询其pci端口号,可以通过
lspci |grep Ethernet
查看。此时需要确认本机物理网卡或虚拟网卡为DPDK支持类型,查询网址https://core.dpdk.org/supported/
ifconfig ens37 down
- 安装NIC网卡驱动模块并启动非安全NOIOMMU模式
modprobe vfio-pci
echo Y | sudo tee /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
- 设置巨页
分配巨页1024*2M=2G并查看大页分配数目
echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
cat /proc/meminfo| grep Huge
- 配置vpp,将startup.conf 文件中的相同的模块替换成下列模块
vim /root/vpp/./src/vpp/conf/startup.conf
unix {
nodaemon
log /var/log/vpp/vpp.log
full-coredump
cli-listen /run/vpp/cli.sock
#gid vpp
}
#api-segment {
#gid vpp
#}
cpu {
main-core 1
}
dpdk {
uio-driver vfio-pci
dev 0000:02:05.0 {name G1} #按照自己想要绑定的网卡去修改
}
- 启动vpp(以上面修改过的配置文件作为启动文件)
./vpp/build-root/install-vpp_debug-native/vpp/bin/vpp -c ./src/vpp/conf/startup.conf
- 重新开启一个终端,进入vpp视图
./vpp/build-root/install-vpp_debug-native/vpp/bin/vppctl
注意事项:
-
此方法是centos 8 下运行vpp
-
使用的是mac 平台下 vmvare fucsion version 11.1.1 ,其他平台待验证
-
确保虚拟机的处理器和内存的高级选项置无任何勾选,内核>= 2
图片1.png -
如果进入vpp,发现dpdk 没有挂载上网卡那请手动绑定一下,手动执行在第2步之后
/opt/vpp/external/x86_64/share/dpdk/usertools/dpdk-devbind.py --bind=vfio-pci 0000:02:05.0