概述
由多个Docker主机组成,这些主机以群集模式运行,一个主机可以充当managers,workers或者同时扮演两个角色。
manager node 指派task to worker nodes,负责集群管理,工作调度。 worker nodes执行被委派的task, 默认情况下manager node也会作为worker,可配置仅执行manage task。worker node会汇报工作状态到manager node.
task 包含指定的image and 有执行命令的container 是原子的一旦分配 不能转移到另一个node
Swarm模式有一个内部DNS组件,可以自动为swarm中的每个服务分配一个DNS条目。群集管理器使用内部负载平衡来根据服务的DNS名称在群集内的服务之间分发请求。
集群中的每个节点都强制执行TLS相互身份验证和加密,以保护自身与所有其他节点之间的通信。您可以选择使用自签名根证书或自定义根CA的证书。
set
add manager
1 |
|
指定manager
1 |
|
节点信息
1 |
|
add work
在 work node 也run ssh
1 |
|
set task
1 |
|
- 该docker service create命令创建服务。
- 该–name标志命名该服务helloworld。
- 该–replicas标志指定1个正在运行的实例的所需状态。
- 参数alpine ping docker.com将服务定义为执行命令的Alpine Linux容器ping docker.com。
docker service ls