Docker Swarm提供Docker容器集群服务,可以将多个Docker主机封装为单个单行的虚拟Docker主机,快速打造一套容器云平台。
DockerSwarm提供很多新特性,如 具有容错能力的去中心化设计、内置服务发现、负载均衡、路由网络、动态伸缩、滚动更新、安全传输等。
必须弄清楚的几个基本概念
节点:
运行Docker的主机可以主动初始化一个Swarm集群或者加入一个已经存在的Swarm集群,这样这个运行Docker的主机就成为一个Swarm集群的节点(node)
节点分为管理(manager)节点和工作(worker)节点。
管理节点用于Swarm集群的管理,docker swarm命令基本只能在管理节点上执行(节点退出集群命令docker swarm leave 可以在工作节点执行)。一个swarm集群可以有多个管理节点,但只有一个管理节点可以成为leader,leader通过raft协议实现。
工作节点是任务执行节点,管理节点将服务(service)下发至工作节点执行。管理节点默认也作为工作节点。也可以通过配置让服务只运行在管理节点。
工作节点与管理节点的关系
服务和任务
任务(Task)是Swarm中最小的调度单位,目前来说就是一个单一的容器。
服务(Services)是指一组任