VPP-20.09版本安装教程(联网版)
一、環境
操作系統: Centos7.4
VPP版本: 20.09
設置阿里云鏡像源
注:由于centos官方源下載rpm太慢,vpp依賴的rpm包有幾百個,所以選擇阿里云鏡像源
更新centos-base源參考
centos鏡像-centos下載地址-centos安裝教程-阿里巴巴開源鏡像站
更新epel源參考
epel鏡像-epel下載地址-epel安裝教程-阿里巴巴開源鏡像站
都選擇RHEL 7版本
二、安裝vpp
1.下載vpp-20.09版本
git clone -b stable/2009 https://github.com/FDio/vpp.git如果速度太慢可以先把vpp從github上導入到碼云,然后從碼云下載
2.安裝vpp依賴包
cd vpp-20.09 make install-dep全部選y,安裝完成后重啟機器,這里重啟是因為vpp會更新kernel到最新版本,可以通過 uname -a命令查看,不更新會影響dpdk編譯安裝
3.編譯igb_uio驅動
注: 現在內核基本都自帶vfio-pci或者uio_pci_generic驅動,基本不需要igb_uio,而且從2101版本開始igb_uio被移除了
這里是可選項,vpp利用dpdk收包,需要編譯igb_uio這個網卡驅動,但是不做vpp也可以運行
有兩種方式編譯igb_uio驅動
方式一是手動編譯安裝dpdk的時候編譯igb_uio驅動
方式二是修改配置文件,讓vpp編譯安裝dpdk時編譯igb_uio驅動,這里采用方式二,方式一可以自行百度,網上有很多教程
cd /home/vpp-20.09/build/external/packages vi dpdk.mk # 找到 $(call set,RTE_EAL_IGB_UIO,n) # 把 n 改成 y 并保存退出4.安裝vpp相關依賴
make install-ext-deps這里vpp會下載幾個依賴的程序,例如dpdk
下載目錄是 vpp-20.09/build/external/downloads 可以查看
vpp會把下載的程序壓縮包解壓編譯安裝并且制作成一個rpm包,安裝包名稱是?vpp-ext-deps-20.09-13.x86_64, 這里20.09-13會根據版本有變化
5.編譯安裝vpp
make build #編譯debug版本 make build-release #編譯發布版本三、配置大頁內存
大頁內存不配置也可以運行,但是配置可以提高程序性能
這里只是舉例,如果服務器內存很多那么配置越多越好,例如32G內存可以配置16個
vim /etc/default/grub # 修改 GRUB_CMDLINE_LINUX 這一行并保存退出 GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet default_hugepagesz=1G hugepagesz=1G hugepages=1" # 在尾部添加了 default_hugepagesz(默認大頁大小) hugepagesz(大頁大小) hugepages(大頁個數) # 這里是設置了1個大頁內存 大頁內存大小是1G linux還支持2M的大頁 grub2-mkconfig -o /boot/grub2/grub.cfg reboot # 通過/proc/meminfo 查看大頁內存情況 cat /proc/meminfo情況如圖所示
總大頁個數是1 剩余大頁個數是1
四、運行VPP
運行vpp前需要了解vpp的可執行程序和配置文件,其次還有vpp運行時會遇到的錯誤和警告,這里以make build方式舉例說明
1.vpp相關文件
編譯過后會生成一些可執行程序和依賴的動態庫
可執行程序在目錄vpp-20.09/build-root/build-vpp_debug-native/vpp/bin
動態庫在目錄vpp-20.09/build-root/build-vpp_debug-native/vpp/lib
默認配置文件在目錄vpp-20.09/build-root/install-vpp_debug-native/vpp/etc/vpp,名稱為startup.conf
2.運行vpp
這里舉例運行vpp并且指出運行vpp會遇到的問題和解決方法
2.1修改環境變量
vi /etc/profile 在尾部添加 export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/include:/usr/local/include export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/local/lib:/usr/local/lib64 export CC=/opt/rh/devtoolset-9/root/bin/gcc export CXX=/opt/rh/devtoolset-9/root/bin/g++ 保存退出后執行 source /etc/profile這里主要是主要是C_INCLUDE_PATH和LD_LIBRARY_PATH,指定程序默認搜索頭文件和動態庫的路徑
CC和CXX是指定gcc和g++版本,這里是因為Centos7安裝的gcc是4.8.5,通過更改環境變量CC和CXX可以更換gcc版本
2.2運行vpp
cd vpp-20.09/build-root/build-vpp_debug-native/vpp/bin #切換到vpp可執行程序目錄 ./vpp -c /home/vpp-20.09/build-root/install-vpp_debug-native/vpp/etc/vpp/startup.conf這里是默認配置文件運行vpp
2.3動態庫找不到錯誤解決
找不到是因為vpp生成的動態庫不在程序搜索的目錄下
cd vpp-20.09/build-root/build-vpp_debug-native/vpp/lib cp -r * /usr/local/lib # 拷貝所有動態庫到系統默認目錄下2.4vpp用戶組不存在錯誤
添加vpp用戶組即可
groupadd vpp2.5vpp日志文件創建失敗
原因是因為/var/log/vpp目錄不存在
mkdir -p /var/log/vpp2.6vpp證書警告
這個只是警告,不影響運行,但是還是消除掉比較好
cd /etc/ssl/certs/ ./make-dummy-cert ca-certificates.crt2.7運行vpp命令行界面
vpp通過命令行界面與vpp進行交互,可以查看和設置各種內容,留著以后講解
前提是vpp已經運行了,新開一個終端
cd vpp-20.09/build-root/build-vpp_debug-native/vpp/bin ./vppctl -s /run/vpp/cli.sock出現這個界面就算成功了
至此vpp已經算是安裝好了,并且可以運行,后期將會講解vpp配置文件
總結
以上是生活随笔為你收集整理的VPP-20.09版本安装教程(联网版)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西电捷通IWN2410(V600)WAP
- 下一篇: 如何快速激活数据恢复软件