几年前,Docker在IT行业可谓是家喻户晓,遍地开花。每个中小型公司都已经或是即将采用它。
然而,随着Kubernetes的出现,情况一下子改变了。过去两年,当你走进一场会议,求职面试,或是参加技术大会,Kubernetes的声音几乎无处不在。
于是当Kubernetes在上个月最新的Changelog中宣布,自Kubernetes v1.20之后将弃用Docker作为容器运行时的时候,关于Docker的与kubernetes的讨论再度热闹了起来,有人以为Docker大势已去,无法和Kubernetes竞争,不能再用了。
其实,将Docker和Kubernetes做对比是不恰当的,虽然它们都受益于容器并大放异彩,但两者并不是直接竞争对手。
"Kubernetes vs. Docker"?
你恐怕搞错了对象
在探讨Docker和Kubernetes之前,我们有必要先了解容器。
过去,当开发人员编写代码时,他们是在自己的本地开发环境中工作。当他们准备将这些代码转移到生产环境中时,有时就会出现一些问题:在开发环境中完美运行的代码,在生产环境无法工作。而这里包含了各种原因,比如不同的操作系统、不同的依赖关系、不同的库等等。
因此容器的出现解决了关键的可移植性问题,它允许你将代码与运行在底层基础架构上的代码分开。开发人员可以将其应用程序(包括正确运行所需的所有bin和库)打包到一个小的容器镜像中。在生产环境中,该容器可以在任何有容器化平台的计算机上运行,由此大大提高了交付效率。
*我们看到容器的图片通常用“集装箱”来展示,这也是容器是集装箱思想的体现。现代化的起重机可以自动在卡车、轮船和火车之间高效地装卸、重叠和移动集装箱,而容器就是为代码提供了一个基于容器的标准化运输系统。
什么是Docker?
如同今天很多人把Kubernetes当成容器的代名词,在Docker火热的时候,很多人也以为Docker就是容器。其实,这也是错误的认识,除了Docker还有CoreOS等。
Docker是一个开源的应用容器引擎,开发者可以打包他们的应用及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。
什么是Kubernetes?
Docker为封装和分发容器化应用提供了一个开放的标准,但也出现了一个新问题。如何对所有这些容器进行协调和调度?如何在不中断服务的情况下无缝升级一个应用?如何监控应用程序的健康状况,知道什么时候出问题并无缝重启它?
事实是,在现实生产环境中,容器不易于批量管理,大量容器需要编排系统。于是编排容器的解决方案很快就出现了,Kubernetes就是其中一个。编排系统充当基于容器应用程序的动态、全面的基础结构,使其能够在受保护的,高度组织化的环境中运行,同时管理其与外部世界的交互。
Kubernetes是一个开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。它是一个全面的系统,用于自动化部署、调度和扩展容器化应用,并支持许多容器化工具,如Docker。
Docker和Kubernetes的区别
Docker是用于构建,分发和运行Docker容器的平台和工具;而Kubernetes不包含用于创建或管理容器镜像的功能,并且它本身并不运行容器。因此两者的主要区别在于Docker在单个节点上运行,而Kubernetes设计为在集群上运行。
另一个区别是Docker可以在没有Kubernetes的情况下使用,而Kubernetes需要容器运行时才能进行编排。
所以,Kubernetes和Docker没有直接的可比性,根基不同,解决的问题也不同。当大多数人谈论"Kubernetes vs. Docker "时,更确切的说法是"Kubernetes vs. Docker Swarm"。后者才是Docker自己为Docker容器提供的原生集群解决方案。
戴尔科技为容器提供全方位支持
自2015年首次发布以来,Kubernetes已被广泛采用,并成为容器管理和编排领域的事实标准。而作为全球数字化转型领先企业,戴尔科技也在“与时俱进”,帮助用户从“容”不迫的迈出云原生之旅。
当前,容器的流行给企业的数据中心基础设施带来了重大挑战,存储就首当其冲。
容器的最大特点是“召之即来,挥之即去”,但企业的数据却需要长久的存储和备份。基于此,容器持久化存储以及由此延伸出来的持久化数据保护管理,之于数据独立于容器应用生命周期的存在就显得至关重要。
为此,戴尔科技提供了全新的解决方案,基于最新的CSI接口实现了存储插件的一系列功能,使得戴尔科技的企业级存储产品都能够轻松接入Kubernetes,真正为容器平台提供了高效、可靠、安全的持久化存储服务。
更关键的是,戴尔科技容器持久化存储还具备“软硬兼施”的能力。即VMware的vSphere也支持CSI,它与戴尔科技存储产品的CSI插件形成了“珠联璧合”的效果。
如果Kubernetes的环境是搭建在vSphere环境之上,客户就可以直接利用CSI访问vSphere环境里的vSAN、VMFS或NFS存储,但如果Kubernetes不是在VMware环境之上或者对存储有其他要求,比如性能、扩展性等,则可以选择戴尔科技的企业级存储。
不仅如此,戴尔科技还在市场上推出了第一个也是唯一一个同时针对虚拟机、应用程序和Kubernetes的企业级保护解决方案——PowerProtect Data Manager(PPDM),化解容器持久化数据保护管理的难题。
PPDM专为Kubernetes构建,客户通过使用Kubernetes API时,PPDM可以灵活地保护群集,PPDM也能自动发现、显示和监视Kubernetes资源。此外PPDM还具备无附加项节点亲近性等特点,最终以更高效、更安全的方式保护Kubernetes工作负载。
最后,在戴尔科技集团旗下VMware发布的全新解决方案——VMware Tanzu和VMware Cloud Foundation 4中,通过将容器与虚拟机统一为一体,用户可以在vSphere7.0下大规模地并行运行Kubernetes服务和虚拟化应用。
这也意味着戴尔科技云平台(DTCP)已成为支持现代化云原生应用程序和传统的基于虚拟机的应用程序。而VCF on VxRail作为戴尔科技云平台的核心构建块,戴尔科技云平台的此项升级,自然和VxRail有着密切的联系。
当前,VxRail已经同步升级到7.0版本,通过大幅降低使用Kubernetes和基于Kubernetes的开发者工具的复杂性,为用户提供了从单一环境到Kubernetes的简单直接路径。
IT管理员可以在熟悉的vSphere客户端环境中使用Kubernetes,同时启动并运行所有的关键应用程序,以推动现代化应用程序的创新。
尊敬的读者
随着2021新年的到来
戴尔科技开年第一“惠”盛情来袭
助企业新的一年牛气冲天!
多款服务器、工作站、商用笔记本
等产品限时优惠
更有0元试用、现金红包
等活动等你来参与
快来扫描下方二维码
或点击文末阅读原文
了解活动详情
相关内容推荐:来了!戴尔科技云平台正式引入Kubernetes