docker swarm集群搭建
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn
摘要:
- swarm是docker原生的集群管理软件,与kubernetes比起来比较简单
 
1、部署
系统时centos7上
关闭防火墙 systemctl stop firewalld.service 
关闭selinux vi /etc/selinux/comfig
192.168.10.140 swarm manager
192.168.10.141 swarm node
192.168.10.142 swarm mode
2、分别在manager节点和node节点上安装docker
安装方式参照我的另一篇文章docker安装http://galengao.github.io/docker/2016/06/03/mydocker-use.html
yum update tee /etc/yum.repos.d/docker.repo<<EOF
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=
gpgcheck=
gpgkey=https://yum.dockerproject.org/gpg
EOF yum install docker-engine
3、分别在manager节点和node节点上配置docker
vi /lib/systemd/system/docker.service
# 修改ExecStart项为如下:
ExecStart=/usr/bin/docker daemon -H 0.0.0.0: -H unix:///var/run/docker.sock
# 重新载入配置,使修改生效。
systemctl daemon-reload
# 重启docker。
systemctl restart docker
4、在manager节点和node节点上push swarm镜像
[root@swarm1 ~]# docker pull swarm
Using default tag: latest
latest: Pulling from library/swarm
1e61bbec5d24: Pull complete
8c7b2f6b74da: Pull complete
245a8db4f1e1: Pull complete
Digest: sha256:661f2e4c9470e7f6238cebf603bcf5700c8b948894ac9e35f2cf6f63dcda723a
Status: Downloaded newer image for swarm:latest
5、创建集群token,获取全球唯一的 token,作为集群唯一标识
# 在任何节点都可以,但是要记住该值,以后要用到
[root@swarm1 ~]# docker run --rm swarm create
eca9b4ab85feb53f8a9676c72dd01b1a
6、加入集群
# 在manager也就是节点node1
[root@swarm1 ~]# docker run -d swarm join -addr=192.168.10.140: token://eca9b4ab85feb53f8a9676c72dd01b1a
109da11914295c588c6afe5f83ab731bd0d0012897c39c311de89534e2f5bc13
# node2上
[root@swarm1 ~]# docker run -d swarm join -addr=192.168.10.141: token://eca9b4ab85feb53f8a9676c72dd01b1a
1da02eb6a00a8860eefe965a0aded446aebff8b502962c717dd3f494b546841a
# node3上
[root@swarm1 ~]# docker run -d swarm join -addr=192.168.10.142: token://eca9b4ab85feb53f8a9676c72dd01b1a
b5483c91bff0ad21e19700af51990d631e991f9d67188c7419f147652d494972
7、启动管理机
# 在管理机上执行:
[root@swarm1 ~]# docker run -d -p : swarm manage token://eca9b4ab85feb53f8a9676c72dd01b1a
3073a3dd59a5782f706d6481cfd1a36e8090f21764dfec2532899450bd719456
8、查看节点信息
# 本机上查看节点信息
[root@swarm1 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1da02eb6a00a swarm "/swarm join -addr=19" minutes ago Up minutes /tcp sick_bose
# 查看集群所有节点信息,在任何一台机器上执行
[root@swarm1 ~]# docker run --rm swarm list token://eca9b4ab85feb53f8a9676c72dd01b1a
192.168.10.142:
192.168.10.141:
192.168.10.140:
# 查看集群详细信息。在任何一台机器上执行:
# 该IP地址是manager的地址
[root@swarm1 ~]# docker -H 192.168.10.140: info
Containers:
Running:
Paused:
Stopped:
Images:
Server Version: swarm/1.2.
Role: primary
Strategy: spread
Filters: health, port, containerslots, dependency, affinity, constraint
Nodes:
(unknown): 192.168.10.142:
└ ID:
└ Status: Pending
└ Containers:
└ Reserved CPUs: /
└ Reserved Memory: B / B
└ Labels:
└ UpdatedAt: --28T07::39Z
└ ServerVersion:
(unknown): 192.168.10.141:
└ ID:
└ Status: Pending
└ Containers:
└ Reserved CPUs: /
└ Reserved Memory: B / B
└ Labels:
└ UpdatedAt: --28T07::39Z
└ ServerVersion:
(unknown): 192.168.10.140:
└ ID:
└ Status: Pending
└ Containers:
└ Reserved CPUs: /
└ Reserved Memory: B / B
└ Labels:
└ UpdatedAt: --28T07::39Z
└ ServerVersion:
Plugins:
Volume:
Network:
Kernel Version: 3.10.-.el7.x86_64
Operating System: linux
Architecture: amd64
CPUs:
Total Memory: B
Name: 3073a3dd59a5
Docker Root Dir:
Debug mode (client): false
Debug mode (server): false
WARNING: No kernel memory limit support
												
											docker swarm集群搭建的更多相关文章
- docker swarm集群搭建及使用Portainer、shipyard
		
一.规划 1.swarm01作为manager节点,swarm02和swarm03作为worker节点. # cat /etc/hosts 127.0.0.1 localhost 192.168. ...
 - 分享:docker swarm集群搭建
		
[Y_H]实践原创 三台虚拟机:1台centOS , 2台ubuntu. 网上有用docker-machine创建虚拟机做的例子. 这里直接用VMware创建这三台虚拟机,然后用xshell连 ...
 - docker swarm集群搭建以及使用滚动更新
		
基础环境,三台虚拟机 172.17.3.70 172.17.3.71 172.17.3.72 系统配置:centos 7,关闭selinux 需要优化的基础配置: [root@sw1 ~]# vim ...
 - Docker swarm集群搭建教程
		
一.什么是Swarm Swarm这个项目名称特别贴切.在Wiki的解释中,Swarm behavior是指动物的群集行为.比如我们常见的蜂群,鱼群,秋天往南飞的雁群都可以称作Swarm behavio ...
 - DOCKER 学习笔记8 Docker Swarm 集群搭建
		
前言 在前面的文章中,已经介绍如何在本地通过Docker Machine 创建虚拟Docker 主机,以及也可以在本地Windows 创建虚拟主机,也是可以使用的.这一节,我们将继续学习 Docker ...
 - docker swarm 集群搭建
		
创建一个集群 [vagrant@node1 ~]$ docker swarm init --advertise-addr 192.168.9.101 Swarm initialized: curren ...
 - 从零开始搭建Docker Swarm集群
		
从零开始搭建Docker Swarm集群 检查节点Docker配置 1. 打开Docker配置文件(示例是centos 7)vim /etc/sysconfig/docker2. 添加-H tcp:/ ...
 - Docker系列之swarm集群搭建
		
学习Docker很久了,今天分享一下Docker的swarm集群的搭建过程很简单 首先第一步是 每台机器上面都要安装docker 本人使用的是centos7操作系统,使用3太虚拟机,3太虚拟机必须网络 ...
 - Docker Swarm 集群环境搭建及弹性服务部署
		
上一篇文章<Docker Swarm 集群管理利器核心概念扫盲>中我们把 Swarm 重要的概念性知识给大家讲解了一波,理论完事就该实战了,这篇文章带大家从零开始,搭建 Docker Sw ...
 
随机推荐
- MYSQL ORDER BY Optimization
			
ORDER BY Optimization 某些情况下,MYSQL可以使用index排序而避免额外的sorting. 即使order by语句列不能准确的匹配index,只要没有index中(不在or ...
 - js双向绑定和地址传递带来的痛苦解决方案之对象拷贝
			
function cloneObj(obj) { var newObj = {}; if (obj instanceof Array) { newObj = []; } for (var key in ...
 - C#编译成以管理员身份运行程序
			
转载自:http://www.cnblogs.com/babycool/p/3569183.html 在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理 ...
 - NtDuplicateObject小解读
			
源进程和目标进程可以是一个吗 当然执行进程可以是同一个吗 ,当然标志位重要!有一个关闭源进程的标志位 第一步通过ObReferenceHandleTable获得源进程对象(数据结构) //为新的句柄构 ...
 - java判断时间大小
			
//构造日期格式yyyy-MM-NN SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); Date d ...
 - java 网络编程之TCP通信和简单的文件上传功能
			
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
 - 04_Javascript初步第一天
			
视频来源:麦子学院[看来是麦子的忠实粉丝] 讲师:King我只是想记住对应的中文翻译:Uncaught SyntaxError: missing ) after argument list//属性列表 ...
 - css盒子居中定位问题
			
在HTML中,div盒子的居中要通过外边距margin和width来控制,首先确定盒子的宽度,然后确定盒子方位并将其平移便可使盒子移到固定位置. <div id="divpic&quo ...
 - jenkins构建自由风格项目[四]
			
标签(linux): jenkins 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 构建一个php项目 创建一个新的项目 选择从git获取源码 配置gitlab ...
 - JDK安装及Tomcat安装
			
JDK安装及Tomcat安装 JDK 解压JDK到常用盘符 D为例 Tomcat安装 将tomcat.zip解压到常用的根目录下,我这里以D盘为例.这样就算安装好了! 接下来开始配置环境变量,打开环境 ...