10个业界最流行的Kubernetes发行版

若是你须要大规模的容器编排,想必Kubernetes毋庸置疑是你的首要选择,这一由谷歌推出的开源容器编排系统近年来发展飞速,大受业界及广大用户好评。html

尽管如此,对于大多数用户而言,Kubernetes存在着学习曲线陡峭、难以设置和配置的问题,致使终端用户须要承担繁重的管理工做。基于此,最佳的解决办法并不是单枪匹马学习并直接上手Kubernetes,而是寻找一个完善的容器技术解决方案,这种方案一般将Kubernetes纳为其支持和维护的组件之一,使用起来一般更直观和简洁,如此一来便极大程度下降了Kubernetes的上手门槛。docker

在本文中,我列出了10个业界最流行的Kubernetes相关产品,包括了Kubernetes发行版、容器工具、不一样的供应商提供的Linux内核等等。ubuntu

本文的列表不包括Amazon EKS或者Google Kubernetes Engine(GKE)这样的云服务,仅仅列出了能够在本地运行或做为云托管的软件发行版。安全

目 录服务器

  • Rancher 2.0
  • CoreOS Tectonic/Red Hat CoreOS
  • Canonical Distribution of Kubernetes(CDK)
  • Docker 社区版 / Docker 企业版
  • Heptio Kubernetes 订阅
  • Kontena Pharos
  • Pivotal 容器服务 (PKS)
  • Red Hat OpenShift
  • SUSE 容器服务平台
  • Telekube

十大Kubernetes发行版架构

Rancher 2.0负载均衡

https://rancher.com/kubernetes/运维

严格来讲,Rancher 2.0并非一个单纯的Kubernetes发行版,而是一个开源的Kubernetes管理平台。Rancher 2.0 为企业用户提供Kubernetes-as-a-Service (Kubernetes即服务),且可以实现多Kubernetes集群的统一纳管,不论这些Kubernetes集群在何处、以何种方式部署。这解决了生产环境中企业用户可能面临的基础设施不一样的困境。Rancher 2.0能统一纳管来自Google(GKE)、Amazon(EKS)和Azure(AKS)等公有云上托管的Kubernetes服务的平台。分布式

Rancher Labs公司在2019年发布了提供轻量级的Kubernetes发行版,K3s。这款产品专为在资源有限的环境中运行Kubernetes的研发和运维人员设计。其每一个服务器实例仅需512MB RAM以及200MB的磁盘空间。它删除了旧的、非必须的代码,整合正在运行的打包进程,使用containerd代替Docker做为运行时的容器引擎,并在除etcd以外引入了SQLite 做为可选的数据存储,经过这些变化极大地减小了运行所需的空间和资源。工具

CoreOS Tectonic/Red Hat CoreOS

https://coreos.com/tectonic/

CoreOS提供以容器为中心的Linux发行版,它兼容Docker,但又有固定的镜像格式、它本身的runtime、以及一个“企业级Kubernetes发行版”。上述这些共同构成了CoreOS Tectonic堆栈的基础。

CoreOS操做系统Container Linux是业界的一大流行产品,它的亮点之一在于它就像一组容器化组件,用户无需关闭正在运行的应用程序,便可将操做系统的自动更新整合到生产环境中。CoreOS还能够对Kubernetes进行“一键式”更新。此外,CoreOS Tectonic能够在Amazon Web Services、Microsoft Azure以及裸机上运行。

Red Hat收购了CoreOS以后,计划将其集成到Red Hat OpenShift中。Container Linux将被从新命名为Red Hat CoreOS。此举预计将在2020年以前完成,在此以前Container Linux将继续获得支持。根据Red Hat的说法,过渡后将提供“几乎全部”CoreOS Tectonic的功能。

Canonical Distribution of Kubernetes(CDK)

https://ubuntu.com/kubernetes

Canonical,Ubuntu Linux的制造商,也拥有本身的Kubernetes发行版,即Canonical Distribution of Kubernetes(CDK)。该发行版的一大卖点是它是一款普遍受到支持、易于理解且广泛部署的Ubuntu Linux发行版。Canonical声称其堆栈既能够在任何云上运行,也能够在本地部署,并支持CPU和GPU驱动的工做负载。付费客户还能享受Canonical的工程师远程管理他们的Kubernetes集群的服务。

Canonical的Kubernetes发行版也有轻量级版本的,叫Microk8s。开发人员以及Kubernetes新手能够在笔记本或者台式机上安装Microk8s,将其用于测试、实验,甚至在那些硬件配置低的生产环境中使用。

此外,Canonical和Rancher Labs共同开发了一个产品叫作“云原平生台(Cloud Native Platform,简称CNP)”,它将Canonical的Kubernetes发行版和Rancher的容器管理平台相匹配。如此,就可使用Kubernetes管理运行在每一个集群上的容器而且用Rancher管理多Kubernetes集群。目前,CNP已经在Rancher 2.x的版本中可使用。

Docker 社区版 / Docker 企业版

https://www.docker.com/products/kubernetes

对于不少人来讲,Docker仅仅是容器。但实际上,2014年以后Docker也有它本身的集群和编排系统,Docker Swarm,而这一系统曾是Kubernetes的竞争对手。直到2017年10月,Docker宣布将在其未经修改的、永久标准的状态中添加Kubernetes做为标准打包方式,这一调整涵盖了Docker Community Edition和Docker Enterprise 2.0及之后的版本。

Docker Enterprise 3.0添加了Docker Kubernetes服务,这一Kubernetes集成能够保持开发人员桌面和生产部署环境中Kubernetes版本一致。

简而言之,Docker公司已经意识到Kubernetes比Swarm更适合管理庞大、复杂的容器环境。然而,Docker依然包括其原始的集群系统“swarm 模式”,它更适用于那些不太复杂的工做,例如部署一个无需扩展太多的本地的、受保护的应用程序或者维护不须要修改的现有swarm模式集群。

Heptio Kubernetes 订阅版

https://heptio.cloud.vmware.com/

Kubernetes的两位创始人Craig McLuckie和Joe Beda,创办了Heptio,主要围绕Kubernetes提供服务和产品。他们第一个主打产品是一个付费的Kubernetes部署服务, Heptio Kubernetes Subscription(HKS)。Heptio提供全天候的技术支持,收费是每个月2000美圆及以上。

Heptio的主要优点在于它是企业级的Kubernetes,又不惧怕厂商锁定。它能够在公有云或者私有硬件上运行部署。全部Heptio提供的用于管理Kubernetes配置的工具都是开源的,而且修复程序能够直接交付到支持的集群。

2018年VMware收购了Heptio,不过这次收购目前暂未影响Heptio的产品计划。

Kontena Pharos

https://www.kontena.io/pharos/

Kontena Pharos的定位是“Kubernetes that just works”,它与Red Hat的Linux产品拥有大体相同的“剧本”。底层架构是通过CNCF认证的Kubernetes发行版,能够在Apache 2许可下使用(和Fedora或CentOS同样)。付费客户能够得到专业级功能、技术咨询、支持服务和特定固订价格的产品,好比迁移到云原生基础设施。

核心Pharos发行版默认配置了自动安全更新和多个容器运行时等基本功能。付费的版本则添加了企业工具,好比Kontena Lens面板、Kontena Storage分布式存储系统、备份、负载均衡以及在内网隔离环境中部署集群。

专业版有30天的试用期,订阅的费用为每个月近3000美圆起。而开源的版本则没有时间的限制也不须要许可费用。

Pivotal 容器服务 (PKS)

https://pivotal.io/cn/platform/pivotal-container-service

Pivotal,以其在Cloud Foundry上的表现而为人熟知,它拥有企业级Kubernetes服务,即Pivotal Container Service(PKS)。PKS吸收了许多其余Pivotal项目的灵感,例如,它使用曾经用于Pivotal的Cloud Foundry的Kubo项目来启动和管理Kubernetes集群。

PKS一个最突出的特性是与VMware虚拟机堆栈紧密集成,事实上,PKS是VMware-Pivotal的联合项目。运行在PKS上的容器能够访问在vSphere上运行的虚拟机可用的服务,譬如VMware VSAN中的持久存储。此外,PKS能够经过用于在公有云和私有云环境中管理VMware基础设施的VMware Cloud Foundation进行管理。

简而言之,任何使用VMware而且对Kubernetes愈来愈感兴趣的企业可能但愿研究PKS以充分利用他们现有的VMware设置。

Red Hat OpenShift

https://www.redhat.com/en/technologies/cloud-computing/openshift

OpenShift是红帽的PaaS产品,最初使用与Heroku buildpack相似的“盒式磁带”打包应用程序,而后将其部署在称为“齿轮”的容器中。而后Docker出现了,OpenShift通过了从新设计,使用新的容器镜像和运行时标准。不可避免地,Red Hat采用了Kubernetes做为OpenShift中的编排技术。

OpenShift还为PaaS中的全部组件提供抽象化和自动化。这种抽象和自动化扩展到Kubernetes,会带来至关大的管理负担,所以OpenShift能够用来缓解这一过程,做为部署PaaS的更为重要的一部分。

如上文所提到的,CoreOS Tectonic正在合并到Red Hat OpenShift中,虽然技术合并预计要到2020年才能完成。

SUSE 容器服务平台

https://www.suse.com/products/caas-platform/

因Linux 发行版而在欧洲广为人知的SUSE也拥有 SUSE CaaS平台。概念上,SUSE CaaS平台让人想起CoreOS Tectonic,它结合了运行容器的裸机“微型”操做系统、Kubernetes、内置的镜像仓库和集群配置工具。

SUSE CaaS Platform3于2018年发布,在这一版本中添加了多主机功能以使集群更能适应主节点崩溃和内核调整功能,以便对包含的Linux内核进行自定义调整。

SUSE CaaS平台能够在公有云和本地裸机上运行,但需注意SUSE目前没法支持任何与底层云基础架构的集成。这意味着SUSE CaaS平台不是为了补充Amazon EKS或Google Kubernetes Engine而设计的,而是为了规避他们,让您能够跨多个云和数据中心运行容器。

Telekube

https://gravitational.com/gravity/

Teleport SSH服务器的所属公司Gravitational开发了Gravity,这是一种在本地或远程集群上运行的“强化生产”Kubernetes发行版。Gravity的定位是私有SaaS平台的解决方案或在多个区域及托管提供商中运行Kubernetes-as-a-service。

Gravity上的应用程序要想在Kubernetes上的容器中运行,必须作一些前提准备。它们必须首先被打包成“Bundles”,这些“Bundles”以后会被发布到Kubernetes集群进行分发。这些“绑定”属于额外工做,除此以外咱们常见的部署容器应用程序所需的准备工做也仍然须要作,不过Bundle清单也是Gravity惟一须要的额外工做了。

Gravity包含拍摄整个Kubernetes集群的快照的功能,其中包括全部的应用程序和配置,而且用户能够部署快照到任意其余Kubernetes环境中。

结 语

Kubernetes和容器正在改变应用程序的建立、部署以及管理的方式。而本文列出的这些Kubernetes发行版,正在引领着这场变革。

原文连接:

https://www.infoworld.com/article/3265059/10-kubernetes-distributions-leading-the-container-revolution.html

相关文章
相关标签/搜索