dpdk环境搭建
dpdk环境搭建
将虚拟机对应虚拟网卡驱动设置为
vmxnet3
因为vmxnet3是支持多队列的网卡,多队列网卡意味着,可以出发cpu的多个中断修改网卡名:
1 | vi /etc/default/grub |
重建grub配置文件
执行命令:sudo grub-mkconfig -o /boot//grub/g
rub.cfg
重启后网卡名就修改好了 如 eth0
- 网络配置文件: /etc/network/interfaces,使对应网卡采用dhcp自动获取ip
1 | The loopback network interface |
添加网卡,但是在ifconfig时,发现无eth0,执行
ifconfig eth0 up
此时 eth0 被开启,但是无ip
被分配,执行dhclient eth0
为eth0
分配ip在启动参数内添加巨页信息:
1 | default_hugepages=1G hugepagesz=2M hugepages=1024 isolcpus=0-2 |
重建grub配置文件
执行命令:sudo grub-mkconfig -o /boot//grub/grub.cfg
- 查看是否支持多队列网卡
1 | cat /proc/interrupts 存在如下内容 |
可以看到eth0 eth1都是多队列网卡,并且有两个都对应两个中断(因为虚拟机我只分配了2个核心)
- 下载dpdk代码,并设置环境变量
export RTE_SDK=/home/satellite/share/dpdk-stable-19.08.2
export RTE_TARGET=x86_64-native-linux-gcc
执行:/usertools/dpdk-setup.sh
dhclient命令来自英文词组DHCP client的缩写,其功能是动态获取或释放IP地址。使用dhclient命令前,需要将网卡模式设置成DHCP自动获取,否则静态模式的网卡不会主动向服务器获取如IP地址等网卡信息。
/etc/default/grub
是ubuntu开机引导文件,修改GRUB_CMDLINE_LINUX
就是修改了内核的启动参数grup是GNU GRand Unified Bootloader的缩写。GRand代表”Generalized”和”Randomized”。在GRUB的背景中,”GRand”意味着它是一个通用且灵活的引导加载程序,可以适用于各种操作系统和硬件平台。