微信号:godocker

介绍:关于Docker容器虚拟化的技术及实践都在这里!

关于Docker Swarm的用途详细介绍

2016-04-06 19:21 吴秋林/Catlin

Docker Swarm 是一个为 IT 运维团队提供集群和调度能力的编排工具。用户可以把集群中所有 Docker Engine 整合进一个虚拟 Engine的资源池,通过执行命令与单一的主 Swarm 进行沟通,而不必分别和每个 Docker Engine 沟通。在灵活的调度策略下,IT 团队可以更好地管理可用的主机资源,保证应用容器的高效运行。


任何规模都有高性能表现

对于企业级的 Docker Engine 集群和容器调度而言,可拓展性是关键。任何规模的公司——不论是拥有五个还是上千个服务器——都能在其环境下有效使用 Swarm。

经过测试,Swarm 可拓展性的极限是在 1000 个节点上运行 50000 个部署容器,每个容器的启动时间为亚秒级,同时性能无减损。


  灵活的容器调度

Swarm 帮助 IT 运维团队在有限条件下将性能表现和资源利用最优化。Swarm 的内置调度器(scheduler)支持多种过滤器,包括:节点标签,亲和性和多种容器部策略如 binpack、spread、random 等等。

比如,如果 IT 团队想把封装最小化,就可以使用 binpack,binpack 可以把每个节点加载到最大量,然后才去部署下一个节点。Spread 采取均衡策略,将容器平均部署到一系列复杂节点上。Random 允许团队在集群里随机部署到节点。这种灵活性让 IT 运维团队可以选择最适合自身工作环境的运行策略。


   服务的持续可用性

企业与内外用户达成的服务水平协议,对公司应用环境的高可用性提出了很高的要求。宕机不仅会招致客户的不满,严重的还会伤害到经济利益。

Docker Swarm 由 Swarm Manager 提供高可用性,通过创建多个 Swarm master 节点和制定主 master 节点宕机时的备选策略。如果一个 master 节点宕机,那么一个 slave 节点就会被升格为 master 节点,直到原来的 master 节点恢复正常。

此外,如果某个节点无法加入集群,Swarm 会继续尝试加入,并提供错误警报和日志。在节点出错时,Swarm 现在可以尝试把容器重新调度到正常的节点上去。


和 Docker API 及整合支持的兼容性

Swarm 对 Docker API 完全支持,这意味着它能为使用不同 Docker 工具(如 Docker CLI,Compose,Trusted Registry,Hub 和 UCP)的用户提供无缝衔接的使用体验。

Docker Swarm 为 Docker 化应用的核心功能(诸如多主机网络和存储卷管理)提供原生支持。开发的 Compose 文件能(通过 docker-compose up )轻易地部署到测试服务器或 Swarm 集群上。Docker Swarm 还可以从 Docker Trusted Registry 或 Hub 里 pull 并 run 镜像。

综上所述,Docker Swarm 提供了一套高可用 Docker 集群管理的解决方案,完全支持标准的 Docker API,方便管理调度集群 Docker 容器,合理充分利用集群主机资源。


 
GoDocker 更多文章 乐视:基于Docker的RDS,我们是这样做的 Docker为整个软件生命周期提供安全保障 应用程序跑在Docker容器中会更安全 什么是持续集成?持续交付?持续部署? Docker生态不会重蹈Hadoop的覆辙
猜您喜欢 给女朋友的 iOS 开发教程 6 Meet iOS App 【AdMob】开发者必读-如何选择广告中介 踹车轮 连续3天直播,详解产品与设计间的微妙关系 你选择自由和快乐,还是所谓的“成功”