關(guān)注微信公眾號(hào)
創(chuàng)頭條企服版APP
原標(biāo)題:擁有CRD,Kubernetes可能要嘗試編排整個(gè)世界了!
隨著周三官方發(fā)布的Kubernetes版本1.16進(jìn)入普遍可用狀態(tài),大家都有這樣一個(gè)疑問(wèn):企業(yè)數(shù)據(jù)中心的基礎(chǔ)設(shè)施的容器、虛擬機(jī)、“大數(shù)據(jù)”平臺(tái)以及機(jī)器學(xué)習(xí)框架 ,所有的這些最終都要由Kubernetes來(lái)編排嗎?
Kubernetes針對(duì)Docker所做的工作已經(jīng)不用再多說(shuō)。從那天起,該公司就力求在開源社區(qū)、云計(jì)算本地計(jì)算基金會(huì)(CNCF)、Linux基金會(huì)的合作企業(yè)中實(shí)現(xiàn)突出的地位。
在此期間,Kubernetes幾乎已經(jīng)在所有涉及服務(wù)器端軟件部署和管理的開源和商業(yè)平臺(tái)項(xiàng)目中都有一席之地。 Red Hat在去年7月被IBM以340億美元收購(gòu)之前,對(duì)OpenShift平臺(tái)進(jìn)行了重組。(紅帽的企業(yè)Linux平臺(tái),IBM已經(jīng)有相似產(chǎn)品。) Mesosphere擁有自己的DC/OS平臺(tái),構(gòu)建于已建立的Apache Mesos工作負(fù)載編排平臺(tái)之上,并與微軟建立了強(qiáng)有力的合作關(guān)系。
前段時(shí)間,VMware宣布將全球最著名的虛擬化平臺(tái)vSphere徹底改造為一個(gè)基于Kubernetes的系統(tǒng),該系統(tǒng)還托管著Kubernetes環(huán)境。1998年,當(dāng)Oracle宣布獲得Red Hat的認(rèn)證成為其企業(yè)操作系統(tǒng)的軟件供應(yīng)商時(shí),Linux的創(chuàng)建者就知道他們的項(xiàng)目已經(jīng)達(dá)到了臨界量。到目前為止,Kubernetes可能已經(jīng)達(dá)到了臨界點(diǎn)。
在1.16版本中,協(xié)調(diào)器的一個(gè)重要新組件已經(jīng)正式結(jié)束開發(fā)階段。這個(gè)組件可能很快就能讓用戶在數(shù)據(jù)庫(kù)、流媒體、汽車司機(jī)和跨國(guó)公司會(huì)計(jì)系統(tǒng)中自動(dòng)組裝,而用戶可能在此過(guò)程中甚至注意不到發(fā)生了什么。雖然Kubernetes現(xiàn)在已經(jīng)牢固確立了它作為“容器”環(huán)境編排工具的地位,但這項(xiàng)新的功能將賦予它編排幾乎所有其他內(nèi)容的能力。
未來(lái)需要CRD
前幾日,VMware工程師宣布將Kubernetes注入vSphere虛擬化平臺(tái)核心。自定義資源(CRD)使得Kubernetes能夠充當(dāng)其他系統(tǒng)的協(xié)調(diào)器,包括Apache Spark和Hadoop等“大數(shù)據(jù)”環(huán)境的工作。(去年初創(chuàng)公司BlueData成立,其目標(biāo)是配置Kubernetes來(lái)管理Hadoop和Spark集群。)
VMware Pacific項(xiàng)目的產(chǎn)品管理高級(jí)總監(jiān)Jared Rosoff表示,Kubernetes有CRD、控制器和操作符等概念,允許我們向Kubernetes添加新的對(duì)象類型。所以如果我們利用Kubernetes的來(lái)構(gòu)建新的云平臺(tái)呢?如果我們管理Kubernetes集群、虛擬機(jī)(VM)、無(wú)服務(wù)器應(yīng)用程序和數(shù)據(jù)庫(kù)的方式使用了相同的模式,會(huì)發(fā)生什么?
Rosoff 指的是什么呢?Kubernetes orchestrator已經(jīng)從配置管理領(lǐng)域采用了一個(gè)關(guān)鍵元素,像Puppet和Ansible這樣的聲明式風(fēng)格:允許應(yīng)用程序從數(shù)據(jù)中心基礎(chǔ)設(shè)施指定需要的資源。它不像傳統(tǒng)腳本那樣,為如何組裝和提供這些資源編寫一組明確的指令,而只是列出自己的需求,并相信編配人員能夠提供盡可能多的這些資源。
在Kubernetes的實(shí)例中,好像通過(guò)編寫腳本就可以創(chuàng)建整個(gè)服務(wù)器網(wǎng)絡(luò)。
但這是Kubernetes從一開始就有的特性。CRD如今已成為正式的組件,它打破了Kubernetes組裝的整個(gè)概念及其目的。它使編配人員能夠提供第一代vm,取代了傳統(tǒng)vSphere控制臺(tái)上繁瑣的過(guò)程,并且要求IT人員具有官方認(rèn)證的技能。
VMware
對(duì)于為Kubernetes項(xiàng)目做出貢獻(xiàn)的開源開發(fā)人員來(lái)說(shuō),CRD概念已經(jīng)出現(xiàn)了一段時(shí)間。CRDs在兩年前作為beta版的1.7首次公開發(fā)布。當(dāng)時(shí),谷歌的工程師Tim Hockin在接受采訪時(shí)表示,Kubernetes正在演變成“生態(tài)系統(tǒng)的中心”。換句話說(shuō),它不必總是與docker容器相關(guān)聯(lián),特別是只要“資源”是抽象定義的。Kubernetes可以成為一個(gè)“資源協(xié)調(diào)器”,并且可以由每個(gè)數(shù)據(jù)中心決定“資源”在它自己的環(huán)境中意味著什么。
自定義控制
在Kubernetes的體系結(jié)構(gòu)中,controller組件可以監(jiān)視系統(tǒng)的活動(dòng)狀態(tài),其任務(wù)是確保該狀態(tài)盡可能接近每個(gè)運(yùn)行工作負(fù)載的“所需狀態(tài)”。換句話說(shuō),控制器可以滿足每個(gè)工作負(fù)載的需要。這些需求通常根據(jù)可用資源來(lái)指定,工作負(fù)載需要這些組件來(lái)實(shí)現(xiàn)其功能。如果Kubernetes管理的是Hadoop集群而不是容器集群,那么就需要為新的上下文重寫“資源”的定義,這就是CRD的作用。
要使自定義資源在此新上下文中可用,必須添加自定義控制器。Kubernetes將這些特殊的組件稱為操作員,這有點(diǎn)奇怪,只有IT部門的人員才被稱為“操作員”,但這才是關(guān)鍵。在非自動(dòng)化的環(huán)境中,協(xié)調(diào)器中的操作員可以有效地完成需要人完成的工作。
CNCF的Dan Kohn表示:“我認(rèn)為它的熱度會(huì)不斷升級(jí)。可能是服務(wù)網(wǎng)格,也可以是一些身份驗(yàn)證技術(shù)或整個(gè)區(qū)域的運(yùn)營(yíng)商。它可以做很多事情:升級(jí)、安全、調(diào)優(yōu)等等,這幾乎就是一個(gè)DBA。
當(dāng)Kubernetes將容器部署到托管平臺(tái)的任務(wù)自動(dòng)化時(shí),手動(dòng)部署這些容器的工作還幾乎不存在。在CoreOS(現(xiàn)在是IBM的一部分)和Pivotal(現(xiàn)在已經(jīng)是戴爾的一部分)等供應(yīng)商為他們自動(dòng)化IT之前,IT部門還沒(méi)有完全理解這種技能。但數(shù)據(jù)庫(kù)管理員對(duì)日常工作中相對(duì)缺乏自動(dòng)化已經(jīng)非常熟悉,這可能是近幾個(gè)月來(lái)人們對(duì)大數(shù)據(jù)熱情降溫的部分原因。Kohn認(rèn)為,在CRD的幫助下,同樣的新功能可以在包括企業(yè)管理員為員工提供服務(wù)的方式等方面引發(fā)大變化。
CNCF
去年6月,在CNCF的會(huì)議上,工程師Ed King和Sam Gunaratne給出了一個(gè)畫面:Kubernetes通過(guò)CRDs自動(dòng)完成了一件通常不會(huì)自動(dòng)完成的事情:開關(guān)家里的電燈、門鎖和恒溫器。這不是基于容器的物聯(lián)網(wǎng)控制器的編排,而是使用Kubernetes API來(lái)實(shí)現(xiàn)夜間開燈、鎖門和開關(guān)暖氣自動(dòng)化。
在這個(gè)假設(shè)系統(tǒng)中,清單可以顯示房主希望得兩個(gè)燈泡的亮度狀態(tài)。專用于燈光的控制器可以將當(dāng)前狀態(tài)與期望狀態(tài)進(jìn)行比較,然后召喚出熄滅燈泡所需的事件序列。
如果這個(gè)假設(shè)系統(tǒng)中的控制器能夠相互聯(lián)系,那么恒溫器的控制器就能夠與控制器共享諸如一天中的時(shí)間等細(xì)節(jié)。然后,光控制器可以與決策工具一起使用,以確定什么時(shí)候應(yīng)用所需的狀態(tài)。與物聯(lián)網(wǎng)中控制器和設(shè)備之間典型的一對(duì)一關(guān)系不同,協(xié)調(diào)器將充當(dāng)一個(gè)智能集線器。
自定義控制器的自動(dòng)化包括共享狀態(tài)的能力,可以產(chǎn)生更智能、更流暢的流量模式。VMware的Rosoff表示:“這完全改變了我們對(duì)開發(fā)者、用戶與云交互體驗(yàn)的看法。”返回搜狐,查看更多
責(zé)任編輯: