swarm 生产环境集群安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swarm 生产环境集群安装相关的知识,希望对你有一定的参考价值。

规划:manager 192.168.1.72/73/74

    consul  192.168.1.72/73/74

    leader  192.168.1.74

    node    192.168.1.70/71


1、安装discovery 使用consul


第一台(74)

docker run --net=host --name=consul progrium/consul -server -bootstrap  -ui-dir=/ui -advertise 192.168.1.74


端口说明:

http 8500

rpc  8400

wan 8302

lan 8301

通信 8300


advertise 指定监听ip,如果不写外网ip,会默认监听内网


剩下2台

docker run --net=host --name=consul progrium/consul -server -join 192.168.1.74 -advertise 192.168.1.73
docker run --net=host --name=consul progrium/consul -server -join 192.168.1.74 -advertise 192.168.1.72



2、安装swarm manager


第一台(74)

docker run -d --net=host --name=swarm-manage swarm manage -H :4000 --replication --advertise 192.168.1.74:4000 consul://192.168.1.74:8500


剩下2台

docker run -d --net=host --name=swarm-manage swarm manage -H :4000 --replication --advertise 192.168.1.73:4000 consul://192.168.1.74:8500
docker run -d --net=host --name=swarm-manage swarm manage -H :4000 --replication --advertise 192.168.1.72:4000 consul://192.168.1.74:8500


3、安装swarm node (70/71)

docker run -d --net=host --name=swarm-node swarm join --advertise=192.168.1.70:2375 consul://192.168.1.74:8500
docker run -d --net=host --name=swarm-node swarm join --advertise=192.168.1.71:2375 consul://192.168.1.74:8500



filter 使用

指定label role=node01 的node 运行nginx

label role=node01 需要自己在daemon中自定义

docker -H :4000 run -d -e constraint:role==node01 --name Iam-node1 nginx

docker -H :4000 run -d -e constraint:role==node02 --name Iam-node2 redis


分别去node1和node2可以看到nginx 运行在node1,redis 运行在node2

本文出自 “银狐” 博客,请务必保留此出处http://foxhound.blog.51cto.com/1167932/1789138

以上是关于swarm 生产环境集群安装的主要内容,如果未能解决你的问题,请参考以下文章

生产环境swarm集群规划和管理

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

docker swarm

docker swarm 集群及可视化界面的安装及配置

docker swarm 集群及可视化界面的安装及配置

Docker swarm 搭建docker高可用集群