Swarm
集群的管理和编排。docker 初始化一个swarm集群,其它节点可以加入(manager, worker)
Node
就是一个docker节点。多个节点就组成了一个网络集群(管理者,工作者)
Service
任务,可以在节点(无论管理节点还是工作节点)上运行,用户访问。
Task
容器内的命令。
购买服务器
安装docker
工作模式
官方文档:https://docs.docker.com/engine/swarm/how-swarm-mode-works/nodes/
Manager, Worker
搭建集群
swarm
docker service
k8s, service, pods
Raft协议(保证可用性)
Raft协议: 保证大多数节点存活,高可用。
双主双从(不建议):假设一个主节点挂了,另外一个主节点也不能使用了;一个从节点down之后,其它节点还是可以用的。
三主一从(高可用)
弹性、扩缩容
灰度发布(金丝雀发布)、滚动更新、扩缩容(scale)/副本(replicas)
屏蔽底层差异
云原生。云虚拟
scale , replicas
原理
命令 -> 管理节点 -> API -> 调度 -> 工作节点(创建任务容器Task)
--mode replicated / global
docker service create --mode replicated --name mytom tomcat:7
docker service create --mode global --name fish alpine ping baidu.com
使用场景
日志收集
每一个节点都有自己的日志收集器,过滤,再传给日志中心
服务监控,性能状态
Linux基础,网络基础