我们很高兴地宣布第一个Swarm的Beta版已经发布, 它是一个Docker的本地集群工具. 过去的两年里, Docker让数以百万计的开发人员的生活变得简单,通过容器来使构建, 传输和运行应用变得简单. 但是, 当处理在一个分布式环境下超过一个主机的Docker容器时,事情就变得复杂起来. 这就是Swarm应用的地方. Swarm将几个Docker引擎集合起来作为一个单独的虚拟Docker引擎暴露给外界. 它提供标准的Docker API, 所以任何已经在Docker工作的工具现在都可以透明地扩展到多个主机. 回到十二月份, 为了解决在分布式环境下工作的问题, 我们发布了一个Swarm的技术预览版, 它基于这几个核心原则:
|
特性简单设置 因为 Swarm 是一个标准的 Docker image 并且不依赖于外部的架构,启动它是简单的三个步骤:
关于设置的过程请参考 documentation. Docker API兼容性 大部分 Docker API 端都可以在Swarm上找到,这意味着基于Swarm上构建的工具都是可以使用的这些API,包括Docker CLI. 这就为Docker用户确保了一致性:无论你是在你的笔记本上开发,在准生产环境上测试或者部署在有几百台主机的生产环境,使用感受都是一样的因为你将使用和你已经熟悉的相同的工具。
命令行的后面,Swarm将会在其中的一个主机上创建一个container,并且将标准的输入/输出代理会CLI。 |
资源管理Swarm认为在集群上资源是可用的,并将放置相应的容器。 标准的布局策略(placement strategy)考虑资源容器的需求,并且利用可用的主机资源组成的集群去优化布局,并使用了一个容器包装算法。 举例来说,下面的命令将会调度一个Redis容器在任何有足够资源的机器上操作1G存储。 docker run -d -m 1g redis
|
相关性
|
高可用性调度器
|
合作伙伴
|
编配Swarm是Docker编配工具的一部分,与Machine和Compose并列。这三种工具可以单独使用,但同样设计用于协同工作。 想了解使用它们协同工作,可以阅读这篇博文:用Machine,Swarm和Compose编配Docker. 感谢我们想要感谢所有通过提交贡献来使这个版本发布的社区成员,他们是: Chanwit Kaewkasi, Jeff Chien, Pierre Wacrenier, Shijiang Wei, Jessica B. Hamrick, Rob Haswell, zhangbaitong, Ankush Agarwal, Derek Schultz, Gp De Ciantis, Keegan Lowenstein, Luke Marsden, Matt Drollette, Matthew Fisher, Nick Schuch, Omer Katz, Radek Simko, Ranjandas, Thimo, Thomas Meson. 了解更多关于Swarm的信息
|
文章转载自:开源中国社区 [http://www.oschina.net]
本文标题:使用 Docker Swarm 对 Docker 进行规模扩展
本文地址:http://www.oschina.net/translate/scaling-docker-with-swarm
参与翻译:社会主义好, 无若, 吴利明
英文原文:Scaling Docker with Swarm