zoukankan      html  css  js  c++  java
  • Swarm工具使用

    1. 准备 3 台实例机 ip 地址分别是 192.168.0.131 ~ 133

    2. 在三台机器上安装 docker 和 修改 docker 启动文件 配置 vim /etc/sysconfig/docker 加入 -H tcp://0.0.0.0:2375
    OPTIONS='-g /cutome-path/docker -H tcp://0.0.0.0:2375'

    3. 三台机器启动 docker 分别 docker pull swarm


    4. 创建 swarm 集群

    -- 创建 swarm
    docker swarm init --advertise-addr 192.168.182.110
    返回: SWMTKN-1-16izmwyfwxhok9lgoq8idlefumipgq2y7iv2pjja6zf53epaya-0cqbeordfj92bj86prcajmft3

    --另外俩台机器加入 集群

    docker swarm join
    --token SWMTKN-1-16izmwyfwxhok9lgoq8idlefumipgq2y7iv2pjja6zf53epaya-0cqbeordfj92bj86prcajmft3
    192.168.0.131:2377

    可以用以下命令查看 swarm集群的信息:

    docker node list
    docker network ls ()默认一个公用网络名称 ingress
    docker service ls

    5. 创建服务
    docker service create --replicas 2 --name mynginx_swarm -p 8000:80 --network=ingress nginx

    -- 调整 replicas 数量
    docker service scale hpuwfzb963yy=3 或 docker service scale mynginx_swarm =3

    -- 查看服务
    docker service ps mynginx_swarm 或 docker service ps hpuwfzb963yy

    --删除服务,慎用
    docker service rm mynginx_swarm


    6.滚动更新实践
    创建一个 redis服务练手
    docker service create
    --replicas 3
    --name redis
    --update-delay 10s
    redis:3.0.6

    --update-delay 是一个设置, 在后续的更新过程中,每个 replica 更新间隔 10 秒

    2.开始更新
    docker service update --image redis:3.0.7 redis


    --暂停一个节点的服务
    docker node update --availability drain worker1
    worker1 是节点名, 节点id


    --查看服务
    docker service inspect --pretty mynginx_swarm
    docker service inspect mynginx_swarm


    参考:
    http://www.runoob.com/docker/docker-install-nginx.html
    https://www.jianshu.com/p/0e231a928ee6
    http://dockone.io/article/227
    https://www.cnblogs.com/liuyansheng/p/8178341.html
    https://blog.csdn.net/u011781521/article/details/80468985 (主要)
    https://docs.docker.com/swarm/ (字典)


    Swarm实战

    因为现在新版本的Docker已经结合了Swarm,所以在这里主要结合的是新版本功能的Docker的演示。

    1、Swarm基本命令
    docker swarm init 创建Swarm,同时让swarm-manager 成为 manager node。
    执行该命令后,显示添加worker node和manager node 需要执行的命令。
    –advertise-addr 指定与其他node通信的地址。

    docker swarm init --advertise-addr [ip]

    查看swarm worker的连接令牌
    docker swarm join-token worker

    查看swarm manager的连接令牌
    docker swarm join-token manager

    加入docker swarm集群,这里的token和ip更换为具体需求下的即可。
    如果忘记可以用docker swarm join-token worker查看。

    docker swarm join --token SWMTKN-1-1next4gw4m7yx3j6q1f4z4ooimvp3pc1ahsnnwifu5w1h6b247-f10wphfpnyyunzphr1qp4kew1 192.168.1.245:2377

    查看集群中的节点
    docker node ls

    将节点升级为manager
    docker node promote work-node1

    将节点降级为worker
    docker node demote work-node1

    只能删除down状态的节点,如何要删除active状态的,需要加上–force
    docker node rm --force worker-manager

    查看服务列表
    docker service ls

    查看具体服务信息,这里是web服务
    docker service ps web

  • 相关阅读:
    Django 之 CBV & FBV
    如何在Pycharm设置ES6语法环境
    RabbitMQ_消息队列基本使用_2
    RabbitMQ_消息队列基本使用_1
    HTML 之 Table 表格详解
    Datetime 模块求日期差
    vue实例属性之methods和computed
    性格测试
    vue中的组件
    vue中的表单
  • 原文地址:https://www.cnblogs.com/walkersss/p/14098754.html
Copyright © 2011-2022 走看看