Docker Swarm 集群
Docker Swarm 是一个 Dockerized 化的分布式应用程序的本地集群,它是在 Machine 所提供的功能的基础上优化主机资源的利用率和容错服务。
具体来说,Docker Swarm 支持用户创建可运行 Docker Daemon 的主机资源池,然后在资源池中运行 Docker 容器。Docker Swarm 可以管理工作负载并维护集群状态。
一、简介
Docker Swarm 是 Docker 官方提供的一套容器编排系统,架构如下:
Swarm 是一系列节点的集合,而节点可以是一台裸机或者一台虚拟机;一个节点能扮演一个或者两个角色,Manager 或者 Worker
- Manager 节点:Docker Swarm 集群需要至少一个 Manager 节点,节点之间使用 Raft Consensus Protocol 进行协同工作;通常,第一个启用 Docker Swarm 的节点将成为 Leader,后来加入的都是 Follower;当前的 Leader 如果挂掉,剩余的节点将重新选举出一个新的 Leader;每一个 Manager 都有一个完整的当前集群状态的副本,可以保证 Manager 的高可用。
- Worker 节点:Worker 节点是运行实际应用服务的容器所在的地方,理论上,一个 Manager 节点也能同时成为 Worker 节点,但在生产环境中不建议这样做;Worker 节点之间,通过 Control Plane 进行通信,这种通信使用 Gossip 协议,并且是异步的。
二、创建
所有集群集群主机全部安装 [[Docker 入门#1.快捷安装]],分别运行以下命令创建并加入 Swarm 集群
1 | #初始化集群 |
进入第一台主机(默认初始化的主机就是 Manager 节点),
1 | #查看节点信息 |
三、操作
1 | #创建一个 tomcat 的 Service |
四、数据
共享数据卷
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 君玉自牧!