欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

docker swarm官方简介

程序员文章站 2022-05-09 20:38:15
要使用docker的swarm(集群)模式,先安装docker。查看官方安装简介来了解不同操作系统和平台的安装方式。 目前的docker版本原生就包含swarm模式,用来管理叫做swarm的...

要使用docker的swarm(集群)模式,先安装docker。查看官方安装简介来了解不同操作系统和平台的安装方式。

目前的docker版本原生就包含swarm模式,用来管理叫做swarm的,由多个docker引擎组成的集群。使用docker命令行接口来创建swarm,发布应用服务到swarm并管理swarm。

如果你用的是docker1.12.0及以前的版本,你可以安装单独的swarm,但我们建议你升级docker。

特性介绍

作为docker引擎一部分的集群管理:用docker引擎的命令行接口来创建一个docker引擎的集群,用来部署应用服务。你不需要额外安装软件来创建或管理集群。(译者注:就是docker自带的集群编排管理工具,兼容性好,学习成本低(相比kubernetes))。

分散化设计:不是在发布时处理不同的节点角色,而是在运行时,docker引擎才会根据不同的节点角色区别处理。你可以用docker引擎发布节点,管理者和工作者等各种角色。这意味着你可以用一个磁盘镜像构建整个集群。

声明式服务模型:docker引擎通过声明式的接口来允许你定义应用栈中服务的希望的状态。比如,你可以定义一个由包含消息查询功能的web前端和一个数据库后端组成的应用。

可伸缩:对于每个服务,你可以声明你想要允许的任务(task,应该是运行任务的容器)数量。当你伸缩服务时,集群管理器会通过添加或删除任务来自动到达你期望的状态。

期望状态的保持:集群管理器会不断监控集群状态,并会消除任何实际状态和期望状态之间的差别。比如,如果你设置一个服务允许一个容器的10个副本,然后一个运行着副本中的2个的工作机器挂掉了,管理器会创建两个新的副本来代替挂掉的副本,并会把新的副本分配给正在运行且可用的工作机器。

多主机的网络:你可以为你的服务指定一个overlay式网络。当集群初始化或更新应用时,集群管理器会自动给网络中的容器分配地址。

服务发现:集群管理器会给集群中的每个服务提供唯一的DNS名和运行在容器中的负载均衡功能。你可以通过集群内置的DNS服务器来查询集群中的每个容器。

负载均衡:你可以把服务的端口暴露给外部的负载均衡器。在内部,集群允许你指定如何在节点间分布服务容器。

默认的安全保证:每个集群中的节点都会开启TLS相互认证(TLS mutual authentication),并会加密它和其他节点间的安全通信。你可以选择是用自定义的root认证还是从常用的rootCA认证。

滚动更新:在首次发布时,你可以递增地把服务发布到节点上。集群管理者允许你控制服务发布到不同节点集之间的延时。如果发布出问题,你可以把服务回滚到上一个版本。