通过Docker环境安装Swarm集群

2017-07-10  本文已影响0人  sun363587351

搭建Docker Swarm集群:

对于Swarm集群的搭建主要通过两种方式搭建:

1.在真实操作系统通过Docker安装(目前Swarm已集成在Docker原生应用)

2.通过Docker镜像部署,通过Docker容器微服务方式部署

3.其中,可以通过consul部署高可用网络服务保证Swarm集群网络高可用性

4.首先使用第一种方法搭建集群(本机部署)

docker swarm init

docker jion + token

这种方式搭建很简单,因为就是docker原生集成。但是这种方式与consul同事部署的时候会存在冲突,swarm默认使用的overlay网络是ingress

5.第二种方式通过镜像安装需先部署consul高可用overlay网络服务:

利用容器搭建SWARM与CONSUL高可用集群(非物理机安装服务器软件)

Consul管理节点:

docker run -d \

-p 8300:8300 \

-p 8301:8301 \

-p 8301:8301/udp \

-p 8302:8302 \

-p 8302:8302/udp \

-p 8400:8400 \

-p 8500:8500 \

-p 53:53 \

-p 53:53/udp \

-h consul-server \

--restart=always \

--name=consul_server progrium/consul -server -bootstrap -ui-dir=/ui -advertise 10.10.10.10 -client 0.0.0.0

Consul服务节点:

docker run -d \

-p 8300:8300 \

-p 8301:8301 \

-p 8301:8301/udp \

-p 8302:8302 \

-p 8302:8302/udp \

-p 8400:8400 \

-p 8500:8500 \

-h consul-node02 \

--restart=always \

--name=consul progrium/consul -server -join 10.10.10.10 -advertise 10.10.10.24 -client 0.0.0.0

下面是利用镜像部署swarm方式:

Swarm管理节点:

docker run -d -p 2375:2375 --restart=always --name swarm-manager swarm:latest manage consul://10.10.10.10:8500

Swarm服务节点:

docker run -d  --restart=always --name swarm-agent swarm:latest join --addr 10.10.10.24:2375  consul://10.10.10.10:8500

集群信息查看:docker -H 10.10.10.10:2376 info

安装shipyard(可选):DOCKER管理界面UI

1、主节点启动rethinkdb

docker run -d --restart=always --name shipyard-rethinkdb rethinkdb

2、主节点启动shipyard

docker run -d --restart=always --name shipyard --link shipyard-rethinkdb:rethinkdb --link swarm-manager:swarm -p 8080:8080 shipyard/shipyard:latest server --rethinkdb-addr rethinkdb:28015 -d tcp://swarm:2375

安装Registrator(可选):服务发现

docker run -d --restart=always --privileged=true --name=registrator --net=host -v /var/run/docker.sock:/tmp/docker.sock gliderlabs/registrator -ip 10.10.10.23 consul://10.10.10.10:8500

https://github.com/docker/labs/blob/master/swarm-mode/beginner-tutorial/README.md

上一篇下一篇

猜你喜欢

热点阅读