vxlan和macvlan操作
vxlan:
192.168.1.112 ———— 192.168.1.108 —— 192.168.1.109
192.168.1.112配置:
docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
192.168.1.108配置:
vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.1.112:8500 --cluster-advertise=ens33:2376
systemctl daemon-reload
systemctl restart docker.service
192.168.1.109配置:
vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.1.112:8500 --cluster-advertise=ens33:2376
systemctl daemon-reload
systemctl restart docker.service
访问192.168.1.112:8500在网页上就可以看到添加进来的两个主机了
192.168.1.108配置:
docker network create -d overlay ov_net1 ——创建一个vxlan的网卡 (它会同步到192.168.1.109上 默认网段为10.0.0.0/24网段)
docker run -itd --name bbox1 --network ov_net1 busybox
docker exec bbox1 ip r (会看到两块网卡eth0、eth1)
通讯时会走172.17.0.0/16这块网卡 给所有overly提供通讯的
192.168.1.109配置:
docker run -itd --name bbox2 --network ov_net1 busybox
docker exec bbox2 ping -c 2 www.baidu.com ——跨网段访问
ln -s /var/run/docker/netns /var/run/netns
ip netns
ip netns exec 1-9f33003ff1 brctl show ——查看一下匿名空间就能看到它们走的是vxlan网络
ip netns exec 1-9f33003ff1 ip -d l show vxlan0 ——查看它们用的是哪个VLAN
docker network connect ov_net1 bbox3 ——如何想让不同的容器通讯添加相同的网卡
macvlan:
ip link show ens33 ——查看ens33
ip link set ens33 promisc on ——开启混杂模式 (两台机器都开启)
ip link show ens33
docker network create -d macvlan --subnet 172.16.86.0/24 --gateway 172.16.86.1 -o parent=ens33 mac_net1
docker network ls
docker run -itd --name bbox2 --ip=172.16.86.11 --network mac_net1 busybox
modinfo 8021q
modprobe 8021q ——添加802.1q模块
配置子接口
cd /etc/sysconfig/network-scripts/
vi ifcfg-ens33
修改:
dhcp——manual
cp ifcfg-ens33 ifcfg-ens33.10
vi ifcfg-ens33.10
OTPROTO=none
NAME=ens33.10
DEVICE=ens33.10
IPADDR=192.168.23.11
PREFIX=24
NETWORK=192.168.23.0
ONBOOT=yes
VLAN=yes
cp ifcfg-ens33.10 ifcfg-ens33.20
vi ifcfg-ens33.20
OTPROTO=none
NAME=ens33.20
DEVICE=ens33.20
IPADDR=192.168.22.11
PREFIX=24
NETWORK=192.168.22.0
ONBOOT=yes
VLAN=yes
ifup ifcfg-ens33.10
ifup ifcfg-ens33.20
docker network create -d macvlan --subnet=172.16.10.0/24 --gateway=172.16.10.1 -o parent=ens33.10 mac_net10 ——创建macvlan网卡
docker network create -d macvlan --subnet=172.16.20.0/24 --gateway=172.16.20.1 -o parent=ens33.20 mac_net20
docker run -itd --name bbox10 --ip=172.16.10.10 --network mac_net10 busybox ——创建容器并且使用macvlan网卡
docker run -itd --name bbox20 --ip=172.16.20.10 --network mac_net20 busybox
ifconfig ens33.10 172.16.10.1 netmask 255.255.255.0
78 ifconfig ens33.20 172.16.20.1 netmask 255.255.255.0
79 iptables -t nat -A POSTROUTING -o ens33.10 -j MASQUERADE
80 iptables -t nat -A POSTROUTING -o ens33.20 -j MASQUERADE
81 iptables -A FORWARD -i ens33.10 -o ens33.20 -m state --state RELATE,ESTABLISHED -j ACCEPT
82 iptables -A FORWARD -i ens33.20 -o ens33.10 -m state --state RELATE,ESTABLISHED -j ACCEPT
83 iptables -A FORWARD -i ens33.10 -o ens33.20 -j ACCEPT
84 iptables -A FORWARD -i ens33.20 -o ens33.10 -j ACCEPT
85 docker exec -it bbox10 ping -c 2 172.16.20.10
vxlan和macvlan操作的更多相关文章
- kubernetes之flannel
kubernetes网络通信 容器间的通信 pod内的容器通信(lo) Pod之间的通信 pod IP <-----> pod IP Pod与Service之间的通信 podIP ...
- docker 网络实践
#docker 网络模式 环境 centos7. , Docker version -ce docker自带网络类型 bridge,host,none,container,overlay,macvla ...
- docker网络实践
docker网络.md #docker 网络模式 环境 centos7.4 , Docker version 17.12.0-ce docker自带网络类型 bridge,host,none,cont ...
- DOCKER学习_005:Flannel网络配置
一 简介 Flannel是一种基于overlay网络的跨主机容器网络解决方案,也就是将TCP数据包封装在另一种网络包里面进行路由转发和通信, Flannel是CoreOS开发,专门用于docker多机 ...
- [原] 利用 OVS 建立 VxLAN 虚拟网络实验
OVS 配置 VxLAN HOST A ------------------------------------------ | zh-veth0(10.1.1.1) VM A | | ---|--- ...
- 【Network】OVS VXLAN/GRE 实践
参考资料: OVS/VXLAN/GRE参考 ovs vxlan IP overray_百度搜索 OVS操作总结-Neutron-about云开发 OpenStack OVS GRE/VXLAN网络_z ...
- Neutron 理解 (3): Open vSwitch + GRE/VxLAN 组网 [Netruon Open vSwitch + GRE/VxLAN Virutal Network]
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- Neutron 理解(14):Neutron ML2 + Linux bridge + VxLAN 组网
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- 网络虚拟化中的 offload 技术:LSO/LRO、GSO/GRO、TSO/UFO、VXLAN
offload 现在,越来越多的网卡设备支持 offload 特性,来提升网络收/发性能.offload 是将本来该操作系统进行的一些数据包处理(如分片.重组等)放到网卡硬件中去做,降低系统 CPU ...
随机推荐
- mySql入门-(二)
最近刚刚开始学习Mysql,然而学习MySql必经的一个过程就是SQL语句,只有按照文档从头开始学习SQL语句.学习的过程是痛苦的,但是学完的成果是甘甜的. SQL 语法 所有的 SQL 语句都以下列 ...
- 73.移动端Web界面滚动性能优化 Passive event listeners
题,滚动时候不仅滚动了希望滚动的部分,整体的页面也跟随者上下滚动,整个页面非常卡顿. 这两个页面都用了touch事件 控制台打印如下警告: [Intervention] Unable to preve ...
- 【雅思】【绿宝书错词本】List13~24
List 13 ❤audacious a.大胆的:有冒险精神的:鲁莽的:厚颜无耻的 ❤tramp v.跋涉:踩踏 n.长途跋涉 ❤lexicographer n.词典编纂者 ❤manipulate v ...
- C语言编译器
我们分两部分介绍C语言的编译器,分别是桌面操作系统和嵌入式操作系统. 桌面操作系统 对于当前主流桌面操作系统而言,可使用 Visual C++.GCC 以及 LLVM Clang 这三大编译器. Vi ...
- RobotFramework+Eclipse的安装和配置(一)
最近想学robotframwork来做自动化,那立马就来开始上手 想动手,起码要先下载工具,工具及框架 工具介绍 Robotframework:一款自动化测试框架. Eclipse:一款编辑工具,可以 ...
- Linux正则表达式,grep总结,sed用法
原文: 1.sed 流编辑器,实现对文字的增删改替换查(过滤.取行),能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件 输入到屏幕,可以把只匹配到模式的内容输入到屏幕上.还可以对原文件 ...
- SQL SERVER-解析Extendevent文件数据
--解析xel数据 select SWITCHOFFSET(n.value('@timestamp','Datetime'),'+08:00') as EventTime, n.value('(dat ...
- SQL SERVER-CROSS APPLY
CROSS APPLY和 OUTER APPLY 区别详解 SQL Server 2005 新增 cross apply 和 outer apply 联接语句,增加这两个东东有啥作用呢? 我们知道有个 ...
- CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager
CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.搭建CM私有仓库 详情请参考我的笔记: http ...
- 关于MQ的几件小事:消息队列的用途、优缺点、技术选型
原文:https://www.cnblogs.com/jack1995/p/10908789.html 1.为什么使用消息队列? (1)解耦:可以在多个系统之间进行解耦,将原本通过网络之间的调用的方式 ...