K8s概述:几种集群方案的对比

本文对比了Docker Compose、Docker Swarm、Kubernetes(K8s)和Marathon+Mesos等集群方案,重点分析了K8s和Mesos的特性。K8s强调应用部署,具有丰富的组件和微服务理念,而Mesos侧重底层资源管理,采用双层调度。随着集群规模增长,K8s和Mesos各有优势,适用于不同场景。

几种集群方案简介

下面以docker部署为主,主流的容器化集群部署方案主要有以下几种:

  • Docker Compose:帮助在 同一个节点 上部署多个容器。
  • Docker Swarm:多台机器上部署容器。开箱即用,快速部署容器。偏重容器部署
  • K8s:社区活跃度高,组件丰富。微服务化,偏重应用的部署。
  • Marathon+Mesos:大数据组件部署。双层调度,侧重底层资源管理。任务调度需自己实现

compose支持在 同一节点 上部署,swarm支持在多个节点上部署容器。这两者都是docker原生支持的docker集群部署方式,开箱即用,比较方便,偏重于容器的部署。

swarm偏重的是容器的部署,而k8s偏重于应用的部署。k8s对容器的所有操作都渗透着为应用而服务的理念,比如pod是为了让联系紧密但又不适合部署在一起的应用分别部署在不同docker里面,但docker之间共享volume和network namespace方式,以便实现紧密地“交流”,在比如service是为了隐藏pod(容器的集合,下文会介绍到)的网络细节,让pod提供固定的访问入口,从而方便地让其他应用访问等。

在swarm中,被创建、调度和管理的最小单元就是docker。在k8s中,最小单元则是pod。

marathon+mesos,一开始是给大数据组件部署用的,这个框架是一个双层调度框架,侧重于底层资源管理。需要自己实现任务调度。

下面重点对比一下k8s和mesos。

k8s vs mesos

k8s

k8s一些概念

  • Node:资源节点的抽象
  • Pod:pod为kubernetes的最小管理单元,一个pod中可以部署多个容器,通常建议是一个容器
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值