Docker Swarm集群实现负载均衡

环境部署:

三台rhel7.3主机
server11:172.25.51.11
server12:172.25.51.12
server13:172.25.51.13


注意:关闭 docker-compose

[root@foundation51 ~]# cd /tmp/docker/compose/
[root@foundation51 compose]# docker-compose stop
具体部署:
1、三个节点安装Docker并开启服务
docker-engine.x86_64 0:17.03.1.ce-1.el7.centos   
docker-engine-selinux.noarch 0:17.03.1.ce-1.el7.centos
[root@server12 ~]# systemctl start docker
2、初始化集群(swarm)
[root@server11 ~]# docker swarm init

Docker Swarm集群实现负载均衡_第1张图片

3、节点加入集群
[root@server12 ~]# docker swarm join \
> --token SWMTKN-1-4vrelu16ljphywtcgvyup9i426q3il9ii0w02h61ashm3oz8in-2ock4tzbo5r06ug9pbsdyrkhw \
> 172.25.51.11:2377

[root@server13 ~]# docker swarm join \
> --token SWMTKN-1-4vrelu16ljphywtcgvyup9i426q3il9ii0w02h61ashm3oz8in-2ock4tzbo5r06ug9pbsdyrkhw \
> 172.25.51.11:2377
  • 查看节点信息
    在这里插入图片描述
4、创建名称为web,副本为3,开放端口为80的nginx服务
[root@server11 ~]# docker load -i nginx.tar 
[root@server12 ~]# docker load -i nginx.tar 
[root@server13 ~]# docker load -i nginx.tar 
[root@server11 ~]# docker service create --name web --replicas 3 -p 80:80 nginx
[root@server11 ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
98a3d35d6e8f        nginx:latest        "nginx -g 'daemon ..."   38 seconds ago      Up 30 seconds       80/tcp              web.3.085rq6gu4h1yhp7qc9wc3vnoz
  • 查看docker服务列表
    在这里插入图片描述

  • 查看docker的web服务
    在这里插入图片描述

  • 三台主机节点均开启nginx服务
    Docker Swarm集群实现负载均衡_第2张图片
    Docker Swarm集群实现负载均衡_第3张图片
    Docker Swarm集群实现负载均衡_第4张图片


注意:增加或减少服务数目,直接对scale的数据设置即可
[root@server11 ~]# docker service scale web=6
  • 增加scale数目
    Docker Swarm集群实现负载均衡_第5张图片
[root@server11 ~]# docker service scale web=3
  • 减少scale数目
    在这里插入图片描述

5、从容器中复制文件到主机nginx默认发布目录
[root@server11 ~]# vim index.html
[root@server11 ~]# docker container cp index.html 6268f0d0f599:/usr/share/nginx/html

在这里插入图片描述

server12、server13同上
6、测试(负载均衡)

Docker Swarm集群实现负载均衡_第6张图片Docker Swarm集群实现负载均衡_第7张图片
Docker Swarm集群实现负载均衡_第8张图片

你可能感兴趣的:(Linux,Docker,Swarm,负载均衡)