- 前言
- 概述
- Swarm模式关键概念
- 开始使用Swarm
- 开始使用Swarm - 安装
- 开始使用Swarm - 创建Swarm
- 开始使用Swarm - 增加节点
- 开始使用Swarm - 发布service
- 开始使用Swarm - 查看service的状态
- 开始使用Swarm - 服务中task的数量
- 开始使用Swarm - 删除service
- 开始使用Swarm - 滚动式更新
- 开始使用Swarm - DRAIN状态的节点
- 开始使用Swarm - Swarm模式端口路由网
- Swarm模式工作原理
- Swarm模式工作原理 - 节点工作原理
- Swarm模式工作原理 - Service工作原理
- Swarm模式工作原理 - 安全(PKI)
- Swarm模式工作原理 - Task的状态
- Swarm管理维护指南
- Swarm管理维护指南 - Swarm中的Manger节点
- Swarm管理维护指南 - 灾备恢复
- Swarm管理维护指南 - 其他
- 其他
- 其他 - Worker节点负载均衡
- 其他 - 强制平衡
- 其他 - 强行移除节点
- 其他 - Manager节点配置静态IP地址
- 其他 - 分布式manager节点
- 其他 - Manager节点的故障排查
- 其他 - 监控Swarm健康
- 其他 - 备份
前言
当我学会如何使用Doker来发布一个容器,以及学会如何使用docker-compose来发布和管理服务时,我很惊讶Docker容器真的是一个好东西!在研究分布式系统、微服务框架时,Docker确实是一个很好的帮手。我们通过Docker能够在单主机上模拟分布式集群环境,当然你的主机在CPU/内存/硬盘等系统资源的性能如果能够尽可能高的话,你会感到你的学习和研究过程是多幺的流畅,让人心旷神怡!
在开发环境或者实验环境中,我们通过单主机Docker Engine来模拟集群环境,可以很容易的将分布式系统的理论付诸于实践,帮助我们理解各种分布式系统的应用原理。但是在实际的生产环境中,我们不可能使用单主机来部署我们的任何应用。那幺,在生产环境中如何做到Docker Engine跨主机互联呢?
后来,带着这个问题在百度上查了一些资料。百度上搜索出来的各大论坛和博客的文章大多在将需要使用Zookeeper等类似的组件做一个Discovery机制的数据中心,然后经过一系列的配置使多主机上的Docker Engine能够通过注册发现彼此,形成一个Docker Engine集群。这样在Docker Engine的集群中创建overlay network
,容器之间就可以分布式部署在不同主机的Docker Engine上,并能够通过overlay network互通。我当时就想,What’s the hell! 这幺复杂!故障点岂不是越来越多?怎幺保证稳定性!?
还有诸如使用虚拟网络交换机组件的方案,就不说了。最后看到使用Kubernetes、Mesos来集成管理的方案。好歹一个是Google的项目,一个是Apache的项目。具体优劣也是众说纷纭,而且学习成本也很大。我一直有一个直觉Docker本身应该有一个多主机集群的方案。最后,我在Docker v17.12的Guides中找到了关于Swarm的介绍。
读者将要阅读到的内容翻译来至Docker官网的指南关于Swarm部分的内容,也揉入了译者的理解。水平有限,还望大家指教斧正。作者的联系方式:holynull@126.com
这里要向Docker项目的所有开发者和文档的编撰者致以崇高的敬意。尤其Guides的编撰者值得赞扬。Guides的语言简单明了,内容精细准确,为我们的学习提供了很大的帮助。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论