docker-ovs遇到的问题以及解决办法
node1:192.168.1.50 docker 127.17.1.1
node2:192.168.1.52 docker 127.17.2.1
1.1
关闭selinux
setenforce 0(立即生效)
vi /etc/selinux/config ,(重启生效)
#SELINUX=enforcing
SELINUX=disabled
1.2
关闭firewall
centos7默认开启了firewall,需关闭。
systemctl stop firewalld(立即生效)
systemctl disable firewalld(重启生效)
2
安装相关软件包
yum install docker
service docker start
chkconfig docker on
yum install net-tools
yum install bridge-utils
编译安装ovs
node01和node02 安装openvswitch
最新的为openvswitch-2.4.0.tar.gz,
3.1源码安装。
root用户执行:
yum -y install wget openssl-devel kernel-devel
yum groupinstall “Development Tools”
adduser ovswitch
ovswitch用户执行:
su – ovswitch
wget http://openvswitch.org/releases/openvswitch-2.4.0.tar.gz
tar -zxvpf openvswitch-2.4.0.tar.gz
mkdir -p ~/rpmbuild/SOURCES
sed ‘s/openvswitch-kmod, //g’ openvswitch-2.4.0/rhel/openvswitch.spec > openvswitch-2.4.0/rhel/openvswitch_no_kmod.spec
cp openvswitch-2.4.0.tar.gz rpmbuild/SOURCES/
rpmbuild -bb –without check ~/openvswitch-2.4.0/rhel/openvswitch_no_kmod.spec
exit
root用户执行:
yum localinstall /home/ovswitch/rpmbuild/RPMS/x86_64/openvswitch-2.4.0-1.x86_64.rpm
或者下载安装包
http://pan.baidu.com/s/1c0x7Wcw
rpm -ivh openvswitch-2.4.0-1.x86_64.rpm
3.3启动openvswitch
systemctl start openvswitch.service (立即生效)
chkconfig openvswitch on (重启生效)
查看状态:
systemctl status openvswitch.service -l
===========配置篇======
4.node01和node02 配置OVS Bridge及GRE
规划:
node01:容器内地址段172.17.1.0/24,新网桥:kbr0,GRE:gre0
node02:容器内地址段172.17.2.0/24,新网桥:kbr0,GRE:gre0
4.1 node01:部署
开启ip转发:cat /proc/sys/net/ipv4/ip_forward,显示为1,表示开启。
ovs-vsctl add-br obr0
ovs-vsctl add-port obr0 gre0 -- set Interface gre0 type=gre options:remote_ip=192.168.1.52 #node1上执行
ovs-vsctl add-port obr0 gre0 -- set Interface gre0 type=gre options:remote_ip=192.168.1.50 #node2上执行
service docker stop
brctl addbr kbr0
brctl addif kbr0 obr0
ip link set dev docker0 down
ip link del dev docker0
vi /etc/sysconfig/network-scripts/ifcfg-kbr0
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.17.1.1 #node1上配置
IPADDR=172.17.2.1 #node2上配置
NETMASK=255.255.255.0
GATEWAY=172.17.1.0 #node1上配置
GATEWAY=172.17.2.0 #node2上配置
USERCTL=no
TYPE=Bridge
IPV6INIT=no
vi /etc/sysconfig/network-scripts/route-ens192 #(ip -a 查看网卡)这里route-ens192是和 该目录下的ifcfg-ens192对应的
172.17.2.0/24 via 192.168.12.196 dev ens192 #这里ens192是 ip a命令看到的本地网卡不同的机器可能不一样
修改docker配置文件,添加-b参数
vi /etc/sysconfig/docker
OPTIONS='--selinux-enabled -b=kbr0' #docker1.9貌似不修改不起作用
reboot
说一下中间会遇到的坑
1.ip转发
Linux系统缺省并没有打开IP转发功能,要确认IP转发功能的状态,可以查看/proc文件系统,使用下面命令:
cat /proc/sys/net/ipv4/ip_forward
如果上述文件中的值为0,说明禁止进行IP转发;如果是1,则说明IP转发功能已经打开。
要想打开IP转发功能,可以直接修改上述文件:
echo 1 > /proc/sys/net/ipv4/ip_forward
把文件的内容由0修改为1。禁用IP转发则把1改为0。
上面的命令并没有保存对IP转发配置的更改,下次系统启动时仍会使用原来的值,要想永久修改IP转发,需要修改/etc/sysctl.conf文件,修改下面一行的值:
net.ipv4.ip_forward = 1
修改后可以重启系统来使修改生效,也可以执行下面的命令来使修改生效:
sysctl -p /etc/sysctl.conf
进行了上面的配置后,IP转发功能就永久使能了
2.openvswitch无法打开提示 XX.db找不到
/usr/share/openvswitch/scripts/ovs-ctl start
3.docker网卡修改,针对centos7:vi /etc/sysconfig/docker
OPTIONS='--selinux-enabled -b=kbr0'
转载于:https://blog.51cto.com/3892977/1720629
docker-ovs遇到的问题以及解决办法相关推荐
- Docker挂载主机目录Docker访问出现Permission denied的解决办法
问题: docker挂载主机目录Docker访问出现Permission denied terminate called after throwing an instance of 'boost::f ...
- Docker容器镜像删除不掉解决办法?
使用Docker的时候,发现使用docker rmi 镜像ID 删除不了镜像,该如何解决呢? 目录 一.问题复现 (1)首先安装好docker环境 (2)拉取helloworld镜像 (3)执行删除 ...
- docker进入容器出现bash-4.2#解决办法
docker进入容器显示bash-4.2#如下: [root@VM-4-15-centos shopmall]# docker exec -it -u root 1f654abf60ac bash b ...
- 群辉Docker 下载仓库镜像提示失败 解决办法
使用群晖的Docker套件过程中,经常遇到映像下载失败及下载速度只有几KB到几十KB的情况.猜测是因为国内外网络环境问题,所以使用阿里云的加速器加速Docker映像的下载就可以解决这个问题 如 ...
- nvidia docker容器不支持中文的解决办法_用docker搭建深度学习实验环境
tensorflow和pytorch官方都维护了不同版本的docker镜像.借助docker我们可以方便的搭建起深度学习实验环境. 但是想要在同一个容器内同时拥有tensorflow.pytorch. ...
- DOCKER OVERLAY2占用大量磁盘空间解决办法
1.首先找到OVERLAY2目录 cd /var/lib/docker/overlay2 2.查看文件的大小 du -h --max-depth=1 3.查看占用空间的PID,以及对应的容器名称 do ...
- docker下载慢,卡顿解决办法——免费安装人人都有的docker加速器
点我获取阿里云免费镜像加速器 先确认一下docker版本>1.10.0 docker -v 人人都有免费哦~ 进入对应目录查看,我是root用户且没有 daemon.json文件 那就创建一个 ...
- docker 启动容器报错及解决办法
docker 启动容器报错:Error response from daemon: oci runtime error: container_linux.go:247: starting contai ...
- Docker占满磁盘空间的解决办法
通过命令可以观察到/var/lib/docker目录很大,我的主机只有20G,这个目录占了18G:原因是devicemapper的空间设的太大,通过docker info打印的Data Space T ...
- win10 docker desktop无法拉取镜像解决办法
最新文章
- 2.2栈的另一个应用:括号匹配
- 搜索4--noi6264:走出迷宫
- Boost:传输文件的测试程序
- SAP Spartacus 如何根据 page layout 获得对应支持的 slots
- binding.filter(filter) will trigger OData request to backend
- 计算机系统基础:虚拟存储管理知识笔记
- 驱动级的自动按键_Aqara全自动智能推拉锁D100,体验全自动开门的便捷
- oracle flash_cache,11gR2新特性之二 - Flash Cache 的SSD支持
- poj1423---求一个大数的位数方法,我猜网站上统计输入字符少于多少位的那个算法...
- 导入 SQL 时出现 Invalid default value for ‘create_time‘ 报错解决方法
- 微型计算机控制技术第二版第六章课后答案,微型计算机控制技术第6章习题答案...
- 《ShowYou数组代码》第38题:对数组元素进行排序
- layui 表格时间显示问题
- 科幻3D场景必备要素—地球篇
- 【nowcoder 110246】Dima and Salad
- Common Prefixes (思维)
- redis下载安装后电脑任务管理器中没有redis的显示
- 数据挖掘经典书籍推荐
- AMBA之AHB总线
- 电传输之POE供电的介绍