原文发表于cu:2016-06-02

本文属于重发,ovs当前的安装方式可能略有不同。

参考文档:

  1. 官方文档: http://openvswitch.org/support/dist-docs-2.5/INSTALL.RHEL.md.html

在docker环境下搭建网桥,有传统的brctl工具(yum install -y bridge-utils),也可以采用扩展性/功能性更强大的open vswitch。

ovs安装的流程是需要下载源代码之后自行制作rpm安装程序,官方已经把工具集成打包完成,只需要按照步骤操作,即参考上方链接的文档就行。

一.前置条件

1. 环境

Server:CentOS-7-x86_64-1511

2. 软件

ovs官网:http://openvswitch.org/

截止2016年6月1日最新LTS版本下载地址:http://openvswitch.org/releases/openvswitch-2.5.0.tar.gz

二.安装OVS

1. 依赖包

[root@localhost ~]# yum install -y gcc make python-devel openssl-devel kernel-devel graphviz kernel-debug-devel autoconf automake rpm-build redhat-rpm-config libtool 

2. 环境检查

#部分RHEL 6的kernel-devel包含1个错误的"build"链接,需要检查系统环境是否OK;
#如果"ll"命令能列出目录及目录所含的文件,表示系统环境没问题,如果报" No such file or directory"则需要修复这个错误;
#请注意红色粗体字部分,由系统内核决定。
[root@localhost ~]# ll /lib/modules/3.10.0-327.el7.x86_64/build/ #建立软链接的时候请注意红色粗体字部分保持一致(源处有多个类似的目录,选择与目的处显示的内核版本一致的目录即可);(可选项)修复步骤如下:
[root@localhost ~]# rm -f /lib/modules/3.10.0-327.el7.x86_64/build/*
[root@localhost ~]# ln -s /usr/src/kernels/3.10.0-327.el7.x86_64/ /lib/modules/3.10.0-327.el7.x86_64/build/ 

3. Building ovs

[root@localhost ~]# mkdir -p $HOME/rpmbuild/SOURCES/
[root@localhost ~]# cd $HOME/rpmbuild/SOURCES
[root@localhost SOURCES]# tar -zxvf openvswitch-2.5.0.tar.gz
[root@localhost SOURCES]# cd openvswitch-2.5.0 #在/root/rpmbuild/RPMS/x86_64目录生成2个rpm软件,分别是"openvswitch-2.5.0-1.x86_64.rpm"与"openvswitch-debuginfo-2.5.0-1.x86_64.rpm"(版本随采用的版本不同而不同);
#"--without check"参数可以关闭rpmbuild过程中的测试;
#如果报"configure: error: source dir /lib/modules/3.10.0-327.el7.x86_64/build doesn't exist或者类似的错,可以参考步骤2。
[root@localhost openvswitch-2.5.0]# rpmbuild -bb --without check rhel/openvswitch.spec

4. Build rhel 6 kernel module(可选)

#针对RHEL 6,需要build ovs的内核驱动;
#在/root/rpmbuild/RPMS/x86_64目录生成1个rpm软件" kmod-openvswitch-2.5.0-1.el7.centos.x86_64.rpm" (版本随采用的版本不同而不同)。
[root@localhost openvswitch-2.5.0]# cp rhel/openvswitch-kmod.files $HOME/rpmbuild/SOURCES
[root@localhost openvswitch-2.5.0]# rpmbuild -bb rhel/openvswitch-kmod-rhel6.spec

5. 安装ovs

[root@localhost ~]# cd $HOME/rpmbuild/RPMS/x86_64
[root@localhost x86_64]# rpm -ivh openvswitch-2.5.0-1.x86_64.rpm
[root@localhost x86_64]# rpm -ivh openvswitch-debuginfo-2.5.0-1.x86_64.rpm 

6. 验证

[root@localhost ~]# ovs-vsctl -V

#开机启动
[root@localhost ~]# systemctl enable openvswitch.service #启动openvswitch
[root@localhost ~]# systemctl start openvswitch.service [root@localhost ~]# service openvswitch status
#或systemctl status openvswitch.service

Open vSwitch for CentOS的更多相关文章

  1. Install Open vSwitch on CentOS

    转载:http://cloud-mate.org/2015/06/installing-open-vswitch-centos-cloudstack/  June 5, 2015  Stuart Ne ...

  2. OVS-----CentOS7上搭建基于Open vSwitch的VxLAN隧道实验

    一.关于VXLAN VXLAN 是 Virtual eXtensible LANs 的缩写,它是对 VLAN 的一个扩展,是非常新的一个 tunnel 技术,在Open vSwitch中应用也非常多. ...

  3. Docker容器学习梳理 - 容器间网络通信设置(Pipework和Open vSwitch)

    自从Docker容器出现以来,容器的网络通信就一直是被关注的焦点,也是生产环境的迫切需求.容器的网络通信又可以分为两大方面:单主机容器上的相互通信,和跨主机的容器相互通信.下面将分别针对这两方面,对容 ...

  4. [qemu][cloud][centos][ovs][sdn] centos7安装高版本的qemu 以及 virtio/vhost/vhost-user咋回事

    因为要搭建ovs-dpdk,所以需要vhost-user的qemu centos默认的qemu与qemu-kvm都不支持vhost-user,qemu最高版本是2.0.0, qemu-kvm最高版本是 ...

  5. [cloud][OVS][sdn] Open vSwitch 初步了解

    What is Open vSwitch? Open vSwitch is a production quality, multilayer virtual switch licensed under ...

  6. Linux CentOS 配置Tomcat环境

    一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...

  7. Hyper-v 安装CentOS 7 (其他虚拟机一样参考)

    平台之大势何人能挡? 带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4822808.html hyper-v安装很多人没弄过,我这里介绍一下.(其他虚拟机参 ...

  8. ifconfig: command not found(CentOS专版,其他的可以参考)

    ifconfig: command not found 查看path配置(echo相当于c中的printf,C#中的Console.WriteLine) echo $PATH 解决方案1:先看看是不是 ...

  9. Centos 下 mysql root 密码重置

    重置mysql密码的方法有很多,官网也提供了很方便的快捷操作办法,可参考资料 resetting permissions .本文重置密码的具体步骤如下: 一.停止MySQL(如果处于运行状态) #se ...

随机推荐

  1. CORS support for ASP.NET Web API (转载)

    CORS support for ASP.NET Web API Overview Cross-origin resource sharing (CORS) is a standard that al ...

  2. freemark生成静态网页乱码问题

    输出流问题:修改Writer如下: OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(dir), &quo ...

  3. Web—08-移动端库和框架

    移动端js事件 移动端的操作方式和PC端是不同的,移动端主要用手指操作,所以有特殊的touch事件,touch事件包括如下几个事件: 1.touchstart: //手指放到屏幕上时触发 2.touc ...

  4. 『ACM C++』 PTA 天梯赛练习集L1 | 029-033

    哈哈,今天开始我也是学车人了~ 开始一千多道疯狂刷题~ ------------------------------------------------L1-029------------------ ...

  5. Centos 批量分发脚本

    ## Centos / ## #!/bin/sh file="$1" remotedir="$2" filename=$(|awk -F '/' '{print ...

  6. Java 遍历方法总结

    package com.zlh; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; im ...

  7. 物联网通信 - RESTDemo示例程序(C#版本)

    技术:wcf+http post+json(.net4.0 + jdk1.8) 运行环境:vs2010+java 概述Server开放RESTful API接口,供应用程序/移动App/嵌入式qt通过 ...

  8. 无法获得锁 /var/lib/apt/lists/lock - open (11 资源临时不可用)

    具体如下: 1.ps-aux 查出apt-get进程的PID,通常是一个四位数字. 2.用sudo kill PID代码 杀死进程 3.用sudo apt-get update,sudo apt-ge ...

  9. [agc010D]Decrementing-[。。。思考题]

    Description 传送门 Solution 真是够神秘的啊... Alice和Bob两个真的城会玩. 不过本题一个暗示挺明显的.就是黑板上所有数不论何时gcd为1. 考场上我以为会很复杂,结果. ...

  10. day 11 大文件操作

    1.f.read(),  f.readline(),   f.readlines() ##### 1. f.read() 整体读 返回字符串 In [2]: f = open("aaa.py ...