1.下載openvswitch源文件,注意版本要適合操作系統內核。
推薦openvswitch2.0及其以上版本。
2.開始安裝openvswitch
cd openvswitch sudo ./boot.sh sudo ./configure --with-linux=/lib/modules/`uname -r`/build#這是選擇使用內核,不加擇使用系統默認內核 sudo make sudo make install sudo insmod datapath/linux/openvswitch.ko
如果出現無法加載.ko,提示unknown symbol in module,兩種情況:一是openvswitch版本與系統內核版本不一致;二是首先加載gre模塊:modprobe gre,再insmod加載即可。
3.初始化配置openvswitch
創建ovsdb數據庫
sudo mkdir -p /usr/local/etc/openvswitch sudo ovsdb-tool create /usr/local/etc/openvswitch/conf.db /usr/local/share/openvswitch/vswitch.ovsschema
此處使用/usr/local/share/openvswitch/vswitch.ovsschema路徑,因為發現之前vswitchd路徑出現錯誤。
配置啟動ovsdb-server
sudo ovsdb-server /usr/local/etc/openvswitch/conf.db --remote=punix:/usr/local/var/run/openvswitch/db.sock --pidfile --detach
此處沒有加db:Open_vSwitch,manager_options 等,因為發現加上之后各種報錯。
初始化數據庫
sudo ovs-vsctl --no-wait init
啟動 Open vSwitch daemon,連接到同樣的 Unix domain socket 上
sudo ovs-vswitchd --pidfile --detach
至此openvswitch安裝配置結束。
-------------------------------------------------------------------------------------------------------
Qos的設置:
基本的命令操作不再介紹,ovs的官網教程可以參考,下面介紹給某個接口設置Qos划分隊列的方法:
sudo ovs-vsctl -- set port wlan0 qos=@newqos -- --id=@newqos create qos type=linux-htb other-config:max-rate=100000000 queues=0=@q0,1=@q1 -- --id=@q0 create queue other-config:min-rate=30000000 other-config:max-rate=50000000 -- --id=@q1 create queue other-config:min-rate=20000000
這段表示給wlan0端口綁定一個Qos機制,划分成兩個隊列q1、q2。查看隊列狀態使用如下命令:
sudo ovs-ofctl queue-stats br0