Open vSwitch系列之一 Open vSwitch诞生

Open vSwitch系列之二 安装指定版本ovs

Open vSwitch系列之三 ovs-vsctl命令使用

Open vSwitch系列之四 ovs-ofctl命令使用

Open vSwitch系列之五 网桥特性功能配置

Open vSwitch系列之六 vlan隔离

在ovs学习过程中,如果自己想要安装一个ovs交换机其实一条简单的命令 apt  install openvswitch 就可以了,但是这种方法只能安装低版本的ovs。在特殊情况下需要安装指定版本,例如需要下发meters表时需要ovs2.8以上的版本,那么就需要下载安装包手动安装。看似一个复杂的过程,其实也是比较简单的。下面就一起来看看如果手动安装一个指定版本ovs交换机。

准备工作

安装python

apt install python

安装python-pip

如果不安装pip,在下面的过程会报错找不到six模块。

apt install python-pip 

 安装步骤

我们根据ovs的官方网站  http://www.openvswitch.org/ 的指导文档来一步一步的完成安装。

1.下载指定版本,可以看到这种安装的好处是你可以指定任何一种版本,不会被apt的安装方式限制了版本号。

http://www.openvswitch.org/download/

2.生成makefile文件

3.make 编译文件

4.make install 安装

5.检查模块

如果在安装的过程中生成了修改了内核模块,那么重新编译内核。

make modules_install 

6.载入模块,载入openvswitch的模块到内核中

/sbin/modprobe openvswitch 

7.启动

export PATH=$PATH:/usr/local/share/openvswitch/scripts
ovs-ctl start 

8.启动ovsdb-server服务

export PATH=$PATH:/usr/local/share/openvswitch/scripts
ovs-ctl --no-ovs-vswitchd start

9.启动ovs-vswitchd服务

export PATH=$PATH:/usr/local/share/openvswitch/scripts
ovs-ctl --no--ovsdb-server start

10.配置ovsdb的数据库

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

11. 配置ovsdb-server以使用上面创建的数据库,监听Unix域套接字

mkdir -p /usr/local/var/run/openvswitch
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 --log-file

12.使用ovs-vsctl初始化数据库

启动主Open vSwitch守护进程

ovs-vsctl --no-wait init
ovs-vswitchd --pidfile --detach --log-file

接下来就可以使用了,使用ovs-vsctl show命令,查看ovs的版本号。

Open vSwitch系列之二 安装指定版本ovs的更多相关文章

  1. Mac下通过brew安装指定版本的nodejs

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px "PingFang SC Semibold"; color: #2c303 ...

  2. Ubuntu通过apt-get安装指定版本和查询软件源有多少个版本

    一.通过apt-get安装指定版本 apt-get install <<package name>>=<<version>> 二.查询指定软件有多少个版 ...

  3. centos7下安装指定版本mysql5.7.23

    现在mysql版本已经到MySQL 8.0(GA)稳定版本了,所以需求是想简单又快速在centos7下安装指定版本例如MySQL 5.7(GA)版本有下面这种方法 首先需要到mysql官网这里下载对应 ...

  4. lumen或者laravel安装指定版本

    方法一 安装器安装:缺点不能安装指定版本 composer global require "laravel/lumen-installer" lumen new blog comp ...

  5. docker-machine为节点安装指定版本的docker-ce的思路

    对于指定版本的问题,翻遍官网文档和github上的issue,始终没有一个好的回答,而且该产品的开发人员不知道为什么总不正面提供方法,也许是为了推广新版本, 但是这样真的好吗?docker swarm ...

  6. Ubuntu通过apt-get安装指定版本和查询指定软件有多少个版本

    一.通过apt-get安装指定版本 apt-get install <<package name>>=<<version>> 二.查询指定软件有多少个版 ...

  7. CentOS 6.9/7通过yum安装指定版本的JDK/Maven

    说明:通过yum好处其实很多,环境变量不用配置,配置文件放在大家都熟悉的地方,通过rpm -ql xxx可以知道全部文件的地方等等. 一.安装JDK(Oracle JDK 1.8) # wget -- ...

  8. Angular5.0之 安装指定版本Angular CLI

    我们可能会发现按照网上的方式下载安装后,使用Angular CLI生成的项目并不是我们想要的Angular的版本,因为在我们没有指定安装版本的前提下,默认会下载最新的版本安装,然而不同的Angular ...

  9. 安装指定版本的cordova

    安装指定版本的cordova 刚接触cordova看到教程肯定是直接 npm install -g cordova 然后下载个集成的adt 以为万事大吉,开始hello world 玩玩没有想到最新的 ...

随机推荐

  1. rocketmq4.x快速入门指南

    以下采用的是apache rocketmq 4.2.0版本 相关文档如下 快速体验: http://blog.seoui.com/2018/07/24/rocketmqinstall/ rocketm ...

  2. Windows7安装 docker-compose的过程

    Docker在Windows7系统上安装成功后[详情见Windows7下docker的安装以及遇到的问题],要用到docker-compose相关命令,而docker-compose相关命令在dock ...

  3. Scala操作Hbase空指针异常java.lang.NullPointerException处理

    Hbase版本:Hortonworks Hbase 1.1.2 问题描述:使用Scala操作Hbase时,发生空指针异常(java.lang.RuntimeException: java.lang.N ...

  4. dig请求和回应中的参数解释

    ; <<>> DiG 9.9.5-3ubuntu0.6-Ubuntu <<>> baidu.com dig这个程序的版本号和要查询的域名 ;; glob ...

  5. 初识Haskell 二:基本操作符、类型Type、数据结构

    对Discrete Mathematics Using a Computer的第一章Introduction to Haskell进行总结.环境Windows 1. 在安装了ghci后,便可以进行Ha ...

  6. VS + QT 出现 LNK2001 无法解析的外部符号 QMetaObject 的问题

    在一个QT项目中新建一个带QObject定义的类后 (不是继承),可能会出现LNK2001 的错误,这是由于IDE没有自动为新建的类生成 moc_XXXX.cpp 文件导致的. 一种做法是手动生成mo ...

  7. Python百题计划

    一.基础篇 想要像类似执行shell脚本一样执行Python脚本,需要在py文件开头加上什么?KEY:#!/usr/bin/env python Python解释器在加载 .py 文件中的代码时,会对 ...

  8. 如何在springboot项目中进行XSS过滤

    简单介绍 XSS : 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意 ...

  9. Lazy 延迟加载

    问题:最近遇到一个项目遇到一个问题(很久的项目,现阶段主要维护),程序初始化的时候比较慢,最后查原因的时候发现是因为一个类的构造方法里面有些逻辑, 解决办法:希望在使用的时候再进行加载,最后想到了延迟 ...

  10. dp回文

    .dp回文子串 通常在dp数组中存放的是 从i到j是否是回文子串 1.动态规划 2.中心扩展法 #include<iostream> #include<algorithm> # ...