***kernel datapath的OVS编译安装

  1. 下载源代码

    $ git clone https://github.com/openvswitch/ovs.git
  2. 准备工具:生成configure文件
    1. GNU make

      $ make --version
    2. 一个C语言编译器,GCC 4.6以上,Clang 3.4以上

      $ gcc --version
    3. libssl

      $ apt-get isntall libssl1.0.0
    4. libcap-ng0

      $ apt-get install libcap-ng0
    5. libtool

      $ apt-get install libtool
    6. autoconf

      $ apt-get install autoconf
    7. Python 2.7,并且确保six库可用

      $ python

      ...(
         看默认的python是否是2.7版本


      )

      $ pydoc modules | grep six

      ...(
         如果没有叫six的python module,请安装python-pip

         $ apt install python-pip

         然后如下安装six

         $ pip install six


      )
    8. 注意ovs 内核模块的版本与Linux内核版本号

      2.7版本的OVS能安装在Linux 3.10~4.9的内核上
  3. $ ./boot.sh
  4. 配置

    $ ./configure \

    --with-linux=/lib/modules/$(uname -r)/build 编译内核模块,指定当前内核地址

    [CFLAGS="-g -o2"]      编译用户空间的代码时的编译参数,-g带debug,-O2指定编译器优化级别

    [EXTRA_CFLAGS="-Wno-error=data-time"]   编译内核模块时的编译参数

    [--enable-Werror]      编译其警告作为错误处理

    [LIBS=-ljemalloc]     使用jemalloc代表libc中的内存管理库
  5. 编译OVS

    $ make
  6. 安装OVS用户态程序

    $ make install
  7. 安装内核模块(把相关*.ko文件安装至/lib/modules/$(uname -r)/extra/中

    $ make modules_install
  8. 挂载安装的内核模块

    $ /sbin/modprobe openvswitch
  9. 配置数据库

    $ mkdir -p /usr/local/etc/openvswitch

    $  ovsdb-tool create /usr/local/etc/openvswitch/conf.db vswitchd/vswitch.ovsschema
  10. 启动数据库程序

    $ 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
  11. 初始化ovsdb数据库

    $ ovs-vsctl --no-wait init
  12. 启动vswitchd守护进程

    $ ovs-vswitchd --pidfile --detach --log-file
  13. 完成,可以测试了

    $ ovs-vsctl add-br br0

    $ ovs-vsctl show
 
默认的LOG位于
      /usr/local/var/log/openvswitch
 
 

OVS + kernel datapath 的安装的更多相关文章

  1. ovs + kernel datapath 的分片与重组流程

    非VXLAN的收发包调用栈 netdev_frame_hook()      netdev_port_receive()           ovs_vport_receive()           ...

  2. OVS+DPDK Datapath 包分类技术

    本文主体内容译于[DPDK社区文档],但并没有逐字翻译,在原文的基础上进行了一些调整,增加了对TSS分类器的详细阐述. 1. 概览 本文描述了OVS+DPDK中的包分类器(datapath class ...

  3. linux kernel 源码安装

    有时我们在安装系统后,发现没有安装当前系统的内核源码在/usr/src/kernels目录下,其实我们是少安装了一个rpm包: 当你配置好yum源后: yum install kernel-devel ...

  4. jupyter notebook使用时路径问题和kernel error,安装opencv

    修改路径: 在C:\Users\Administrator\ .jupyter 目录下面只有一个“migrated”文件. 打开命令窗口(运行->cmd),进入python的Script目录下输 ...

  5. OpenVSwitch 硬件加速浅谈

    https://zhuanlan.zhihu.com/p/57870521 本文首发SDNLAB. 现代的虚拟化技术使得开发和部署高级网络服务变得更加简单方便.基于虚拟化的网络服务,具有多样性,低成本 ...

  6. Open vSwitch FAQ (一)

    Basic Configuration Q: How do I configure a port as an access port? A: Add "tag=VLAN" to y ...

  7. openvswith Frequently Asked Questions

    Open vSwitch <http://openvswitch.org> 参考地址:http://git.openvswitch.org/cgi-bin/gitweb.cgi?p=ope ...

  8. 在 Ubuntu 12.04 上通过源码安装 Open vSwitch (OVS)

    安装 Ubuntu 12.04, 而且更新系统 apt-getupdate; apt-getupgrade; 安装所需的package apt-get install automake autocon ...

  9. 安装OpenvSwitch (ovs)

    简介 搭建SDN环境少不了SDN交换机,SDN交换机跟普通交换机最大的区别就是将普通交换机的数据平面和控制平面相分离,SDN交换机只负责数据的转发,而控制指令则由更上一级的控制器下发. Open vS ...

随机推荐

  1. 获取camera截屏图片

    Camera camera; SpriteRenderer sprRender; Texture2D t2d = New Texture2D(1300, 760, TextureFormat.RGB2 ...

  2. OpenCV 玩九宫格数独(二):knn 数字识别

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:刘潇龙 前言 首先需要说明,这里所说的数字识别不是手写数字识别! 但凡对机器学习有所了解的人,相信看到数 ...

  3. Java使用POI为Excel打水印,调整列宽并设置Excel只读(用户不可编辑)

    本文介绍在Java语言环境下,使用POI为Excel打水印的解决方案,具体的代码编写以及相关的注意事项. 需求描述: 要求通过系统下载的Excel都带上公司的水印,列宽调整为合适的宽度,并且设置为不可 ...

  4. 针对Mac的DuckHunter攻击演示

    0x00 HID 攻击 HID是Human Interface Device的缩写,也就是人机交互设备,说通俗一点,HID设备一般指的是键盘.鼠标等等这一类用于为计算机提供数据输入的设备. DuckH ...

  5. unity游戏设计之背包系统

    这次任务是模仿上图的样子,制作一个类似的背包系统. 上面的链接为:http://www.tasharen.com/ngui/exampleX.html 我们的目标是: 1.实现背包系统的UI界面 2. ...

  6. 2017Unity开发者大会备受关注的原因有哪些?

    Unite大会是由Unity举办的全球开发者大会,至今已有10年的历史.从最开始Unity开发者大会仅500人,到现在Unity大会已经增长到5000人,10倍的参与人数,Unity开发者大会仅仅用了 ...

  7. Bootstrap之折叠(Collapse)插件

    学习资料:Bootstrap折叠(Collapse)插件 大家可能常见的都是类似: 这种的效果,小颖今天要给大家分享一个不一样的效果嘻嘻.铛铛铛铛........................... ...

  8. javascript函数作用域及this指向详解

    一.先说一个简单的概念--变量提升: 通过function+函数名的方式,声明的函数,可以在代码中的任何位置调用: 通过var定义变量的方式,声明的函数,则必须在声明之后进行调用,原因就是在变量定义之 ...

  9. 非学习型单层感知机的java实现(日志三)

    要求如下: 所以当神经元输出函数选择在硬极函数的时候,如果想分成上面的四个类型,则必须要2个神经元,其实至于所有的分类问题,n个神经元则可以分成2的n次方类型. 又前一节所证明出来的关系有: 从而算出 ...

  10. MySQL自增长的bug?

    实验环境: mysql> status--------------mysql Ver 14.14 Distrib 5.7.14, for Linux (x86_64) using EditLin ...