docker swarm 集群搭建

准备好多台已经安装好docker的机器,没有安装好docker的可以参考我的另一篇关于docker安装文档https://my.oschina.net/qbj/blog/3077245

1. 选择manager节点,并创建集群

随便选择一台机器作为manager节点,在机器上运行:

docker swarm init --advertise-addr 当前机器的IP地址

运行完毕之后,出现如下情况代表成功,并复制红色区域中的命令留有待用:

40cca8ab34bf3a293efc1ad8293b4cc05e9.jpg

注:红色区域中的token是集群唯一标识,后续的其它节点机器,都需要通过红色区域中的命令来加入当前集群。

2. 添加集群节点

  复制上一步骤中的红色区域中的内容在其它节点机器上执行,运行成功会提示如下信息:

This node joined a swarm as a worker.

所有节点加入完毕之后,可以在主节点上运行如下命令查看节点情况:

docker node ls 

da4204443e0754390c8a3914e04ba7894b8.jpg

4. 部署Portainer

Portainer 为你的docker swarm集群以及docker服务提供了可视化管理。可以管理docker的堆栈,docker的网络,docker服务,docker镜像,docker容器等等,一切靠命令方式执行的都可以去通过Portainer去在界面上去操作管理。

a. 准备docker-stack-manager.yml配置文件

version: "3.2"
services:
#docker集群可视化工具
  portainer:
    image: portainer/portainer
    hostname: portainer
    ports:
      - "9000:9000"
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
      - "/data/portainer:/data"
    deploy:
      replicas: 1
      placement:
        constraints: [node.role == manager]
      resources:
        limits:
#          cpus: '1'
          memory: 1GB
        reservations:
#          cpus: '0.2'
          memory: 512MB

b.  创建文件目录

mkdir -p /data/portainer/

chmod -R 777 /data/portainer/

c. 执行docker-stack-manager.yml文件

docker stack deploy -c docker-stack-manager.yml manager --resolve-image=never

注意:命令必须在docker-stack-manager.yml同目录下执行。执行完毕之后,请稍等片刻,安装需要花费点时间,可以通过在manager上执行以下命令来查看安装进度:

docker service ls

02b2789385172b4ed2247520b4d321e19b9.jpg

d. 访问界面地址  http://集群IP:9000

e. 开始配置账号密码

53f7023f66d621875d8e0e2de2da99815c9.jpg

f.配置manager节点主机的信息

8a06d365aa2ecb28a52f96316b00d3c89c6.jpg

注意: Name -- 随便写;Endpoint URL -- manager节点的IP:2375; 端口2375是默认端口。如果添加失败,可以尝试如下方法:

执行命令

vim /lib/systemd/system/docker.service

在ExecStart加入:

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

2fdfa0c94b2062ddfa260a6d048bb5b1366.jpg

重启dokcer

systemctl daemon-reload

systemctl restart docker

5. 在各个节点配置私服镜像仓库

 在各个节点上私服镜像仓库地址

vim /etc/docker/daemon.json

如果已存在daemon.json,请在原来的基础上加即可,如果有多个,以逗号隔开。配置如下:

{
"insecure-registries": ["私服IP地址1:私服端口","私服IP地址2:私服端口"],
"registry-mirrors": ["https://registry.docker-cn.com"]
}

重启docker服务

systemctl daemon-reload

systemctl restart docker

验证是否成功:

docker info

出现如下显示,即表示成功

f1458649b3d9f6e18463e4a9bfe2739a84c.jpg

注意:每个节点都要按照上述步骤去配置

6.完成第5步之后,需要登录到Portainer,配置私服镜像仓库信息

点击左侧菜单“registries”,点击”Add registry“,选择”custom registry“,输入私服镜像仓库信息,有多个,就添加多次

4f8efcc4d838dcadc4e8dc280ada7c82568.jpg

43f67144fbaff3c73f3049d287fca3cbec7.jpg

到此,docker swarm集群搭建已经完成。

转载于:https://my.oschina.net/qbj/blog/3079124

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值