OVS + kernel datapath 的安装

***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

时间: 2024-12-16 05:05:42

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

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

非VXLAN的收发包调用栈 netdev_frame_hook() netdev_port_receive() ovs_vport_receive() ovs_dp_process_packet() (在查表失败后,对于带gso标记的大包,会分片进行upcall) ovs_dp_upcall() ovs_execute_actions() output: do_output() (通常情况下OVS_CB(skb)->mru为0,直接发送) ovs_vport_send() (在OVS_CB(sk

OVS+DPDK Datapath 包分类技术

// editing... please wait for a java time // editing... please wait for a java time // editing... please wait for a java time // editing... please wait for a java time // editing... please wait for a java time // editing... please wait for a java tim

Open vSwitch FAQ (一)

Basic Configuration Q: How do I configure a port as an access port? A: Add "tag=VLAN" to your "ovs-vsctl add-port" command. For example, the following commands configure br0 with eth0 as a trunk port (the default) and tap0 as an access

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

安装 Ubuntu 12.04, 并且更新系统 apt-getupdate; apt-getupgrade; 安装所需的package apt-get install automake autoconf gcc uml-utilities libtool build-essential pkg-config linux-headers-`uname –r` 下载Open vSwich的源码包 wget http://openvswitch.org/releases/openvswitch-1.1

安装OpenvSwitch (ovs)

简介 搭建SDN环境少不了SDN交换机,SDN交换机跟普通交换机最大的区别就是将普通交换机的数据平面和控制平面相分离,SDN交换机只负责数据的转发,而控制指令则由更上一级的控制器下发. Open vSwitch(下面简称OVS)是一个高质量的.多层虚拟交换机.OVS遵循开源Apache2.0许可,通过可编程扩展,OVS可以实现大规模网络的自动化(配置.管理.维护),同时支持现有标准管理接口和协议(比如NetFlow.sFlow.SPAN.RSPAN.CLI.LACP.802.1ag等).此外OV

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

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

Virtual:VirtualBox 安装Centos7后 安装增强功能出现kernel headers not found for target kernel 错误的解决办法

VirtualBox 安装Centos7后 安装增强功能出现kernel headers not found for target kernel 错误的解决办法 提示:kernel headers not found for target kernel 原因已经表明出来了,说明kernel headers 没有安装; 直接贴出解决方案: 1.update kernel yum update kernel -y 2.Install the kernel-headers, kernel-devel 

【Network】OVS基础知识

本文主要介绍Open VSwitch - 虚拟交换机的概述内容,阅读本文可以对OVS(Open VSwitch)有一个大致的了解.那么本文主要回答了这样几个问题: 1. 虚拟交换机是什么,干什么? 2. 虚拟网络和OVS 3. OVS的组件有哪些? 4. 使用OVS创建一个网络拓扑 5. 示例 一. Open VSwitch是什么 OVS是一个高质量的,多层虚拟交换机(网络分层的层),其目的是让大规模网络自动化可以通过编程扩展,同时仍然支持标准的管理接口和协议:NetFlow. SFlow ..

在Dell XPS 13安装WIN10和ubuntu双系统

新入了Dell的XPS 13超级本,之所以买这个本子,就是看中它轻便且续航持久.这款本子也是为数不多的可以和苹果的13'' mac book air一较高下的本子.在重量上,占地面积和综合性价比上,还略胜一筹. 我买的本出场安装win10,还附赠1年office 2016 licence.不过鉴于本人的工作性质,以及DIY的偏好,自然微软的系统是不够折腾的.没思考就着手安装Linux系统了. #压缩WIN10空间 XPS13出场装得是正版WIN10(哥以前屌丝,用不起正版的WINDOWS,现在花