Docker Swarm

Swarm 是 Docker 官方提供的一款集群管理工具,其主要作用是把若干台 Docker 主机抽象为一个整体,并且通过一个入口统一管理这些 Docker 主机上的各种 Docker 资源。Swarm 和 Kubernetes 比较类似,但是更加轻,具有的功能也较 kubernetes 更少一些。
在Wiki的解释中,Swarm behavior是指动物的群集行为。

  • swarm[swɔːm]

  • 详细 >

  • n. 一大群(移动中的昆虫);(移动着的)一大群人;(多指发生在火山附近的)地震群;(天文)一大群小型天体同时在空中出现

  • v. (昆虫)成群飞行;(人)蜂涌,涌动;挤满,云集;成群地包围;爬(梯子等),攀

相关术语

Swarm Manager:集群的管理工具,通过swarm manager管理多个节点。
Node:是已加入到swarm的Docker引擎的实例 。
manager nodes:也就是管理节点 ,执行集群的管理功能,维护集群的状态, 选举一个leader节点去执 行调度任务
worker nodes,也就是工作节点 ,接收和执行任务。参与容器集群负载调度, 仅用于承载task

环境准备

  1. 准备三台已近安装docker engine的centos/Ubuntu系统主机(docker版本必须在 1.12以上的版本,老版本不支持swarm)
  2. docker容器主机的ip地址固定,集群中所有工作节点必须能访问该管理节点
  3. 集群管理节点必须使用相应的协议并且保证端口可用 集群管理通信:
  • TCP,端口2377
  • 节点通信:TCP和UDP,端口7946
  • 覆盖型网络(docker网络):UDP,端口4789 overlay driver

docker swarm

  • manager node:管理节点
  • work node2:计算节点
  • work node3:计算节点

创建Docker Swarm

$ docekr swarm init --advertise-addr 191.168.128.130
在该ip机器上执行该条指令,则该节点为管理节点

想该集群中添加工作节点

work1
work 2
$ docker swarm join --token {token code} 192.168.128.130:2377
需要在工作节点也就是说管理节点以外的节点执行以上命令将其挂在上方的管理节点所在的集群上,因此需要最后写上到 管理节点ip+port


### 向该集群部署服务

docker service create --replicas 6 --name=hello hello-word ping docker.com

  • docker service特定
  • create 创建服务/容器
  • --replicas * 副本数量
  • --name=hello 容器/服务名称
  • · hello-word·所基于的基础镜像
  • ping docker.com 该服务运行时所执行的命令

查看该集群中的服务

docker service ls

查看所部署的某服务具体详情

docker service inspect hello

查看所部署的指定服务在该集群节点上的部署分配以及运行情况

docker serivce ps hello

更改 Docker Swarm 集群服务的副本replicas 的数量

  • 命令:$ docker service scale hello=6
  • 修改完成后,我们可通过 docker service ps 来查看执行结果

补:继续查看管理节点集群信息与之前的区别

docker node ls

删除集群服务

  • 命令:·docker service re hello
  • 查看: docker service ps

访问网络

默认的 集群网络驱动overlap并不安全

我们可以自定义网络

  • 命令:·docker network create -d overlay my-overlay ·
  • 检查:·docker network ls·

使用自定义网络创建集群服务

  • 命令:docker service create --network my-overlay --name my-hello --publish 8080:80 -replicas 6 nginx(nginx 基于nignx镜像来构建的服务)
  • 检查:docker service ps

访问?

  • 命令:在浏览器中,使用ip:port查看
  • eg:·192.168.128.126:8080·

补充

1. 移除集群中的工作节点

  • 命令:docker swarm leave(在要解除集群的工作节点进行离开该集群)
  • 检查:docker node ls
  • 检查服务:docker ps (当前移除的容器/服务,会自动在其他工作节点进行补充)

2.解散集群(解散小组)

  • instruction:docker swarm leave --force

有待改进goning~~·~

【Docker_Swarm】Swarm 集群创建,从“0”到“1”相关推荐

  1. docker swarm集群创建、配置、可视化管理实验

    什么是docker swarm? docker swarm 是docker原生的docker群集管理.服务编排工具,以命令行的形式创建.管理群集,部署服务,详细参考https://docs.docke ...

  2. Docker Swarm 集群创建+Portainer 图形化管理实验

    目标: 使用Docker Toolbox 创建4台Docker 虚拟机,组建Docker Swarm集群,其中2台为Docker Swarm集群的Manager角色,2台为Worker角色.在集群中安 ...

  3. Docker Swarm集群创建与演练

    文章目录 1.环境 2.创建集群 2.1.创建集群主节点 2.2.创建令牌 2.3.使用令牌加入集群 2.4.删除节点 3.集群服务弹性伸缩 3.1.进行弹性伸缩 3.2.模仿故障 1.环境 四台ho ...

  4. Docker1.12.1之swarm集群搭建与使用

    1:前言 在docker1.12版本之前,众所周知dokcer本身只能单机上运行,而集群则要依赖mesos.kubernetes.swarm等集群管理方案.其中swarm是docker公司自己的容器集 ...

  5. docker swarm集群及其UI部署

    一.规划 ①swarm01作为manager节点,swarm02和swarm03作为worker节点. 1 2 3 4 5 # cat /etc/hosts 127.0.0.1   localhost ...

  6. docker + swarm 集群

    docker + swarm 集群 导读 Swarm是Docker公司在2014年12月初新发布的容器管理工具.和Swarm一起发布的Docker管理工具还有Machine以及Compose.Swar ...

  7. 使用Docker Swarm模式搭建Swarm集群

    转载:https://www.jianshu.com/p/df744c4e375e 目录 概述 创建和管理Swarm集群 Swarm集群的服务部署实践 1. 概述 Docker Swarm是原生的Do ...

  8. Docker Swarm(创建swarm集群,节点的升级降级,滚动更新,Portainer)

    Docker swarm 1.创建 Swarm 集群 2.部署swam监控 3.节点的降级升级 4.删除节点 5. 私有仓库的结合 6.滚动更新 滚动更新镜像版本 删除服务 7. 编写compose文 ...

  9. 使用docker创建swarm集群网络

    Docker集群网络,解决的问题是能同时响应多少请求.不是分布式计算,因为分布式计算是将一个任务拆分若干个子任务,然后将子任务分配到不同的机器上去执行. 集群网络的命令 (1)docker swarm ...

最新文章

  1. 什么是javabean,它与java的区别是什么?(转)
  2. 完美世界手游不显示新服务器,完美世界手游手Q互通-黑曜开服时间表_完美世界手游新区开服预告_第一手游网手游开服表...
  3. 机器学习实验中的编程技术(part2)--numpy
  4. open ssl里面的自定义get***函数失效
  5. vm虚拟远程部署windows驱动
  6. Existing lock /var/run/yum.pid: another copy is running as pid
  7. magento2 checkout totals添加产品属性
  8. 【译】成为优秀程序员(和人类)的101个技巧
  9. python︱用asyncio、aiohttp实现异步及相关案例
  10. 初学python之路-day11
  11. freemarker中使用@spring.*标签实现国际化
  12. 极通EWEBS 3.0应用虚拟化系统--打造国内首款完美集中管理平台极通EWEBS
  13. 谈谈我对服务网格的理解
  14. 洪磊口述:番茄花园如何捆绑流氓软件月入十万
  15. 一篇关于大黄蜂的鸡汤文的杂想
  16. 软件测试概念-PIE模型
  17. 考研—计算机网络—应用层
  18. 线上软文自媒体推广怎么做,软文推广有什么好处?
  19. 5月 CSDN 创作者之夜:获奖名单公布
  20. 平安科技寿险金服面试

热门文章

  1. 第25讲 时序电路定时与异步交互
  2. 2010年我最喜爱的央视春晚节目
  3. 实习记——《Rethink》
  4. 张朝阳:你说的“博客超新浪,搜狗要咬人”实现了吗?
  5. 协议[I2C]_I2C子系统之platform_driver初始化——I2C_adap_s3c_init()
  6. 百面机器学习—4.SVM模型基础知识
  7. 【精选】各种节日祝福(C语言,可修改),Easyx图形库应用+源代码分享
  8. Real-world Noisy Image Denoising: A New Benchmark-真实世界噪声图像去噪:一种新的基准
  9. vue-orgchart做组织架构图
  10. C++ For循环语句(基础)