OVS + kernel datapath 的安装
***kernel datapath的OVS编译安装
- 下载源代码
$ git clone https://github.com/openvswitch/ovs.git - 准备工具:生成configure文件
- GNU make
$ make --version - 一个C语言编译器,GCC 4.6以上,Clang 3.4以上
$ gcc --version - libssl
$ apt-get isntall libssl1.0.0 - libcap-ng0
$ apt-get install libcap-ng0 - libtool
$ apt-get install libtool - autoconf
$ apt-get install autoconf - 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
) - 注意ovs 内核模块的版本与Linux内核版本号
2.7版本的OVS能安装在Linux 3.10~4.9的内核上
- GNU make
- $ ./boot.sh
- 配置
$ ./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中的内存管理库 - 编译OVS
$ make - 安装OVS用户态程序
$ make install - 安装内核模块(把相关*.ko文件安装至/lib/modules/$(uname -r)/extra/中
$ make modules_install - 挂载安装的内核模块
$ /sbin/modprobe openvswitch - 配置数据库
$ mkdir -p /usr/local/etc/openvswitch
$ ovsdb-tool create /usr/local/etc/openvswitch/conf.db vswitchd/vswitch.ovsschema - 启动数据库程序
$ 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 - 初始化ovsdb数据库
$ ovs-vsctl --no-wait init - 启动vswitchd守护进程
$ ovs-vswitchd --pidfile --detach --log-file - 完成,可以测试了
$ ovs-vsctl add-br br0
$ ovs-vsctl show
OVS + kernel datapath 的安装的更多相关文章
- ovs + kernel datapath 的分片与重组流程
非VXLAN的收发包调用栈 netdev_frame_hook() netdev_port_receive() ovs_vport_receive() ...
- OVS+DPDK Datapath 包分类技术
本文主体内容译于[DPDK社区文档],但并没有逐字翻译,在原文的基础上进行了一些调整,增加了对TSS分类器的详细阐述. 1. 概览 本文描述了OVS+DPDK中的包分类器(datapath class ...
- linux kernel 源码安装
有时我们在安装系统后,发现没有安装当前系统的内核源码在/usr/src/kernels目录下,其实我们是少安装了一个rpm包: 当你配置好yum源后: yum install kernel-devel ...
- jupyter notebook使用时路径问题和kernel error,安装opencv
修改路径: 在C:\Users\Administrator\ .jupyter 目录下面只有一个“migrated”文件. 打开命令窗口(运行->cmd),进入python的Script目录下输 ...
- OpenVSwitch 硬件加速浅谈
https://zhuanlan.zhihu.com/p/57870521 本文首发SDNLAB. 现代的虚拟化技术使得开发和部署高级网络服务变得更加简单方便.基于虚拟化的网络服务,具有多样性,低成本 ...
- Open vSwitch FAQ (一)
Basic Configuration Q: How do I configure a port as an access port? A: Add "tag=VLAN" to y ...
- openvswith Frequently Asked Questions
Open vSwitch <http://openvswitch.org> 参考地址:http://git.openvswitch.org/cgi-bin/gitweb.cgi?p=ope ...
- 在 Ubuntu 12.04 上通过源码安装 Open vSwitch (OVS)
安装 Ubuntu 12.04, 而且更新系统 apt-getupdate; apt-getupgrade; 安装所需的package apt-get install automake autocon ...
- 安装OpenvSwitch (ovs)
简介 搭建SDN环境少不了SDN交换机,SDN交换机跟普通交换机最大的区别就是将普通交换机的数据平面和控制平面相分离,SDN交换机只负责数据的转发,而控制指令则由更上一级的控制器下发. Open vS ...
随机推荐
- 记因PHP的内存溢出导致的事故之解决
如果对您有用记得关注,更多干货. 今天上午刚到公司,就有同事在公司群里反映某个计划任务出现问题了.我就怀着刨根问底的心,去查看了log.发现挺有意思的一个问题,PHP内存溢出导致脚本执行失败.那就一起 ...
- 【zzulioj 2135】 这里是天堂!
先考虑当前情况可行与否: 如果当a>n或者b>m时是绝对不行的,概率为0: 当a+b<m+n时,k一定等于a+b,否则概率为0: 当a+b==m+n时,k>=a+n,否则概率为 ...
- 想询问一个职业规划的问题,前端开发 or nodejs?
先说说个人情况,目前个人定位于初中级前端吧,工作近两年,目前前端开发和nodejs都有一定的了解,水平感觉可以搭一些小型的网站.作为前端开发,目前掌握的技术是javascript,平时更多的是用jqu ...
- springmvc学习笔记(简介及使用)
springmvc学习笔记(简介及使用) 工作之余, 回顾了一下springmvc的相关内容, 这次也为后面复习什么的做个标记, 也希望能与大家交流学习, 通过回帖留言等方式表达自己的观点或学习心得. ...
- 开通阿里云 CDN
CDN,内容分发网络,主要功能是在不同的地点缓存内容,通过负载均衡技术,将用户的请求定向到最合适的缓存服务器上去获取内容,从而加快文件加载速度. 阿里云提供了按量计费的CDN,开启十分方便,于是我在自 ...
- Python数据处理——numpy_3
通过前面两次的学习,基本上对numpy有了一定的认识,所以,接下来进一步对numpy学习.同时,最后以一个有趣的例子加深对numpy的理解. import numpy as np xarr = np. ...
- C#代码将html样式文件转为Word文档
首先有个这样的需求,将以下网页内容下载为Word文件. html代码: <div class="modal-body"> <div style=" ...
- 八种创建等高列布局【出自w3c】
高度相等列在Web页面设计中永远是一个网页设计师的需求.如果所有列都有相同的背景色,高度相等还是不相等都无关紧要,因为你只要在这些列的父元素中设置一个背景色就可以了.但是,如果一个或多个列需要单独设置 ...
- 初学T4模板
1.T4模板语法 <#@ template language="C#v3.5" hostSpecific="true" debug="true& ...
- PHP 学习笔记(2)
<?php$foo = "0"; // $foo 是字符串 (ASCII 48)$foo += 2; // $foo 现在是一个整数 (2)$foo = $foo + ...