Docker 作为当下最火热的容器技术,备受瞩目。
国内多家企业都接入 Docker ,来将自己的业务放入容器中,实现更好的服务
作为容器技术核心的集群编排,自然是各家的重点
而容器编排技术,目前主要分为两大阵营Kubernets 和 Docker Swarm
Kubernets基于Google的容器管理工具Brog,顶尖大厂的实力不容忽视。
Docker Swarm则由Docker官方团队开发,和Docker核心联系更加紧密。
那么作为架构师的你,是如何选择Docker的集群编排工具呢?
来分享下你的选择,并说说你的理由
比如
我选择Kubernetes,因为Kubernetes能够给我更多的可能,我可以根据Kubernetes的API来实现更多的能力,而DockerSwarm由于是Docker官方推出的,目前还不够成熟,相比之下,我更相信Google多年的积累,而且Kubunetes 的社区非常的活跃,有非常多好用的特性。
By The Way:12月9日北京有一场云栖社区组织的Docker技术分享会。有兴趣可以报名~
https://yq.aliyun.com/promotion/138
淘公仔 x 1
阿里云代金券 x 3
王坚新著《在线》 x 1
Mesos, k8s, Swarm 三分天下。
Mesos 如同城邦制,每一个集群(Hadoop集群 Spark集群 Web集群)是一个城邦,开放一部分供中央议会来调度。支持有状态的服务。
K8S 是帝制,有一个(一群)leader 管理着大片江山。又有一个经验丰富的先帝 Borg。然而为了管理大量的臣民,设计了比较复杂的逻辑。对有状态的服务支持正在加强中。
Swarm 是古典共和制,也是中央集权。相较于其他两位,可以说得上是小而美。配置和架构都简单,更好融入 Docker 生态。管理大量臣民经验不足,有待观察
如果存在有状态的服务,如数据库什么的,安心用 Mesos 吧
如果集群规模比较大,上三位数,钻研 K8S
如果上述条件都不存在,还比较 Geek ,果断 Swarm
易立
已获得阿里云代金券
复制链接去分享
没有最好的技术只有最合适自己的技术,技术选型要根据自己的技能和业务需求。
如果是Docker技术入门不久,建议使用Docker Swarm、Docker Compose/和Docker Swarm mode因为易用性更好,和Docker生态兼容性更好
如果是Docker技术已经有一定基础,对Kubernetes提供的微服务特性感兴趣,可以使用Kubernetes。
阿里云容器服务提供了另外一种选择:一方面完全兼容Docker原生编排系统,可以方便地将现有应用无需修改就部署到云端;另一方面,提供了很多在微服务架构、DevOps增强;能够支持很多K8S的特性甚至更加简洁。同时以云服务的方式提供集群和Docker应用管理能力,无需部署维护复杂的容器基础架构,可以更加关注在自身应用之上。 如果有兴趣请参见团队博客中的众多示例。 https://yq.aliyun.com/teams/11
也欢迎阅读中国容器市场调查报告 https://yq.aliyun.com/articles/64791 参考大家的选择
谢谢!
1225178865366058
已获得阿里云代金券
复制链接去分享
k8s,大厂产品,最先占领市场。目前国内公司基本青睐这个架构。整体架构比较重量级。
swarmkit官方亲儿子,更多的与docker集成,安装操作都非常简单。整体来说功能没有k8s全面,架构较轻。服务有获取不到真实客户端IP的情况。
如果你要选择的话,目前来说小集群想要快速搭建,可以用用swarmkit。对于学习者来说,两个架构都值得研究。
顺便不太认同三者会有非常正面的冲突。各家的发展方向是明显不同的。
docker swarm 是docker生态中承上启下的关键一步。需要一个开包即用的集群,请使用docker大法。
k8s,你需要的是一个大而全,可定制化的,可管理大量服务器(4位数以上的服务器)的方案。可以根据自身的需求进行改变,不依赖其他生态。
K8s确实是比较重的。