Docker Swarm Mode 学习笔记 (基本概念)
Swarm 是使用 SwarmKit 构建的 Docker 引擎内置(原生)的集群管理和编排工具
节点
运行 Docker 的主机可以主动初始化一个 Swarm 集群 docker swarm init
或者加入一个已存在的 Swarm 集群 docker swarm join
,这样这个运行 Docker 的主机就成为一个 Swarm 集群的节点 ( Node ) 。
管理节点
用于 Swarm 集群的管理, 一个 Swarm 集群可以有多个管理节点, 但只能有一个 Leader 。
工作节点
工作节点是任务执行节点, 管理节点将服务下发至工作节点执行。 管理节点默认也是工作节点。
下图是Swarm 集群模式中管理节点与工作节点之间的关系:
任务
任务(Task)是 Swarm 中的最小的调度单位,目前来说就是一个单一的容器。
服务
服务 (Service)是指一组任务的集合,服务定义了任务的属性。服务有两种模式:
- replicated service 按照一定规则在各个工作节点上运行指定个数的任务。
- global service 每个工作节点上运行一个任务
两种模式通过 docker serivce create
的 --mode
参数指定。
下图是容器, 任务,服务之间的关系: