OpenvSwitch自動化重新編譯和安裝


相信使用過OpenvSwitch的人都知道,OpenvSwitch因為要替換一部分linux內核,所以在修改OpenvSwitch源碼的時候,每次都需要重新編譯和安裝,這個過程十分的機械和枯燥,所以寫一個小腳本自動實現這個功能,源碼見github

下面可以簡單的分析下源碼:

#remove the old ovs
kill `cd /usr/local/var/run/openvswitch && cat ovsdb-server.pid ovs-vswitchd.pid`
aptitude remove openvswitch-common openvswitch-datapath-dkms openvswitch-controller openvswitch-pki openvswitch-switch -y
rmmod openvswitch
#install the new ovs
cd openvswitch-2.4.0
./configure --prefix=/usr --with-linux=/lib/modules/`uname -r`/build
make
make install 
modprobe gre
insmod datapath/linux/openvswitch.ko
make modules_install
modprobe openvswitch
#disable openvswitch controller
/etc/init.d/openvswitch-controller stop
update-rc.d openvswitch-controller disable

#start the new ovs
/etc/init.d/openvswitch-switch start
ovsdb-tool create /usr/local/etc/openvswitch/conf.db /usr/local/share/openvswitch/vswitch.ovsschema
ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach --log-file
ovs-vsctl --no-wait init
ovs-vswitchd --pidfile --detach

 

主要的過程為:

  1. 移除原來的OpenvSwitch的核以及庫
  2. 安裝編譯新的OpenvSwitch
  3. 重新啟動OpenvSwitch(包括數據庫,主函數)

將這個腳本放在和OpenvSwitch同一個目錄下,運行之后,就可以開始使用ovs了。如下圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM