容器與虛擬化的完美融合 - VMware Project Pacific

介紹

今天VMware發(fā)布了技術(shù)預(yù)覽版的Project Pacific口柳,這項(xiàng)技術(shù)將為廣大的企業(yè)私有云建設(shè)者提供新的思路。

Project Pacific給vSphere增加了一個(gè)新的控制平面蒜危,使用戶(hù)可以用Kubernetes管理vSphere趁俊。 對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)脚作,Project Pacific就像是一個(gè)增強(qiáng)的Kubernetes集群,可以使用Kubernetes聲明式語(yǔ)法來(lái)管理虛擬機(jī)匈辱、磁盤(pán)和網(wǎng)絡(luò)等資源振湾。 對(duì)于IT管理員來(lái)說(shuō),Project Pacific仍舊是vSphere亡脸,但是添加了以應(yīng)用為邊界的整體管理的能力押搪,而不是單獨(dú)管理許多個(gè)獨(dú)立的組成應(yīng)用的虛擬機(jī)或者容器。

Project Pacific可以利用企業(yè)現(xiàn)有的SDDC投資浅碾、人員技能和工具大州,加速vSphere平臺(tái)上現(xiàn)代化應(yīng)用的開(kāi)發(fā)和運(yùn)營(yíng)。 通過(guò)利用Kubernetes作為vSphere的控制平面垂谢,Project Pacific允許企業(yè)利用一個(gè)融合的平臺(tái)同時(shí)運(yùn)行傳統(tǒng)應(yīng)用和現(xiàn)代化應(yīng)用厦画。

現(xiàn)代化應(yīng)用的挑戰(zhàn)

在企業(yè)環(huán)境中,現(xiàn)代化應(yīng)用通常是由很多種不同的技術(shù)組件組成的滥朱,有些組件運(yùn)行在容器中根暑,有些組件運(yùn)行在虛擬機(jī)中(如數(shù)據(jù)庫(kù))融师,有時(shí)需要訪問(wèn)遺留系統(tǒng)矢赁,甚至有些需要訪問(wèn)FaaS。這些組件分布式的部署在不同的運(yùn)行環(huán)境中萌狂,通常由不同的團(tuán)隊(duì)開(kāi)發(fā)和維護(hù)鹃栽。

企業(yè)環(huán)境現(xiàn)代化應(yīng)用

這樣的應(yīng)用架構(gòu)給開(kāi)發(fā)人員帶來(lái)了困擾,你不能只關(guān)注Kubernetes躯畴,因?yàn)楹芏嘟M件并沒(méi)有運(yùn)行在容器中民鼓。一旦部署了這樣的應(yīng)用程序,如何維護(hù)并更新它蓬抄?可以使用哪些工具來(lái)監(jiān)控丰嘉、診斷和調(diào)試部署?

同樣嚷缭,基礎(chǔ)設(shè)施部門(mén)也面臨了新的問(wèn)題饮亏。為了支持容器和虛擬機(jī)共存的應(yīng)用耍贾,有些企業(yè)不得不在vSphere集群外搭建一套新的容器集群,這種做法引入了新的孤島路幸,并且多個(gè)集群的運(yùn)維管理工具和方法是完全不同的荐开,應(yīng)用治理的策略也無(wú)法同步到兩種類(lèi)型的集群中。

Kubernetes作為平臺(tái)的平臺(tái)

Kubernetes的聯(lián)合創(chuàng)始人Joe Beda說(shuō)過(guò)简肴,“Kubernetes是一個(gè)平臺(tái)的平臺(tái)晃听,可以用來(lái)構(gòu)建新的平臺(tái)”。是的砰识,Kubernetes是一個(gè)容器編排平臺(tái)能扒,但是依賴(lài)Kubernetes的核心原則我們能夠編排任何東西!如果我們用Kubernetes的方式重新架構(gòu)vSphere辫狼,讓vSphere運(yùn)行在Kubernetes之上會(huì)是什么效果呢初斑?那么,開(kāi)發(fā)人員想要?jiǎng)?chuàng)建虛擬機(jī)膨处、容器或Kubernetes集群见秤,他們只需要編寫(xiě)一個(gè)Kubernetes YAML文件并使用kubectl部署它,就像使用任何其他Kubernetes對(duì)象(Pod灵迫,service秦叛,ingress)一樣。

使用Kubernetes作為vSphere API

通過(guò)這個(gè)理念瀑粥,開(kāi)發(fā)人員可以將Kubernetes良好的使用感受從云原生應(yīng)用擴(kuò)展到數(shù)據(jù)中心中的任何類(lèi)型的應(yīng)用挣跋。使他們可以輕松地部署和管理跨多個(gè)技術(shù)堆棧的現(xiàn)代化應(yīng)用。

以應(yīng)用為中心的管理

vSphere提供了很多針對(duì)虛擬機(jī)的管理功能狞换,vMotion避咆、HA、snapshot修噪、加密查库、配額管理、存儲(chǔ)策略等黄琼。但現(xiàn)代化應(yīng)用一般來(lái)說(shuō)不是一個(gè)虛擬機(jī)樊销,它可能是幾十個(gè)虛擬機(jī)加上更多的容器。 對(duì)于現(xiàn)代化應(yīng)用來(lái)說(shuō)脏款,從整個(gè)應(yīng)用層面實(shí)現(xiàn)以上的功能就比較困難了围苫。

幸運(yùn)的是,Kubernetes帶來(lái)了另一個(gè)可以解決這個(gè)問(wèn)題的概念:Namespace撤师。 Kubernetes中的Namespace是資源對(duì)象(容器剂府、VM、磁盤(pán)等)的集合剃盾。 如果我們使用Kubernetes Namespace來(lái)模擬現(xiàn)代應(yīng)用腺占,然后將針對(duì)虛擬機(jī)的管理功能在Namespace上實(shí)現(xiàn)淤袜,那么就可以一次控制整個(gè)應(yīng)用的資源分配、vMotion衰伯、加密铡羡、HA和快照,而不必單獨(dú)配置每個(gè)虛擬機(jī)或者容器嚎研。

Namespace作為管理單元

這對(duì)IT管理員有兩個(gè)真正的變革性影響蓖墅。

首先,我們認(rèn)為這為IT管理員提供了巨大的生產(chǎn)力提升临扮。 過(guò)去论矾,您可能在vCenter清單中有數(shù)千個(gè)虛擬機(jī)需要處理。 但是杆勇,一旦將這些虛擬機(jī)分組到其邏輯所屬的應(yīng)用中贪壳,您可能只需要處理幾十個(gè)Namespace。 過(guò)去蚜退,如果您想加密應(yīng)用程序闰靴,則必須先找到屬于該應(yīng)用程序的所有虛擬機(jī),然后在每個(gè)虛擬機(jī)上啟用加密钻注。 現(xiàn)在蚂且,您只需單擊vCenter中Namespace上的按鈕即可完成所有操作。 您可以獲得巨大的生產(chǎn)力提升幅恋,因?yàn)槟梢蕴幚響?yīng)用而不是單個(gè)虛擬機(jī)杏死。

其次,我們認(rèn)為Namespace為開(kāi)發(fā)人員提供了更好的自助服務(wù)模型捆交。 使用Namespace淑翼,IT管理員可以在Namespace上設(shè)置一次策略,然后將Namespace權(quán)限分配給開(kāi)發(fā)人員品追,Namespace中的每個(gè)對(duì)象都將繼承統(tǒng)一設(shè)置的策略玄括。 開(kāi)發(fā)人員可以快速、自助的創(chuàng)建任何他需要的資源肉瓦,虛擬機(jī)遭京、容器、Kubernetes集群等泞莉,而IT只需要從應(yīng)用的整體維度來(lái)確保資源的使用符合公司的策略洁墙。

Kubernetes原生的vSphere平臺(tái)

Project Pacific將Kubernetes控制平面直接集成到ESXi和vCenter中 - 使其成為ESXi的控制平面,并通過(guò)vCenter提供以應(yīng)用為中心的管理功能戒财。

Kubernetes原生的vSphere平臺(tái)

Supervisor clusters

Supervisor cluster是一種特殊的Kubernetes集群,它將ESXi節(jié)點(diǎn)變成Kubernetes的worker node捺弦。 這是通過(guò)將類(lèi)似kubelet的agent(Spherelet)直接集成到ESXi中實(shí)現(xiàn)的饮寞。 Spherelet不是虛擬機(jī)孝扛,它是ESXi上的一個(gè)進(jìn)程。

把vSphere Cluster變成Kubernetes Cluster

ESXi Native Pods

部署在Supervisor上的Pod幽崩,每個(gè)Pod都在一個(gè)隔離的輕量級(jí)虛擬機(jī)中運(yùn)行苦始。 這個(gè)輕量級(jí)的虛擬機(jī)就是CRX,包含一個(gè)Linux內(nèi)核和最小容器運(yùn)行時(shí)慌申。

經(jīng)過(guò)測(cè)試陌选,ESXi可以在100毫秒內(nèi)啟動(dòng)native pod,在單個(gè)ESXi主機(jī)上支持超過(guò)1000個(gè)pod蹄溉。 在我們的內(nèi)部測(cè)試中咨油,我們已經(jīng)證明了ESXi Native Pods在SPECjbb2015基準(zhǔn)測(cè)試中的吞吐量比虛擬機(jī)中的常規(guī)Pod高出30%,比裸機(jī)Linux上的Pod快8%柒爵!

虛擬機(jī)

Supervisor cluster提供VM operator役电,允許用戶(hù)以Kubernetes的方式管理虛擬機(jī)。用戶(hù)可以在一個(gè)yaml文件中描述虛擬機(jī)的部署規(guī)范和其所需的網(wǎng)絡(luò)和存儲(chǔ)資源棉胀。
VM Operator 對(duì)于私有云建設(shè)有著重大的業(yè)務(wù)價(jià)值法瑟,請(qǐng)參考另一篇文章。新一代企業(yè)私有云建設(shè)的“底座”
VM Operator只是作為vSphere管理虛擬機(jī)的補(bǔ)充唁奢,這意味著用戶(hù)可以繼續(xù)使用vSphere的所有功能霎挟,來(lái)管理Kubernetes置備出的虛擬機(jī)實(shí)例。

Guest cluster

雖然Supervisor cluster已經(jīng)是一個(gè)Kubernetes集群麻掸,但是它的設(shè)計(jì)目標(biāo)是用來(lái)管理vSphere酥夭,而不是通用的業(yè)務(wù)部署平臺(tái)。這樣設(shè)計(jì)的原因有以下幾個(gè)论笔,

  • Kubernetes的最佳實(shí)踐是多集群采郎,不同的租戶(hù)使用不同規(guī)格(版本、規(guī)模)的集群狂魔。而一個(gè)vSphere的cluster就是一個(gè)Supervisor cluster蒜埋,這種方式不符合最佳實(shí)踐。當(dāng)租戶(hù)需要不同版本的Kubernetes的時(shí)候最楷,Supervisor cluster不能夠滿(mǎn)足要求整份。
  • Supervisor cluster內(nèi)置在vSphere中,只能隨著vSphere版本的升級(jí)而升級(jí)籽孙。一般來(lái)講烈评,用戶(hù)要求Kubernetes的版本可以隨時(shí)升級(jí),而不希望頻繁的升級(jí)底層的vSphere犯建。
  • 為了安全原因讲冠,Supervisor cluster禁止了privilege等一些特殊模式。而有些時(shí)候用戶(hù)需要這些模式的集群适瓦。

Guest Clusters 很好的解決了以上的問(wèn)題竿开,Guest Clusters可以提供通用的Kubernetes給用戶(hù)谱仪。Guest Cluster是一個(gè)Kubernetes集群,它在Supervisor Cluster上的虛擬機(jī)內(nèi)運(yùn)行否彩。 Guest Cluster是完全符合CNCF認(rèn)證的Kubernetes疯攒,因此可以保證兼容任何運(yùn)行在Kubernetes上的應(yīng)用。

vSphere中的Guest Clusters使用開(kāi)源Cluster API項(xiàng)目來(lái)生命周期管理Kubernetes集群列荔。

Guest Cluster

鏡像倉(cāng)庫(kù)

為了運(yùn)行容器敬尺,用戶(hù)需要一個(gè)鏡像倉(cāng)庫(kù)。 因此贴浙,Project Pacific將Harbor集成到vSphere中砂吞,您可以從vCenter直接打開(kāi)Harbor。 每個(gè)Namespace都是Harbor中的一個(gè)project悬而。

總結(jié)

Project Pacific是VMware在Kubernetes領(lǐng)域一個(gè)里程碑的發(fā)布呜舒。如果您想了解更多細(xì)節(jié),敬請(qǐng)關(guān)注本周在VMworld上的相關(guān)內(nèi)容笨奠。VMWorld

本文翻譯補(bǔ)充自 - Project Pacific 技術(shù)概覽

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末袭蝗,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子般婆,更是在濱河造成了極大的恐慌到腥,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蔚袍,死亡現(xiàn)場(chǎng)離奇詭異乡范,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)啤咽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)晋辆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人宇整,你說(shuō)我怎么就攤上這事瓶佳。” “怎么了鳞青?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵霸饲,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我臂拓,道長(zhǎng)厚脉,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任胶惰,我火速辦了婚禮傻工,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己中捆,他們只是感情好威鹿,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著轨香,像睡著了一般。 火紅的嫁衣襯著肌膚如雪幼东。 梳的紋絲不亂的頭發(fā)上臂容,一...
    開(kāi)封第一講書(shū)人閱讀 49,031評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音根蟹,去河邊找鬼脓杉。 笑死,一個(gè)胖子當(dāng)著我的面吹牛简逮,可吹牛的內(nèi)容都是我干的球散。 我是一名探鬼主播,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼散庶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蕉堰!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起悲龟,我...
    開(kāi)封第一講書(shū)人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤屋讶,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后须教,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體皿渗,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年轻腺,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了乐疆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡贬养,死狀恐怖挤土,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情煤蚌,我是刑警寧澤耕挨,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站尉桩,受9級(jí)特大地震影響筒占,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蜘犁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一翰苫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦奏窑、人聲如沸导披。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)撩匕。三九已至,卻和暖如春墨叛,著一層夾襖步出監(jiān)牢的瞬間止毕,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工漠趁, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留扁凛,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓闯传,卻偏偏與公主長(zhǎng)得像谨朝,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子甥绿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345