docker高级应用之多台主机网络互联

简介:

目前docker主要应用于单机环境,使用网桥模式,但如果想把多台主机网络互相,让多台主机内部的container互相通信,就得使用其他的软件来帮忙,可以使用Weave、Kubernetes、Flannel、SocketPlane或者openvswitch等,我这里就使用openvswitch来介绍docker多台主机网络互通。

先看一个使用openvswitch连接的架构图,连接的方式是vxlan

wKiom1TRwJHyZcW8AAOhKoJTpm8952.jpg

说明:

这里有2台主机,分别是NODEA与NODEB,系统是centos7,内核是3.18(默认centos7内核是3.10,但想使用vxlan,所以得升级,参考http://dl528888.blog.51cto.com/2382721/1609850)

docker是1.3.2版本,存储引擎是devicemapper。

每台主机里都有2个网桥ovs1与ovs2,ovs1是管理网络,连接内网网卡em1,ovs2是数据网络,docker测试机都连接这个ovs2,并且container创建的时候网络都是none,使用pipework指定固定ip。

然后2台主机使用vxlan连接网络。

重要:

我个人认为使用这个模式并且指定固定ip,适用于的环境主要是给研发或者个人的测试模式,如果是集群环境,没必要指定固定ip(我这里的集群就没有使用固定ip,使用动态ip,效果很好,后续给大家介绍集群)。

下面是部署方法

环境

wKioL1TRxjDiZjQxAADU2BPro_o923.jpg

一、安装openvswitch

我的版本是最新的2.3.1

1、安装基础环境

1
2
3
yum  install  gcc  make  python-devel openssl-devel kernel-devel graphviz \
    kernel-debug-devel autoconf automake rpm-build redhat-rpm-config \
    libtool

2、下载最新的包

1
wget http: //openvswitch .org /releases/openvswitch-2 .3.1. tar .gz

3、解压与打包

1
2
3
4
5
tar  zxvf openvswitch-2.3.1. tar .gz
mkdir  -p ~ /rpmbuild/SOURCES
cp  openvswitch-2.3.1. tar .gz ~ /rpmbuild/SOURCES/
sed  's/openvswitch-kmod, //g'  openvswitch-2.3.1 /rhel/openvswitch .spec > openvswitch-2.3.1 /rhel/openvswitch_no_kmod .spec





 本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/dl528888/1611491 ,如需转载请自行联系原作者
相关文章
|
Kubernetes Linux Docker
使用阿里云vpc 路由表实现Docker容器跨主机通讯。
使用阿里云vpc 路由表实现Docker容器跨主机通讯。
|
3月前
|
Linux 虚拟化 网络虚拟化
网络基础-虚拟化工具-网桥
网络基础-虚拟化工具-网桥
52 0
|
网络架构 Docker 容器
Docker的网络模式和如何跨主机通信
Docker有四种网络模式:Bridge、Host、Container、None,一般常用的是前面两种,默认的是第一种,不安全的是第二种,以下介绍一下四种网络模式,并重点介绍一下如何配置自己的跨主机通信网络。
3742 0
|
6月前
|
Cloud Native Linux 虚拟化
【云原生】Docker跨主机网络Overlay与Macvlan的区别
【云原生】Docker跨主机网络Overlay与Macvlan的区别
100 0
|
8月前
|
Linux 网络安全 网络虚拟化
Docker跨主机网络
Docker跨主机网络
112 0
|
9月前
|
弹性计算 运维 Java
虚机和容器通信方案
随着公司的发展;势必要跟随时代的脚步向微服务、容器化方向转型;然而转型过程中势必得遵循服务的迭代替换的方式(一刀切带来的风险太大了);从而衍生出来虚机和容器中的服务进行注册发现通信的问题。
|
网络安全 Docker 容器
容器docker不同主机之间互联-macvlan
容器docker不同主机之间互联-macvlan
217 0
容器docker不同主机之间互联-macvlan
|
消息中间件 关系型数据库 MySQL
Docker网络互联原理和比较不同模式以及自定义网络的使用总结
Docker网络互联原理和比较不同模式以及自定义网络的使用总结
Docker网络互联原理和比较不同模式以及自定义网络的使用总结
|
存储 数据库 Docker
Docker跨宿主机通讯macvlan、overlay详解(十一)
2.docker跨宿主机通讯 2.1.macvlan 创建网络语法格式 docker network create --driver 网络类型 --subnet 网段 --gateway 网关 -o parent=通讯网卡 网络名 参数 docker network 创建网络的关键字,必须有 create 创建一个网络 ls 列出创建的所有网络 rm 删除一个网络 connect 连接一个网络 –dirver 指定要创建的网络类型 –subnet 指定网段 – gateway 指定网关 -o parent 在哪块网卡上虚拟出多个网卡
690 0
Docker跨宿主机通讯macvlan、overlay详解(十一)
|
测试技术 Shell 数据库