| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Qemu/Kvm 搭建DPDK 实验平台 -> 正文阅读 |
|
[系统运维]Qemu/Kvm 搭建DPDK 实验平台 |
与Vmware Player 相比, Qemu/kvm的配置要相对复杂一些. 但是更加接近生产环境. 首先需要一台 机器安装有比较新的任何LInux 发布版本. 例如 centos 7, ubuntu 15.04/16.04 皆可. CPU 至少是Intel Sandybridge 或者任何新于SandyBridge的型号. 要求至少4逻辑核以上(HT也算) , 内存4G或者以上 . Guest 本例子采用的是ubutntu 16.04 第一步Host 软件安装 :在Host主机上安装好 Qemu/Kvm, 以及 virt-manager, 这样生成虚拟机的XML配置文件会容易一些. 安装好相关工具后, 即可开始安装Guest, 同时可以开启vncserver ,便于远程登陆GUI 进行配置管理. 第二步安装Guest: 利用virt-manager 可以从ubuntu16.04的iso文件安装整个OS(一定要安装openssh-server), 在安装初始需要配置cpu数量为4, 内存为4G. 其它按照默认配置安装即可. 截图如下. 然后可以点击属性按钮, 然后修改网卡的配置 网卡需要修改成e1000 类型 同时添加另外两个新的网卡(同样为e1000)类型.修改后的样子. 这里有个小技巧就是发现Guest OS的ip地址, 虽然我们加入了3个网卡, 但是ubuntu缺省只enable了一个, 所以我们在host 执行 arp -a 就会发现 192.168.122.80 的地址, ssh上去就是Guest.
第三步调整CPUID 标志位. virt-manager 不能做很细粒度的配置调整, 我们利用它生成了配置后可以用virsh 导出这个xml文件,
Qemu/libvirt 会主动屏蔽一些CPUID 标志位, 这会给DPDK的配置带来一些困扰, 所以我们要针对这个导出的xml做一些细粒度的调整 下面分为两种情况 1. Sandy bridge (不支持1G 巨页) 需要在xml文件中添加如下的部分
2. Haswell(支持巨页) pdpe1gb 是支持1G巨页的cpu id flag. 缺省是被屏蔽掉的
现在shutdown 虚拟机 然后再用virsh 根据最新的 xml 创建新的虚拟机
第四步 安装DPDK 完成以上三步以后, 就可以参照<<VMware Player 搭建DPDK 实验平台>>中的同样的步骤. 首先是在内核的启动参数中设置巨页, 需要注意的是 支持1G巨页的处理器可以设置为1G,否则只能设置为2M, 1G的巨页只需要1个,而2M的巨页最好设置为64个
其余步骤都是相同的,就不赘述 下面列出 使用64个2M巨页的testpmd执行情况
然后按照原有步骤编译执行testpmd ./testpmd -- -i --total-num-mbufs=2048 (需要限制一下mbuf的数量) |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:48:15- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |