在vmware虚拟机安装dpdk的详细过程
1. 打开vmware,选择centos7.6镜像,开始安装操作系统
2. 安装完毕后,关机,点击“编辑虚拟机设置”按钮,点击“处理器”,在右侧勾选第三个“虚拟化IOMMU”。由于我的宿主机是win11,已经支持了Intel VT-x,所以第一个选项就不必勾选了,win7和win10可能需要勾选。
另外,我多添加了几个网络适配器,便于测试。

注意,如果勾选了第一个选项:

启动虚拟机时报错:.

则需要取消勾选第一个。
3. 编辑本虚拟机配置文件CentOS 7 64 位.vmx(使用记事本打开),(我新建的这个虚拟机配置文件所在目录是:D:\vmware_machine\machines\CentOS-dpdk)将网卡驱动由e1000改为e1000e,保存后启动虚拟机。

4. 启动后,通过ifconfig命令查看网卡名称,并且查看/etc/sysconfig/network-scripts/ifcfg-*相应网卡文件,确保文件名、文件内容中的网卡名称与ifconfig命令查看的网卡名称一致,不一致的话需要手动修改并重启网卡:

5. 安装python3.9,具体安装方式不写了,可自行安装
wget https://repo.huaweicloud.com/python/3.9.10/Python-3.9.10.tgz tar -zxf Python-3.9.10.tgz cd Python-3.9.10 ./configure --prefix=/usr/local/python3 --with-ssl make && make install ln -s /usr/local/python3/bin/python3 /usr/bin/ ln -s /usr/local/python3/bin/pip3 /usr/bin/
6. python3.9安装完毕后,会有pip3命令,通过pip安装meson、ninja(dpdk20.11以后版本需通过meson+ninja 的编译方式进行编译安装)
pip3 install meson pip3 install ninja ln -s /usr/local/python3/bin/meson /usr/bin/ ln -s /usr/local/python3/bin/ninja /usr/bin/
7. 安装dpdk,我下载的是20.11.4版本
cd /home/ wget https://fast.dpdk.org/rel/dpdk-20.11.4.tar.xz xz -d dpdk-20.11.4.tar.xz tar -xf dpdk-20.11.4.tar cd dpdk-stable-20.11.4/ meson ../dpdk_build cd ../dpdk_build/ meson configure -Dbuildtype=debug -Dexamples=l3fwd-graph ninja ninja install ldconfig echo "/usr/local/lib64/" >> /etc/ld.so.conf.d/dpdk.conf # 将dpdk的lib库添加到系统路径 ldconfig echo "export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig" >> /etc/profile # 设置pkg-config路径 echo "modprobe vfio-pci" >> /etc/profile # 加载vfio-pci模块 echo "sysctl -w vm.nr_hugepages=256" >> /etc/profile # 设置大页内存为256Gsource /etc/profile
8. 验证安装是否成功,输出图片内容即为成功
ldconfig -p|grep librte|wc -l ldconfig -p | grep librte_graph pkg-config --variable pc_path pkg-config pkg-config --modversion libdpdk

9. 使用dpdk脚本查看网卡信息
python3 /home/dpdk-stable-20.11.4/usertools/dpdk-devbind.py -s
输出以下内容,这是还未绑定网卡的状态,将每个网卡的bus信息记下来(每行0000开头的字符串):

10. dpdk绑定网卡
python3 /home/dpdk-stable-20.11.4/usertools/dpdk-devbind.py -b vfio-pci 0b:00.0 #表示绑定ens192这块网卡
注意,如果此时输出:

则需要先将网卡ens192关闭:

再次执行绑定脚本:

没有任何输出,则为绑定成功。
11. 再次查看网卡绑定状态信息,可以看到已经绑定成功

12. 运行dpdk示例程序,验证dpdk是否可用
cp -r /home/dpdk-stable-20.11.4/examples/helloworld/ /home/ cd /home/helloworld/ make

执行helloworl二进制文件,输出如下即为成功:

至此,dpdk安装完毕,可以使用了。
栏 目:其它服务器
本文地址:https://zz.feitang.co/server/32080.html
您可能感兴趣的文章
- 12-20Kubernetes中使用临时容器进行故障排查的方法
- 12-20Nginx设置HTTPS的方法步骤
- 12-20二进制方式安装 Kubernetes1.18.3版本实现脚本
- 12-20Nginx工作模式及代理配置的使用细节
- 12-20ZooKeeper分布式协调服务设计核心概念及安装配置
- 12-20Kubernetes部署可视化地图的十个步骤
- 12-20关于docker清理Overlay2占用磁盘空间的问题(亲测有效)
- 12-20Docker compose配置文件写法及命令使用示例
- 12-20openwrt安装docker并启动的操作方法
- 12-20云原生Kubernetes初始化容器Init使用教程


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07新版Eclipse集成Tomcat时找不到server选项的解决方法
- 12-06IIS7 应用程序池自动回收关闭的解决方案
- 12-05Windows Server 2019安装VMware
- 12-05Windows服务器默认IE浏览器无法下载文件的解决方法
- 12-05Docker安装Jenkins全过程
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-14Docker Desktop无法正常启动解决(failed to start...)
- 12-14k8s 与docker空间使用分析与清理方法





