之前在CentOS 6上安裝Open vSwitch(OVS)一直失敗,這次要在CentOS 7上安裝。
首先要先確定OVS版本跟linux核心版本:
Open vSwitch | Linux kernel |
1.4.x | 2.6.18 to 3.2 |
1.5.x | 2.6.18 to 3.2 |
1.6.x | 2.6.18 to 3.2 |
1.7.x | 2.6.18 to 3.3 |
1.8.x | 2.6.18 to 3.4 |
1.9.x | 2.6.18 to 3.8 |
1.10.x | 2.6.18 to 3.8 |
1.11.x | 2.6.18 to 3.8 |
2.0.x | 2.6.32 to 3.10 |
2.1.x | 2.6.32 to 3.11 |
2.2.x | 2.6.32 to 3.13 |
2.3.x | 2.6.32 to 3.14 |
2.4.x | 2.6.32 to 4.0 |
2.5.x | 2.6.32 to 4.3 |
2.6.x | 3.10 to 4.6 |
Source
CentOS上要確認上要確認核心版本,指令:
[root@localhost ~]# uname -r 3.10.0-327.36.3.el7.x86_64
然後這是現在我的CentOS 7版本:
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core)
不過根據官網,目前LTS(Long Term Support)版本是2.5.1版,所以還是使用2.5.1版。
OVS目前還是需要自己編譯,所以先安裝toolchain。
[root@localhost ~]# yum groupinstall "Development Tools"
還有其他dependency要安裝。
[root@localhost ~]# yum install openssl-devel wget kernel-devel
先來增加一個使用者並切換過去(不是必要的,只是單純方便管理):
[root@localhost ~]# adduser ovs [root@localhost ~]# su ovs [ovs@localhost root]$ cd [ovs@localhost ~]$
下載:
[ovs@localhost ~]$ wget http://openvswitch.org/releases/openvswitch-2.5.1.tar.gz
解壓縮:
[ovs@localhost ~]$ tar xzvf openvswitch-2.5.1.tar.gz
等等要打包成rpm方式,先建個資料夾並且把tar檔複製過去:
[ovs@localhost ~]$ mkdir -p ~/rpmbuild/SOURCES [ovs@localhost ~]$ cp openvswitch-2.5.1.tar.gz ~/rpmbuild/SOURCES/
修改spec文件:
[ovs@localhost ~]$ sed 's/openvswitch-kmod, //g' openvswitch-2.5.1/rhel/openvswitch.spec > openvswitch-2.5.1/rhel/openvswitch_no_kmod.spec
打包:
[ovs@localhost ~]$ rpmbuild -bb --nocheck ~/openvswitch-2.5.1/rhel/openvswitch_no_kmod.spec
完成後應該在這個目錄下有兩個rpm檔:
[ovs@localhost ~]$ ls rpmbuild/RPMS/x86_64/ openvswitch-2.5.1-1.x86_64.rpm openvswitch-debuginfo-2.5.1-1.x86_64.rpm
其中openvswitch-2.5.1-1.x86_64.rpm就是我們要的檔案,先退出使用者ovs回到root,再用yum安裝。
[ovs@localhost ~]$ exit exit [root@localhost ~]# yum localinstall /home/ovs/rpmbuild/RPMS/x86_64/openvswitch-2.5.1-1.x86_64.rpm
先用指令檢查一下有沒有安裝成功:
[root@localhost ~]# ovs-vsctl -V ovs-vsctl (Open vSwitch) 2.5.1 Compiled Nov 4 2016 14:06:47 DB Schema 7.12.1
最後啟動OVS這個service。
[root@localhost ~]# systemctl start openvswitch.service [root@localhost ~]# chkconfig openvswitch on
最後最後我只能說,在CentOS 6上安裝毛有夠多,因為還需要編譯kernel module,而且編譯中有一些問題。
如果懶得編譯的話,這裡提供我編譯好的rpm檔,至於環境是什麼上面都有囉。
openvswitch-2.5.1-1.x86_64.rpm
MD5 4e5f2f1754508683c07c55aea40d05fa SHA-1 51395e1cd277157f3ea14e37f38314e5f981a5f5 SHA-256 282827513acf15caa3cc487cb1d1bac8c46c9d1ea96cc956d3cf9b42477a15f5
參考
How To Install OpenvSwitch On CentOS 7: 'http://solomon.ipv6.club.tw/Course/SDN/howto_install_ovs_on_centos7.html'
沒有留言:
張貼留言