基于滴滴云 DC2 搭建 VPP 应用实例

滴滴云 DC2 搭建 VPP 环境

Cisco 开源了自己的数据包处理框架,并将其纳入 Linux 基金会的 FD.io,开源的内容就是 VPP。

这个 VPP 实现了 VSwitch、VRouter 等功能,对于当前的云网络有很大的用处,很多公司也开始使用 VPP 来搭建自己的数据转发面,本文将基于滴滴云的 DC2 云服务器来 搭建 VPP 基本环境。

创建 DC2

相关购买和创建流程可以查看滴滴云官网帮助文档,这里就不再介绍,直接入主题。

获取 VPP

本文以 VPP 18.04 版本为例。

获取 VPP 源码:

git clone https://gerrit.fd.io/r/vpp

获取指定版本源码:

git checkout -b stable/1804 origin/stable/1804

编译 VPP

  • 进入 VPP 目录
    安装依赖,需要该机器可以上外网。执行:

    make install-dep
    
  • 编译 VPP
    执行:

    make distclean
    
  • 编译错误1
    报错:cmake3 和 ninja 找不到
    处理:安装相关组件
    执行:yum -y install epel-release
    执行:yum install cmake3
    执行:yum install ninja-build
    执行:make bootstrap
    执行:./build-root/bootstrap.sh
    执行:make build
    执行:make plugins

安装 VPP

  • 配置大页内存
    执行以下命令,分配 64 页 2M 的大叶页:

    echo 64 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
    mkdir /mnt/huge
    mount -t hugetlbfs nodev /mnt/huge
    

    查看配置结果: cat /proc/meminfo 会显示对应的大页分配了64页。

  • 安装 igb_uio 驱动
    执行以下命令:

    modprobe uio
    insmod igb_uio.ko
    
  • 修改配置文件
    配置文件:/etc/vpp/startup.conf
    修改对应的 CPU、UNIX、DPDK 的 Section
    详细参看:https://wiki.fd.io/view/VPP/Using_VPP_In_A_Multi-thread_Model

  • down 掉网卡
    因为只有一个网卡,所以需要登录到 DC2 的控制后台来进行操作。DPDK 在 bond 网卡前,必须将该网卡 down 了。

运行 VPP

  • 运行 VPP
    执行:vpp -c /etc/vpp/startup.conf
    显示:(执行成功)
    打印出 FD.io VPP 的图片
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值