首页 > 科技 > 正文

拥有 CRD,Kubernetes 可能要编排整个世界了!
2019-09-19 23:33:22   来源:东方头条   

【IT168 编译】随着周三官方发布的 Kubernetes 版本 1.16 进入普遍可用状态,大家都有这样一个疑问:企业数据中心的基础设施的容器、虚拟机、" 大数据 " 平台以及机器学习框架 ,所有的这些最终都要由 Kubernetes 来编排吗 ?

Kubernetes 针对 Docker 所做的工作已经不用再多说。从那天起,该公司就力求在开源社区、云计算本地计算基金会(CNCF)、Linux 基金会的合作企业中实现突出的地位。

在此期间,Kubernetes 几乎已经在所有涉及服务器端软件部署和管理的开源和商业平台项目中都有一席之地。 Red Hat 在去年 7 月被 IBM 以 340 亿美元收购之前,对 OpenShift 平台进行了重组。 ( 红帽的企业 Linux 平台,IBM 已经有相似产品。 ) Mesosphere 拥有自己的 DC/OS 平台,构建于已建立的 Apache Mesos 工作负载编排平台之上,并与微软建立了强有力的合作关系。

前段时间,VMware 宣布将全球最著名的虚拟化平台 vSphere 彻底改造为一个基于 Kubernetes 的系统,该系统还托管着 Kubernetes 环境。1998 年,当 Oracle 宣布获得 Red Hat 的认证成为其企业操作系统的软件供应商时,Linux 的创建者就知道他们的项目已经达到了临界量。到目前为止,Kubernetes 可能已经达到了临界点。

在 1.16 版本中,协调器的一个重要新组件已经正式结束开发阶段。这个组件可能很快就能让用户在数据库、流媒体、汽车司机和跨国公司会计系统中自动组装,而用户可能在此过程中甚至注意不到发生了什么。虽然 Kubernetes 现在已经牢固确立了它作为 " 容器 " 环境编排工具的地位,但这项新的功能将赋予它编排几乎所有其他内容的能力。

未来需要 CRD

前几日,VMware 工程师宣布将 Kubernetes 注入 vSphere 虚拟化平台核心。自定义资源 ( CRD ) 使得 Kubernetes 能够充当其他系统的协调器,包括 Apache Spark 和 Hadoop 等 " 大数据 " 环境的工作。 ( 去年初创公司 BlueData 成立,其目标是配置 Kubernetes 来管理 Hadoop 和 Spark 集群。 )

VMware Pacific 项目的产品管理高级总监 Jared Rosoff 表示,Kubernetes 有 CRD、控制器和操作符等概念,允许我们向 Kubernetes 添加新的对象类型。所以如果我们利用 Kubernetes 的来构建新的云平台呢 ? 如果我们管理 Kubernetes 集群、虚拟机 ( VM ) 、无服务器应用程序和数据库的方式使用了相同的模式,会发生什么 ?

Rosoff 指的是什么呢?Kubernetes orchestrator 已经从配置管理领域采用了一个关键元素,像 Puppet 和 Ansible 这样的声明式风格 : 允许应用程序从数据中心基础设施指定需要的资源。它不像传统脚本那样,为如何组装和提供这些资源编写一组明确的指令,而只是列出自己的需求,并相信编配人员能够提供尽可能多的这些资源。

在 Kubernetes 的实例中,好像通过编写脚本就可以创建整个服务器网络。

但这是 Kubernetes 从一开始就有的特性。CRD 如今已成为正式的组件,它打破了 Kubernetes 组装的整个概念及其目的。它使编配人员能够提供第一代 vm,取代了传统 vSphere 控制台上繁琐的过程,并且要求 IT 人员具有官方认证的技能。

VMware

对于为 Kubernetes 项目做出贡献的开源开发人员来说,CRD 概念已经出现了一段时间。CRDs 在两年前作为 beta 版的 1.7 首次公开发布。当时,谷歌的工程师 Tim Hockin 在接受采访时表示,Kubernetes 正在演变成 " 生态系统的中心 "。换句话说,它不必总是与 docker 容器相关联,特别是只要 " 资源 " 是抽象定义的。Kubernetes 可以成为一个 " 资源协调器 ",并且可以由每个数据中心决定 " 资源 " 在它自己的环境中意味着什么。

自定义控制

在 Kubernetes 的体系结构中,controller 组件可以监视系统的活动状态,其任务是确保该状态尽可能接近每个运行工作负载的 " 所需状态 "。换句话说,控制器可以满足每个工作负载的需要。这些需求通常根据可用资源来指定,工作负载需要这些组件来实现其功能。如果 Kubernetes 管理的是 Hadoop 集群而不是容器集群,那么就需要为新的上下文重写 " 资源 " 的定义,这就是 CRD 的作用。

要使自定义资源在此新上下文中可用,必须添加自定义控制器。Kubernetes 将这些特殊的组件称为操作员,这有点奇怪,只有 IT 部门的人员才被称为 " 操作员 ",但这才是关键。在非自动化的环境中,协调器中的操作员可以有效地完成需要人完成的工作。

CNCF 的 Dan Kohn 表示 :" 我认为它的热度会不断升级。可能是服务网格 , 也可以是一些身份验证技术或整个区域的运营商。它可以做很多事情:升级、安全、调优等等,这几乎就是一个 DBA。

当 Kubernetes 将容器部署到托管平台的任务自动化时,手动部署这些容器的工作还几乎不存在。在 CoreOS ( 现在是 IBM 的一部分 ) 和 Pivotal ( 现在已经是戴尔的一部分 ) 等供应商为他们自动化 IT 之前,IT 部门还没有完全理解这种技能。但数据库管理员对日常工作中相对缺乏自动化已经非常熟悉,这可能是近几个月来人们对大数据热情降温的部分原因。Kohn 认为,在 CRD 的帮助下,同样的新功能可以在包括企业管理员为员工提供服务的方式等方面引发大变化。

CNCF

去年 6 月,在 CNCF 的会议上,工程师 Ed King 和 Sam Gunaratne 给出了一个画面 :Kubernetes 通过 CRDs 自动完成了一件通常不会自动完成的事情 : 开关家里的电灯、门锁和恒温器。这不是基于容器的物联网控制器的编排,而是使用 Kubernetes API 来实现夜间开灯、锁门和开关暖气自动化。

在这个假设系统中,清单可以显示房主希望得两个灯泡的亮度状态。专用于灯光的控制器可以将当前状态与期望状态进行比较,然后召唤出熄灭灯泡所需的事件序列。

如果这个假设系统中的控制器能够相互联系,那么恒温器的控制器就能够与控制器共享诸如一天中的时间等细节。然后,光控制器可以与决策工具一起使用,以确定什么时候应用所需的状态。与物联网中控制器和设备之间典型的一对一关系不同,协调器将充当一个智能集线器。

自定义控制器的自动化包括共享状态的能力,可以产生更智能、更流畅的流量模式。VMware 的 Rosoff 表示 :" 这完全改变了我们对开发者、用户与云交互体验的看法。"

相关热词搜索:编排 整个世界 拥有 Kubernetes CRD

上一篇:补齐所有短板,小米9 Pro新增横向线性马达,只等一个真香价格
下一篇:最后一页

济宁知名律师   电话:0531-80961678
手机:18053115917   微信:18053115917   QQ:709581498   邮箱:709581498@qq.com
网站地图 (XML地图 / 百度地图