zoukankan      html  css  js  c++  java
  • Docker三剑客之swarm

    简介

      swarm是一种docker集群管理工具,跟三剑客前两者不同的是;compose是一种统一编排的工具,machine是一种远程控制工具,swarm则是将多个docker主机映射成一个docker集群,进行管理;swarm通过CLI创建管理集群,当应用程序部署到swarm集群时,swarm集群对其进行管理。

    swarm先决条件

    • 三台以上互通的机器,可以是Linux或者mac os或者windows
    • 安装docker引擎
    • 配置好machine管理
    • 开放指定的端口(2377、7946、4789)

    基础命令

    docker swarm init:初始化集群;可加入autolock设置集群锁,设定集群锁之后管理节点每次重启必须输入密码
    docker swarm join:加入到集群
    docker swarm ca:查看管理节点的证书信息,必须是管理节点运行此命令
    docker swarm join-token:管理连接令牌
    docker swarm leave:强行离开集群,忽略警告
    docker swarm unlock:解锁群
    docker swarm unlock-key:解除群锁
    docker swarm update:更新群内容
    
    docker service create:创建一个服务
    docker service rm :删除一个服务
    docker service ps :查看一个服务状态
    docker service logs:查看一个服务的运行日志
    docker service ls:查看存在的服务
    docker service inspect:查看指定服务的详情
    docker service scale:服务数目的动态调整
    docker service update:更新服务
    
    docker node demote:将一个或多个指定的管理节点降为工作节点
    docker node inspect:显示指定的节点详情
    docker node ls:查看集群状态
    docker node promote:将一个或多个指定的节点提升为管理节点
    docker node ps :列出一个或多个节点上运行的任务,默认为当前节点
    docker node rm :从集群中删除一个指定节点
    docker node update:更新有关节点的元数据
    
    docker secret create:创建一个加密密码
    docker secret inspect:查看指定加密密码详情
    docker secret ls:查看已有的加密密码
    docker secret rm:删除一个指定的加密密码

    实例

    manager:docker swarm init --advertise-addr x.x.x.x
    worker1:docker swarm join--token xx..x x.x.x.x:2377
    worker2:docker swarm join--token xx..x x.x.x.x:2377
    
    docker service create --replicas 1 --update-delay 10s --name helloworld alpine ping docker.com
      --name:指定服务运行的名称
      --replicas:指定运行的实例数
      --update-delay:设定多个容器之间的创建间隔时间
      --publish-add:添加随机映射端口
      --publish-rm:删除随意
      --env <value>=<str>:设定容器的环境变量
      --workdir <directory>:设定容器的运行目录
      --user <user>:指定容器的运行用户
      --args <commond>:更新现有运行的命令
      alpine:表示底层镜像
      ping docker.com:表示镜像启动后执行的内容
    
    docker service inspect <SERVICE-ID>
      --pretty:友好的格式打印信息

    参考地址:

    • https://cloud.tencent.com/developer/section/1091937
    • https://docs.docker.com
    • https://yeasy.gitbooks.io/docker_practice/content/swarm_mode/rolling_update.html
  • 相关阅读:
    轻松搞定CentOS+Nginx+PHP+MySQL标准生产环境 厚燃涂想 ITeye技术网站
    djangoceleryemail 1.0.3 : Python Package Index
    nodejs thinking
    God A Process Monitoring Framework in Ruby
    Beanstalkd 一个高性能分布式内存队列系统
    让tar解压到指定文件夹 » Xeno Joshua | Xeno Joshua
    Check to see if python script is running Stack Overflow
    Django | Model field reference | Django documentation
    深入Django(2):自定义ORM 心内求法 博客频道 CSDN.NET
    第五章:模型
  • 原文地址:https://www.cnblogs.com/guge-94/p/11128745.html
Copyright © 2011-2022 走看看