openvswitch installation in Ubuntu

在Ubuntu中安装openvswitch的时候,找了好多教程和资料,有英文有中文,有些文章不太清晰,导致安装了好久都没搞好,这次终于搞定,分享出来给大家。Ubuntu 及其衍生系统一样,博文只是做参考,还要视具体环境而定。
Open vSwitch是一个高质量的、多层虚拟交换机,使用开源Apache2.0许可协议,由Nicira Networks开发,主要实现代码为可移植的C代码。它的目的是让大规模网络自动化可以通过编程扩展,同时仍然支持标准的管理接口和协议(例如NetFlow, sFlow, SPAN, RSPAN, CLI, LACP, 802.1ag)。此外,它被设计位支持跨越多个物理服务器的分布式环境,类似于VMware的vNetwork分布式vswitch或Cisco Nexus 1000 V。Open vSwitch支持多种linux 虚拟化技术,包括Xen/XenServer, KVM和VirtualBox。

内核模块实现了多个“数据路径”(类似网桥),每个inerface都可以有多个“vport”(类似于桥内的端口)。每个数据路径也通过关联一下流表(flow table)来设置操作,而这些流表中的流都是用户空间在报文头和元数据的基础上映射的关键信息,一般的操作都是将数据包转发到另一个vport。当一个数据包到达一个vport,内核模块所做的处理是提取其流的关键信息并在流表中查找这些关键信息。当有一个匹配的流时它执行对应的操作。如果没有匹配,它会将数据包送到用户空间的处理队列中(作为处理的一部分,用户空间可能会设置一个流用于以后碰到相同类型的数据包可以在内核中执行操作)。

安装openvswitch

首次按到官网下载最新源码包:http://openvswitch.org/releases/openvswitch-2.1.2.tar.gz
接下来将其解压到/home目录下。
在终端中以root权限执行以下内容:
1. cd 到 /openvswitch-2.1.2.tar.gz 目录下,执行

    # ./boot.sh

2.通过配置程序配置脚本,可以没有任何参数

    # ./configure

默认情况下所有文件都在/usr/local目录下,也可以修改安装目录,如:

    # ./configure --preficx=/usr --localstatedir=/var

3.在openvswitch-2.1.2.tar.gz/目录下运行GNU make :

    #  make

4.若构建内核模块,可以安装和加载:

    #  make modules_install
    #  /sbin/modprobe openvswitch

5.使用ovsdb-tool初始化数据库:

    #  mkdir -p /usr/local/etc/penvswitch
    #  ovsdb-tool create /usr/local/etc/openvswitch/conf.db vswitchd/vswitch.ovsschema

6.启动
开始0vs-vswitchd之前,需要启动它的配置数据库,ovsdb服务器。

    # ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock \
                    --remote=db:Open_vSwitch,Open_vSwitch,manager_options \
                    --private-key=db;Open_vSwitch,SSL,private_key \
                    --certificate=db:Open_vSwitch,SSL,certificate \
                    --bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert \
                    --pidfile --detach

7.第一次安装后,需要初始化ovs-vsctl数据库

    #  ovs-vsctl --no-wait init

8.然后启动ovs守护进程告诉它连接在同一个UNIX域套接字

    # ovs-vswitchd --pidfile --detach

3open vswitch常用操作

以下操作都需要root权限运行,在所有命令中br0表示网桥名称,eth0为网卡名称。

添加网桥:

    # ovs-vsctl add-br br0

列出open vswitch中的所有网桥:

    # ovs-vsctl list-br

判断网桥是否存在:

    # ovs-vsctl br-exists br0

将物理网卡挂接到网桥:

    # ovs-vsctl add-port br0 eth0

列出网桥中的所有端口:

    # ovs-vsctl list-ports br0

列出所有挂接到网卡的网桥:

    # ovs-vsctl port-to-br eth0

查看open vswitch的网络状态:

    # ovs-vsctl show

删除网桥上已经挂接的网口:

    #  ovs-vsctl del-port br0 eth0

删除网桥:

    # ovs-vsctl del-br br0
基于STM32F407,使用DFS算法实现最短迷宫路径检索,分为三种模式:1.DEBUG模式,2. 训练模式,3. 主程序模式 ,DEBUG模式主要分析bug,测量必要数据,训练模式用于DFS算法训练最短路径,并将最短路径以链表形式存储Flash, 主程序模式从Flash中….zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值