您的位置:首页 > 运维架构 > Docker

docker swarm集群搭建

2016-08-17 17:41 615 查看
本文来自我的githubpages博客http://galengao.github.io/即www.gaohuirong.cn

摘要:

swarm是docker原生的集群管理软件,与kubernetes比起来比较简单

1、部署

系统时centos7上
关闭防火墙systemctlstopfirewalld.service
关闭selinuxvi/etc/selinux/comfig

192.168.10.140swarmmanager
192.168.10.141swarmnode
192.168.10.142swarmmode

2、分别在manager节点和node节点上安装docker

安装方式参照我的另一篇文章docker安装http://galengao.github.io/docker/2016/06/03/mydocker-use.html

yumupdate

tee/etc/yum.repos.d/docker.repo<<EOF
[dockerrepo]
name=DockerRepository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF

yuminstalldocker-engine



3、分别在manager节点和node节点上配置docker

vi/lib/systemd/system/docker.service
#修改ExecStart项为如下:
ExecStart=/usr/bin/dockerdaemon-H0.0.0.0:2375-Hunix:///var/run/docker.sock
#重新载入配置,使修改生效。
systemctldaemon-reload
#重启docker。
systemctlrestartdocker



4、在manager节点和node节点上pushswarm镜像

[root@swarm1~]#dockerpullswarm
Usingdefaulttag:latest
latest:Pullingfromlibrary/swarm
1e61bbec5d24:Pullcomplete
8c7b2f6b74da:Pullcomplete
245a8db4f1e1:Pullcomplete
Digest:sha256:661f2e4c9470e7f6238cebf603bcf5700c8b948894ac9e35f2cf6f63dcda723a
Status:Downloadednewerimageforswarm:latest



5、创建集群token,获取全球唯一的token,作为集群唯一标识

#在任何节点都可以,但是要记住该值,以后要用到
[root@swarm1~]#dockerrun--rmswarmcreate
eca9b4ab85feb53f8a9676c72dd01b1a



6、加入集群

#在manager也就是节点node1
[root@swarm1~]#dockerrun-dswarmjoin-addr=192.168.10.140:2375token://eca9b4ab85feb53f8a9676c72dd01b1a
109da11914295c588c6afe5f83ab731bd0d0012897c39c311de89534e2f5bc13
#node2上
[root@swarm1~]#dockerrun-dswarmjoin-addr=192.168.10.141:2375token://eca9b4ab85feb53f8a9676c72dd01b1a
1da02eb6a00a8860eefe965a0aded446aebff8b502962c717dd3f494b546841a
#node3上
[root@swarm1~]#dockerrun-dswarmjoin-addr=192.168.10.142:2375token://eca9b4ab85feb53f8a9676c72dd01b1a
b5483c91bff0ad21e19700af51990d631e991f9d67188c7419f147652d494972



7、启动管理机

#在管理机上执行:
[root@swarm1~]#dockerrun-d-p2376:2375swarmmanagetoken://eca9b4ab85feb53f8a9676c72dd01b1a
3073a3dd59a5782f706d6481cfd1a36e8090f21764dfec2532899450bd719456



8、查看节点信息

#本机上查看节点信息
[root@swarm1~]#dockerps-a
CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES
1da02eb6a00aswarm"/swarmjoin-addr=19"27minutesagoUp27minutes2375/tcpsick_bose
#查看集群所有节点信息,在任何一台机器上执行
[root@swarm1~]#dockerrun--rmswarmlisttoken://eca9b4ab85feb53f8a9676c72dd01b1a
192.168.10.142:2375
192.168.10.141:2375
192.168.10.140:2375
#查看集群详细信息。在任何一台机器上执行:
#该IP地址是manager的地址
[root@swarm1~]#docker-H192.168.10.140:2376info
Containers:0
Running:0
Paused:0
Stopped:0
Images:0
ServerVersion:swarm/1.2.3
Role:primary
Strategy:spread
Filters:health,port,containerslots,dependency,affinity,constraint
Nodes:3
(unknown):192.168.10.142:2375
└ID:
└Status:Pending
└Containers:0
└ReservedCPUs:0/0
└ReservedMemory:0B/0B
└Labels:
└UpdatedAt:2016-07-28T07:54:39Z
└ServerVersion:
(unknown):192.168.10.141:2375
└ID:
└Status:Pending
└Containers:0
└ReservedCPUs:0/0
└ReservedMemory:0B/0B
└Labels:
└UpdatedAt:2016-07-28T07:54:39Z
└ServerVersion:
(unknown):192.168.10.140:2375
└ID:
└Status:Pending
└Containers:0
└ReservedCPUs:0/0
└ReservedMemory:0B/0B
└Labels:
└UpdatedAt:2016-07-28T07:54:39Z
└ServerVersion:
Plugins:
Volume:
Network:
KernelVersion:3.10.0-229.el7.x86_64
OperatingSystem:linux
Architecture:amd64
CPUs:0
TotalMemory:0B
Name:3073a3dd59a5
DockerRootDir:
Debugmode(client):false
Debugmode(server):false
WARNING:Nokernelmemorylimitsupport





                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: