consul:

192.168.111.111:

docker run -d -p 8500:8500 --name=consul progrium/consul -server -bootstrap

docker run -d -p 4000:4000 swarm manage -H :4000 --replication --advertise 192.168.111.111:4000 consul://192.168.111.111:8500

192.168.111.112/192.168.111.113:

docker run -d swarm join --advertise=192.168.111.112:2375 consul://192.168.111.111:8500

===========================================================================================================

[root@mhc1 ~]# docker run --rm swarm list consul://192.168.111.111:8500
time="2017-10-16T14:01:06Z" level=info msg="Initializing discovery without TLS"
192.168.111.112:2375
192.168.111.113:2375

[root@mhc1 ~]# docker -H 192.168.111.111:4000 info
Containers: 18
Running: 2
Paused: 0
Stopped: 16
Images: 12
Server Version: swarm/1.2.8
Role: primary
Strategy: spread
Filters: health, port, containerslots, dependency, affinity, constraint, whitelist
Nodes: 2
mhc2: 192.168.111.112:2375
└ ID: 4XN4:R7WF:EEFN:CG66:XAJ2:77VL:YHQJ:SXPJ:H37O:I2JD:BI72:ZOQS|192.168.111.112:2375
└ Status: Healthy
└ Containers: 1 (1 Running, 0 Paused, 0 Stopped)
└ Reserved CPUs: 0 / 1
└ Reserved Memory: 0 B / 1.87 GiB
└ Labels: kernelversion=3.10.0-693.2.2.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), ostype=linux, storagedriver=devicemapper
└ UpdatedAt: 2017-10-16T14:04:27Z
└ ServerVersion: 1.12.6
mhc3: 192.168.111.113:2375
└ ID: TJJN:4OMZ:XFCR:PTC3:F7PM:ZHB5:ZPKA:73C6:UOQZ:CIAK:NGG4:ZASY|192.168.111.113:2375
└ Status: Healthy
└ Containers: 17 (1 Running, 0 Paused, 16 Stopped)
└ Reserved CPUs: 0 / 1
└ Reserved Memory: 0 B / 1.87 GiB
└ Labels: kernelversion=3.10.0-693.2.2.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), ostype=linux, storagedriver=devicemapper
└ UpdatedAt: 2017-10-16T14:04:33Z
└ ServerVersion: 1.12.6
Plugins:
Volume:
Network:
Swarm:
NodeID:
Is Manager: false
Node Address:
Security Options:
Kernel Version: 3.10.0-514.el7.x86_64
Operating System: linux
Architecture: amd64
Number of Docker Hooks: 2
CPUs: 2
Total Memory: 3.739 GiB
Name: c645a53f0869
Docker Root Dir:
Debug Mode (client): false
Debug Mode (server): false
WARNING: No kernel memory limit support
Registries:

--------------------------------------------------------------------------------

[root@mhc1 ~]# cat /tmp/cluster_info
192.168.111.112:2375
192.168.111.113:2375

docker run -d -p 12375:2375 -v /tmp/cluster_info:/tmp/cluster_info swarm manage --strategy "spread" file:///tmp/cluster_info

spread 是每次挑选容器虽少的节点起,binpack 与spread相反,挑最多的,random 随机

[root@mhc1 ~]# docker -H 192.168.111.111:12375 info
Containers: 16
Running: 0
Paused: 0
Stopped: 16
Images: 12
Server Version: swarm/1.2.8
Role: primary
Strategy: spread
Filters: health, port, containerslots, dependency, affinity, constraint, whitelist
Nodes: 2
mhc2: 192.168.111.112:2375
└ ID: 4XN4:R7WF:EEFN:CG66:XAJ2:77VL:YHQJ:SXPJ:H37O:I2JD:BI72:ZOQS|192.168.111.112:2375
└ Status: Healthy
└ Containers: 0 (0 Running, 0 Paused, 0 Stopped)
└ Reserved CPUs: 0 / 1
└ Reserved Memory: 0 B / 1.87 GiB
└ Labels: kernelversion=3.10.0-693.2.2.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), ostype=linux, storagedriver=devicemapper
└ UpdatedAt: 2017-10-16T14:15:45Z
└ ServerVersion: 1.12.6
mhc3: 192.168.111.113:2375
└ ID: TJJN:4OMZ:XFCR:PTC3:F7PM:ZHB5:ZPKA:73C6:UOQZ:CIAK:NGG4:ZASY|192.168.111.113:2375
└ Status: Healthy
└ Containers: 16 (0 Running, 0 Paused, 16 Stopped)
└ Reserved CPUs: 0 / 1
└ Reserved Memory: 0 B / 1.87 GiB
└ Labels: kernelversion=3.10.0-693.2.2.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), ostype=linux, storagedriver=devicemapper
└ UpdatedAt: 2017-10-16T14:16:25Z
└ ServerVersion: 1.12.6
Plugins:
Volume:
Network:
Swarm:
NodeID:
Is Manager: false
Node Address:
Security Options:
Kernel Version: 3.10.0-514.el7.x86_64
Operating System: linux
Architecture: amd64
Number of Docker Hooks: 2
CPUs: 2
Total Memory: 3.739 GiB
Name: 5813e487e53b
Docker Root Dir:
Debug Mode (client): false
Debug Mode (server): false
WARNING: No kernel memory limit support
Registries:

--------------------------------------------------------------------------------------------------

ERRO[0000] error monitoring events, will restart         error=Error response from daemon: (NotImplemented) events is not implemented (9aa4eefb-a707-40af-a6fb-43d1f85c2aac) id=67b5da79-974d-467a-80a7-c3d030236a8e|192.168.9.138:2376 name=bst-1

./swarm manage --filter=health --filter=dependency --filter=constraint --filter=containerslots --filter=affinity --tls --tlscert=/root/.sdc/docker/dbba/cert.pem --tlskey=/root/.sdc/docker/dbba/key.pem --host=0.0.0.0:3376 --strategy spread file://./cluster_info >/dev/null 2>&1 &

-------------------------------------------------------------------------------------

./swarm manage --filter=health --filter=dependency --filter=constraint --filter=containerslots --filter=affinity --host=0.0.0.0:3375 --strategy spread --replication --advertise=109.105.4.65:3375 consul://109.105.4.65:8500

./swarm manage --filter=health --filter=dependency --filter=constraint --filter=containerslots --filter=affinity --host=0.0.0.0:3375 --strategy spread --replication --advertise=109.105.30.40:3375 consul://109.105.4.65:8500

./swarm join --advertise=109.105.4.65:2375 consul://109.105.4.65:8500

./swarm join --advertise=109.105.30.40:2375 consul://109.105.4.65:8500

export DOCKER_HOST=109.105.30.40:3375

docker run -d --label service=test consul:0.8.4 ping 127.0.0.1

docker ps --filter label=service=test

docker run -d -e affinity:service==test consul:0.8.4 ping 127.0.0.1

docker swarm test的更多相关文章

  1. 通过docker-machine和etcd部署docker swarm集群

    本片文章介绍一下 使用docker-machine 搭建docker swarm 集群:docker swarm是docker 官方搭建的容器集群编排工具:容器编排,就是可以使你像使用一太机器一样来使 ...

  2. Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例

    目录 [TOC] 1.环境准备 ​ 本文中的案例会有四台机器,他们的Host和IP地址如下 c1 -> 10.0.0.31 c2 -> 10.0.0.32 c3 -> 10.0.0. ...

  3. (转) Docker swarm - 使用体验 1+2

    背景 凭借敏捷开发部署理念的推行,相信对于很多人来说docker这项容器技术已经并不陌生,Docker 1.12引擎发布了快两个月,新引擎中包含了许多特性.诸如: Swarm模式,容器集群的健康检查, ...

  4. (转) Docker swarm 之介绍与使用

    今天,在站内看到一篇关于Docker Swarm 的文章,非常好,在这里转过来,方便日后查阅 :) 原贴链接: http://www.cnblogs.com/rio2607/p/4445968.htm ...

  5. 从零开始搭建Docker Swarm集群

    从零开始搭建Docker Swarm集群 检查节点Docker配置 1. 打开Docker配置文件(示例是centos 7)vim /etc/sysconfig/docker2. 添加-H tcp:/ ...

  6. docker + swarm 集群

    docker + swarm 集群 导读 Swarm是Docker公司在2014年12月初新发布的容器管理工具.和Swarm一起发布的Docker管理工具还有Machine以及Compose.Swar ...

  7. 基于 Consul 的 Docker Swarm 服务发现

    Docker 是一种新型的虚拟化技术,它的目标在于实现轻量级操作系统的虚拟化.相比传统的虚拟化方案,Docker 虚拟化技术有一些很明显的优势:启动容器的速度明显快于传统虚拟化技术,同时创建一台虚拟机 ...

  8. docker 1.12 版本 docker swarm 集群

    博客已经迁移到 个人博客中 个人博客 更新地址: http://www.xf80.com/2016/10/25/docker-swarm-1.12/ docker 1.12 版本 的新特性 (1)do ...

  9. Docker Swarm集群

    Docker Swarm集群 IP 10.6.17.11  管理节点 IP 10.6.17.12   节点A IP 10.6.17.13   节点B IP 10.6.17.14   节点C 安装 Sw ...

  10. 生产环境中使用Docker Swarm的一些建议

    译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它 ...

随机推荐

  1. asp.net验证码图片生成示例

    验证码,一个很常见的东西.不管你是使用者还是开发者,这个东西80%的人都见到过,但是之前有人给我说过这么一句话“内行看门道,外行看热闹!”,仔细琢磨一下还真的是那么一回事.对于怎么实现验证码,闲话不多 ...

  2. SQLServer查看用户连接数

    SELECT login_name, ) user_count FROM Sys.dm_exec_requests dr WITH(nolock) RIGHT OUTER JOIN Sys.dm_ex ...

  3. 设置套接口的选项setsockopt的用法

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  4. 前端常用框架和js插件 UI组件等

    前言:写这个随笔,是记录一下工作以来用到的各种框架.以免日后忘记: JS库: 1. jquery.js 2. zepto.js ----jquery的精简版,专门用于手机上的,但是zepto主体默认是 ...

  5. Robot Framework中使用HttpLibrary教程and中文支持

    Robot Framework中使用and转参数时,默认不支持中文模式,如图场景: 会出现这种错误 FAIL : UnicodeDecodeError: 'ascii' codec can't dec ...

  6. adb命令安装apk

    1.将需要安装的apk放在platform-tools下 2.将手机和电脑连接,在cmd中输入 adb devices查看 3.使用adb命令安装apk,在cmd中输入:adb install apk ...

  7. python的继承顺序

    python的继承顺序 python 创建类时分为新式类和旧式类 class A: # 经典类 def __init__(self): pass # 新类,可以在这里加 __metaclass__ = ...

  8. Java编程之Date的相关操作

    一:讲字符串的时间格式数据转换成时间对象 //将字符串的时间数据,转换成时间 String dateString="2007-12-12"; DateFormat date=new ...

  9. test20181020 B君的第二题

    题意 分析 考场70分 一看就是裸的kmp,直接打上去. #include<cstdlib> #include<cstdio> #include<cmath> #i ...

  10. 每日一条 Git 命令:git merge remote master

    每日一条 Git 命令:git merge remote master 当远程的分支更新后,需要将自己的代码与远程的分支合并就用以下这个命令合并. git merge remote master 如果 ...