开源推动者与 Android 专家 Jack
Wallen 近日发表了一篇文章,预测了未来的开源局势,他认为
2020
年的开源前途一片光明。

Kubernetes和容器正在改变应用的构建、部署和管理方式。以下这些发行版正在引领这一变革。
如果你需要大规模的容器编排,就可以借助Kubernetes这个项目。这个出自谷歌的开源容器编排系统备受好评,不仅得到了良好的支持,而且发展势头迅猛。

作者:木环、易立

2017年的云计算市场,有一个领域获得了空前的关注 — Kubernetes。
Kubernetes可以追溯到2014年,当时Google公开发布了该项目的开源代码。2017年,Kubernetes广受欢迎,几乎所有的主要IT供应商都支持这个平台。

威尼斯城真人赌钱网站 1

尽管如此,Kubernetes仍存在庞大、复杂,并且难以搭建和配置的问题。不仅如此,它还将许多繁重的工作留给了终端用户。因此,最好的方法是不要自己单独去尝试它们,而是寻找一个含有Kubernetes的完整的容器解决方案。在这个解决方案中,Kubernetes会被作为组件得到支持和维护。

编辑:小智

小数今天推送的这篇文章,为您揭示Kubernetes与Docker容器之间是怎样的关系?对企业客户又意味着什么?

Image: Getty Images/iStockphoto

我在这里列出了12个最具知名度的Kubernetes解决方案,它们实际上是整合了Kubernetes和容器工具的发行版,也就是由众多厂商推出的带有Linux内核和用户层的发行版。

时至今日,IT 圈已经进化到开源与商业不再剑拔弩张的时代。

1

Jack 总结了以下几个方面:

需要注意的是,本文重点关注的是可在本地运行或可被云托管的软件发行版,不包括如亚马逊EKS或谷歌Kubernetes引擎等专用的云服务。

1.时至今日,没有人质疑容器技术的未来

Kubernetes是一个开源项目,提供容器编排,部署和管理功能。自 2015 年
7月以来,它一直是由Linux基金会下的云原生计算基金会(CNCF)运营。尽管Kubernetes不再只是Google的一个项目,Google仍然贡献了远大于比其他任何机构的代码量。

1、Deepin Linux 将改变开源格局

Deepin 15.11 计划发布一项功能——Deepin Cloud Sync,该功能可能会改变 Linux
发行版的版图。 

此功能会将选择的系统设置同步到云中,例如可以安装操作系统的另一个实例,将其连接到
Deepin Cloud Sync
帐户,然后让该操作系统的新实例自动同步设置。想象一下,部署多个桌面实例将节省多少时间。结合使用
Deepin 桌面的华丽程度,使用者体验将会很好。Deepin Linux
将会引起轰动,将成为许多使用者最喜欢的发行版。

CoreOS Tectonic

现在,没有人会否认容器技术的作用与地位。2013 年 Docker
问世,热度迅速蹿升并被大范围使用,如此势头在开源界当属少见。

将AIX应用程序迁移到云的最佳实践

2、预装 Linux 的机器会更多

这将有助于 Linux
提升其市场份额,甚至可能首次达到接近两位数的水平,相信会有更多的 OEM
厂商开始销售预装 Linux 的计算机。目前已经有
System76、Dell、Pine64、Lenovo、ThinkPenguin 与 Star LabTop 等,到 2020
年底,预计不仅预装 Linux 的小型 OEM 会增加,也有一些较大的 OEM。预计
Acer、HP 与 ASUS 都会加入竞争。

CoreOS提供了专注于容器的Linux发行版,并且可以与Docker兼容,不过它有着自己的镜像格式和运行环境。与此同时,还提供了一款企业级Kubernetes发行版。两者一起共同构成了CoreOS
Tectonic堆栈的基础。

DataDog 连续三年发布 Docker 问卷调查,2017 年报告显示 Docker
的采用率上升 40%。

Kubernetes
2017年如此耀眼,2018年Kubernetes将继续成为一支重要的力量。要理解这点,首先要认识到这项技术和云计算的完美契合之处。

3、开源将主导其企业

在企业业务中,开源无处不在,它在云、容器、大数据、物联网、边缘计算等领域中都是基础。目前 Linux
在企业领域中尚待征服的是台式机。

到 2020 年底会有改变,原因是安全。预计 Windows
勒索软件攻击将再次增加,这将导致一些企业寻找更可靠的替代方案,也就是
Linux。意识到多少工作流和工作能力依赖于开源的公司也可能会推动这一转变。

CoreOS操作系统Container
Linux与众不同,主要是因为它们被作为一套容器化组件交付。这样一来,操作系统的自动更新可以在不影响应用正常运行的情况下顺畅地进入到生产环境中。CoreOS还表示他们可以对Kubernetes进行一键更新。CoreOS
Tectonic可以在亚马逊网络服务、微软Azure和裸机上运行。

调查数据显示 2015 年起就有不少大型公司已经开始尝试使用 Docker,并且近
60% 的企业宣称使用 Docker 的机器规模超过 500 台,不过 100-499
台规模的使用比率也获得了显著上升。有分析认为 Docker
的出现在早期解决的是大公司痛点问题,而现在 Docker
正在寻求成为各类公司的通用平台技术。

在过去三,四年中,越来越多的企业选择使用Docker容器来部署云工作负载。Docker容器提供的既是运行容器化应用程序的运行时,也是封装和交付容器应用的格式。容器提供了直接在虚拟机管理程序内部改善可移植性和效率的承诺。

4、Docker 将反弹

这里说的是 Docker 项目而不是 Docker 公司。2019 年对
Docker 来说并不好,Kubernetes 成为了首选的容器编排工具,但是相信 Docker
将会有一些发展,这些发展可能包括更强大、友好的
swarm 工具或新的客户端工具,以使编排容器集群变得容易。

能够使得 Docker 复出的原因是易于管理,随着 Kubernetes
变得越来越强大,它也变得越来越复杂,如果 Docker
可以在保持其功能和灵活性的同时恢复简单性,则它将重新获得一些市场份额。

Canonical 版的Kubernetes发行版

Sysdig 调查了 4.5 万个企业,统计显示平均每台机器上会运行 10
个容器实例,甚至有企业在一台机器上启用 95 个容器实例。当 Docker
逐渐生产环境中不可或缺的部分之后,势必要寻求工具更高效地管理和编排这些容器。目前市面上被广为熟知的编排方案是
Kubernetes、Mesos、Amazon ECS、Google Engine 等,而 Docker
也推出了自己的原生系统编排方案。

随着容器使用量的增长,需要对容器集群进行编排,调度和控制。这就是Kubernetes适合的地方。Kubernetes提供了大规模运行容器的编排系统和管理平台。还提供了一系列API抽象,使其他技术可以插入,使平台具有很强的可扩展性,并且能够支持各种不同的供应商部署用例。

5、开源自动化将令人恐惧 

由于推动了更高效率的 CI/CD 管道的发展,我们见证了令人印象深刻的自动化技术的兴起。借助
Helm、Terraform 和其它以 Kubernetes
为中心的工具,可以创建可自我更新、测试代码并且在出现问题时不将其推向生产的系统。 

到 2020
年,开源自动化将接近科幻小说的程度,其系统会自行“思考”,并且我们将首次体验一种基于经验(来自
AI)和预测进行自我优化的系统。最大的问题是:这些系统将与任务隔离多远,一旦它们通过某个未知事件范围,我们是否能够将其关闭?

Ubuntu
Linux的开发商Canonical也推出了自己的Kubernetes发行版。Canonical版的Kubernetes发行版的一大卖点是它们立足于已得到广泛推崇并部署的Ubuntu
Linux发行版。Canonical称,其堆栈可以在任何云端或本地运行,并且支持由CPU和GPU驱动的工作负载。付费用户可以让Canonical工程师远程管理他们的Kubernetes集群。

2.Kubernetes vs Docker Swarm 两股流派

比其核心编排能力更重要的是,Kubernetes在2017年成为实现多云世界的事实平台。虽然AWS在2017年继续主导公有云,但企业仍然希望能够在多个云上部署和运行应用程序。

6、NVIDIA 将展示其 Linux 的巨大惊喜

NVIDIA 宣布在 2020 年将为 Linux 推出一个很大的惊喜,相信 NVIDIA
计划做这样的事:为 Nouveau 驱动程序做贡献,或者开源其官方 NVIDIA
驱动程序。NVIDIA 看到了很多东西,而加入 Linux 是前进的唯一途径。 

对于 Linux 来说,这将是一个巨大的胜利,其原因有两个:Nouveau
驱动从未如此出色地用于游戏;如果 NVIDIA 开始为 Nouveau
驱动做出贡献或将其官方驱动开源,那么这可能是 Linux
台式机游戏的福音,并且可以推动 Linux 普及率的上升。玩家会喜欢比 Windows
更可靠和安全的平台,我们将看到 Linux
不仅会以两位数的市场份额狂涨,而且可能会超越 macOS 成为第二名。

(文/开源中国)    

Canonical 和 Rancher 实验室共同推出了 一款名为云原生平台的产品,该产品将
Canonical的Kubernetes发行版与Rancher的容器管理平台整合到了一起。其理念是使用Kubernetes来管理每个集群中运行的容器,同时使用Rancher来管理多个Kubernetes集群。Cloud
Native Platform 将随 Rancher 2.0 一起推出,目前仅提供了测试预览版。

Kubernetes
出身于谷歌,是其多年大规模容器管理技术的开源版本,在容器浪潮中完成了短时间内的迅速发展,是目前容器生态中最受欢迎的开源项目。项目于
2014 年 6 月首次亮相 GitHub,即 Docker
项目开源的一年多之后;项目已经被捐赠给
CNCF组织,其目标是成为“跨集群的应用级别容器部署、扩展和运维自动化平台”,它会支持包括
Docker 在内的一系列容器工具。

容器提供了运行应用程序的基本包装,可以在任何支持容器的云上部署。有了Kubernetes,就有了一个平台,可以帮助企业在运行Kubernetes的云或本地部署管理容器的部署和编排。

Docker 社区版/Docker 企业版

而 Docker Swarm 则是 Docker 主推的原生的集群工具,意图让用户像使用单机
Docker API 一样来驱动整个集群。2016 年 7 月发布的 Docker1.12 把 Swarm
内置到 Docker 中,这种内置的做法引来了一些争议,有人认为这对 Kubernetes
和 Mesos 造成了一定的威胁。

云中的Kubernetes

对于我们当中的大多数人来说,Docker就是容器。自2014 年以来,Docker
拥有了自己的集群和编排系统Docker Swarm,直到近期它们还是 Kubernetes
的竞争对手。然而在2017 年 10
月,Docker宣布将不做任何修改处于原本状态的Kubernetes作为Docker社区版和
Docker Enterprise 2.0 的标准插入式组件。

在很多人眼里,Kubernetes 更开源、汇聚了更多的力量,而 Docker Swarm 则是
Docker 处于商业化的本心。这里,先抛开 Kubernetes 和 Docker
的历史背景,也不提两者社区背后曾经有过的争论;我们单纯从技术设计的角度来看看两者技术层面的差异。

一颗种子总会发芽,结出硕果。在作为开源技术的短短3年时间里,Kubernetes成为基于容器的工作负载的默认编排引擎。虽然捐赠的是1.0版本,但是谷歌在大规模运行容器方面有十年的研究和经验。

简而言之,Docker公司已经认识到自己将会遇到大麻烦,并承认Kubernetes比Swarm更适合管理大型复杂的容器环境。尽管如此,Docker仍然为低强度工作保留了其初始的集群系统,比如位于防火墙后面的本地应用,这些应用在数量上不会有大的增长。

遵循的两种网络标准

Google是否在内部使用Kubernetes?来自Kubernetes博客:“Google上的许多开发人员都是以前在Borg项目上的开发人员。我们已经将Borg的最佳创意融入了Kubernetes,并试图解决用户在多年来与Borg确定的一些痛点。”

Heptio Kubernetes付费版

在不同的用户环境中,如公共云、专有云、混合云中,容器的网络模型都有不同之处,为此容器平台提供了插件机制,来支持不同的网络实现。目前关于容器网络接口的配置主要有两种标准:容器网络模型和容器网络接口

谷歌在一些内部项目中使用Kubernetes的声音很清晰,且很快就会改变一些现有的关键产品。即使未来需要更好的展示,Kubernetes也可以轻松定制
– 最大的好处是可以根据需要将自定义组件与现有组件进行混合和匹配。

为了提供基于 Kubernetes 的服务和产品,Kubernetes 的两位发明者Craig
McLuckie 和Joe Beda 共同创立了Heptio。他们的第一个主要产品是Heptio
Kubernetes 付费版,这是一项需要付费的 Kubernetes
部署服务,由Heptio提供24/7 全天候支持。起步价为每月 2000 美元。

CNM 由 Docker 主导,吸引了 Cisco、VMware 等公司的应用;而 CNI
更归属社区,被运用于 Mesos、Cloud Foundry、K8S 之中。

以下是Google在过去几年 Kubernetes 的搜索量增长情况:

Heptio的主要卖点是提供没有厂商锁定的企业级Kubernetes。该产品可以运行在公有云或私有硬件上。由Heptio提供的所有Kubernetes配置管理工具都是开源的,补丁可以直接推送到受支持的集群。

CNM 是 Docker 主导的网络方案,而且 libnetwork 和 Docker
原生编排等能力紧密集成在一起,内置的服务发现和负载均衡等能力对于开发者而言非常友好。但是正因如此,也对网络驱动的实现带来了一定挑战,在
Docker 17.06 中 Swarmkit 开始支持 node scope
网络,会简化一部分网络模型支持的复杂性。

威尼斯城真人赌钱网站 2

相关文章