Dcoker跨主机容器通信之overlay
同样是两台服务器:
准备工作:
设置容器的主机名
consul:kv类型的存储数据库(key:value)
docker01、02上:
vim /etc/docker/daemon.json
{
"hosts":["tcp://0.0.0.0:2376","unix:///var/run/docker.sock"], 这行改了要修改自己的docker配置文件
"cluster-store": "consul://10.0.0.11:8500",
"cluster-advertise": "10.0.0.11:2376" 另外一台写自己的ip即可
}
vim /etc/docker/daemon.json
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --containerd=/run/containerd/containerd.sock 这行改成这样,两台的都要改
systemctl daemon-reload
systemctl restart docker
docker01上:
docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap 这条命令在设置容器的主机名之后做 [root@docker1 centos_zabbix]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE 10.0.0.11:5000/kode v2 6914fda5fd44 4 hours ago 502MB kode v2 6914fda5fd44 4 hours ago 502MB 10.0.0.11:5000/centos6.9_nginx_ssh v3 92b1087df3f5 13 hours ago 431MB centos6.9_nginx_ssh v3 92b1087df3f5 13 hours ago 431MB centos6.9_nginx_ssh v2 6307e23ee16d 13 hours ago 431MB <none> <none> b94c822488f9 13 hours ago 431MB centos6.9_nginx_ssh v1 f01eeebf918a 13 hours ago 431MB <none> <none> 54167f1d659b 13 hours ago 431MB <none> <none> 71474e616504 13 hours ago 430MB centos6.9_ssh v2 03387f99f022 14 hours ago 307MB <none> <none> 82d0e9ce844b 14 hours ago 195MB kode v1 c0f486ac58fe 15 hours ago 536MB progrium/consul latest 09ea64205e55 4 years ago 69.4MB 这里有了 [root@docker1 centos_zabbix]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1016753ee64d progrium/consul "/bin/start -server …" 4 minutes ago Exited (255) 3 minutes ago 53/tcp, 53/udp, 8300-8302/tcp, 8400/tcp, 8301-8302/udp, 0.0.0.0:8500->8500/tcp consul
最后在页面上访问:

2)创建overlay网络
docker network create -d overlay --subnet 172.16.1.0/24 --gateway 172.16.1.254 ol1 这个网段不能和宿主机上相同,并且随便在一台上执行这个命令即可
查看容器的网络,有没有出现overlay
[root@docker1 shell]# docker network ls NETWORK ID NAME DRIVER SCOPE e480a4fe5f4b bridge bridge local 0a3cbfe2473f host host local 4e5ccdc657e1 macvlan_1 macvlan local aab77f02a0b1 none null local 8ae111afded7 ol1 overlay global
3)启动容器测试
一台上: docker run -it --network ol1 --name test01 centos6.9_ssh:v2 /bin/bash 另外一台上: docker run -it --network ol1 --name test02 centos6.9_ssh:v2 /bin/bash 之后可以通过test01和test02之间联通
真实原理:
每个容器有两块网卡,eth0实现容器间的通讯,eth1实现容器访问外网
Dcoker跨主机容器通信之overlay的更多相关文章
- centos7下安装docker(15.8docker跨主机容器通信总结)
性能:underlay网络的性能优于overlay.Overlay网络利用隧道技术,将数据包封装到UDP中进行传输,由于涉及数据包的封装和解封,存在额外的CPU和网络的开销,虽然几乎所有overlay ...
- Docker:跨主机容器间通信之overlay [十五]
一.配置overlay类型网络准备工作 1.在luoahong3主机上 docker run -d -p 8500:8500 -h consul --name consul progrium/cons ...
- docker 通过overlay 构建跨主机联网通信
初始化 swarm meiya@meiya:~$ docker swarm init 将当前节点作为manager节点加入swarm meiya@meiya:~$ docker swarm join- ...
- Docker跨主机容器之间的通信macvlan
找两台测试机: [root@docker1 centos_zabbix]# docker network ls NETWORK ID NAME DRIVER SCOPE 19ac9a55bedb br ...
- Weave实现跨主机容器互联
安装与启动 直接从github下载二进制文件安装. docker_host1(服务器1): 下载weave # sudo wget -O /usr/local/bin/weave https://ra ...
- 用flannel实现跨主机container通信
最近在看kubernetes,看到了网络部分,这部分是集群设计的难点,也是我比较感兴趣的部分.书上提到不同node的container之间通信主要使用flannel,openvswitch等技术,这些 ...
- Docker 网络管理及容器跨主机通信
1.网络模式 docker支持四种网络模式,使用--net选项指定: host,--net=host,如果指定此模式,容器将不会获得一个独立的network namespace,而是和宿主机共用一个. ...
- Docker容器跨主机通信之:OVS+GRE
一.概述 由于docker自身还未支持跨主机容器通信,需要借助docker网络开源解决方案 OVS OpenVSwich即开放式虚拟交换机实现,简称OVS,OVS在云计算领域应用广泛,值得我们去学习使 ...
- docker容器跨主机网络overlay
前提:已部署好docker服务服务预计部署情况如下10.0.0.134 Consul服务10.0.0.135 host1 主机名mcw510.0.0.134 host2 主机名mcw6host1与 ...
随机推荐
- excel 导出长数据 变成科学计数 解决办法
加 “\t”
- 初学C#之运算符和关系表达式
㈠运算符和关系表达式 一元运算符++.-- 前加和后加区别,事例++在后如下: ; ; //结果age=19 说明age++在表达式中age的值也+1.结果sum=8,原因age++,++在后用age ...
- 基于SpringBoot框架企业级应用系统开发全面实战
Eclipse 安装spring-tool-suite教程,并创建一个新的springboot项目 使用SpringBoot构建项目,加载SSM整合的applicationContext.xml的注解 ...
- Constant expression required
switch 语句编译报错Constant expression required 问题:case语句后面必须是常量,使用final修饰 public static final int NotifyT ...
- HTTP Error 502.5 - Process Failure 解决方案
.netcore 2.1.4的程序部署到IIS后报以下错误: ======================================================= HTTP Error 50 ...
- Tire树(字典树)
from:https://www.cnblogs.com/justinh/p/7716421.html Trie,又经常叫前缀树,字典树等等.它有很多变种,如后缀树,Radix Tree/Trie,P ...
- IntelliJ IDEA 2019.2.2在16GB内存下的性能调优
开发工具 IntelliJ IDEA 2019.2.2 x64 idea64.exe.vmoptions -m -m -XX:ReservedCodeCacheSize=m -XX:+UseConcM ...
- JSONObject和JSONArray的基本使用
一.JSONObject和JSONArray的数据表示形式 JSONObject的数据是用 { } 来表示的, 例如: { "name" : "佩奇", ...
- python常见内置函数总结
简单的内置函数 len 求长度 min 求最小值 max 求最大值 sorted 排序 reversed 反向 sum 求和 进制转换 bin 转为二进制 oct 转为八 ...
- Spring IOC 和AOP
Spring是什么? Spring是一个轻量级的IoC和AOP容器框架. IOC:IOC就是控制反转,控制反转指的是把创建对象和管理对象之间的依赖关系交给了IOC容器来管理.以前new对象由程序员来控 ...