背景
目前基于dpdk数据平面开发套件的应用越来越多,而dpdk对于上层应用运行时,服务的进程数多于1时。要求网卡支持多队列,否则项nginx这种多进程应用程序只能再默认配置下运行。只能启动一个worker。
要求
在kvm虚机中将网卡设置支持多队列。使类似nginx这种多进程应用程序可以运行多worker。
实现
1.创建kvm虚拟机
kvm虚拟机的创建有三种方式: 1.通过qnmu-kvm创建 2.通过virt-install创建 3.通过virt-manager创建
2.设置桥接网卡
如果创建的虚拟网卡br1需要绑定到控制网卡上eno3,需要新建一个虚拟网卡名的文件ifcfg-br1 DEVICE="br1" ONBOOT="yes" TYPE="Bridge" BOOTPROTO=static IPADDR=192.168.171.117 NETMASK=255.255.255.0 GATEWAY=192.168.171.254 DNS1=8.8.8.8 DNS2=114.114.114.114 #DEFROUTE=yes 同时将ifcfg-eno3配置文件中的ip等相关的注释掉
3.虚拟机添加/删除网卡
需要在宿主机上操作 1.查看虚拟机的网卡信息 virsh domiflist centos7.0 2.添加新的网卡 virsh attach-interface centos7.0(虚拟机名字) --type bridge(网络方式--桥接) --source br1(桥接到的地方) --model virtio(模式) --config(配置文件) 3.删除一张网卡 virsh detach-interface centos7.0(虚拟机名字) --type bridge(网络方式-桥接) --mac 52:54:00:d3:60:1b(待删除网卡的mac地址) --config(配置文件)
4.打开虚机的xml配置文件
virsh edit ID或者虚机的名字
找到interface。添加两行配置后推出保存。如下图
5.开启虚机
使用命令查看网卡多队列开启是否成功。成功如下图所示
至此配置完毕。
原文链接: https://www.cnblogs.com/first-semon
【免费订阅,永久学习】学习地址:
C/C++Linux服务器开发/后台架构师【学习视频教程】
LinuxC/C++服务器开发/架构师 面试题、学习资料、教学视频和学习路线图(资料包括C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis、MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等),或点击这里加qun免费领取,关注我持续更新哦! !
【免费订阅,永久学习】学习地址:
Dpdk/网络协议栈/vpp/OvS/DDos/NFV/虚拟化/高性能专家-学习视频教程-腾讯课堂