常言道:“一千個(gè)讀者眼里有一千個(gè)哈姆雷特”。同樣的話(huà)也適用于 Kubernetes,同樣的系統(tǒng)在不同的開(kāi)發(fā)人員眼中也是不同的,甚至在不同階段對(duì)于它的理解也截然不同。
在尚未開(kāi)始學(xué)習(xí)Kubernetes之前,我認(rèn)為它是一套非常復(fù)雜的系統(tǒng),各種抽象概念以及復(fù)雜的安裝過(guò)程。差點(diǎn)因?yàn)榘惭b不順,打算就此放棄。理由很簡(jiǎn)單:既然有了 Docker,為什么還要 Kubernetes?如果你想和更多Docker與Kubernetes技術(shù)專(zhuān)家交流,可以加我微信liyingjiese,站群服務(wù)器,備注『加群』。群里每周都有全球各大公司的最佳實(shí)踐以及行業(yè)最新動(dòng)態(tài)。
之所以覺(jué)得Kubernetes系統(tǒng)復(fù)雜、難,關(guān)鍵是不知道它到底是干啥的?再加上老版本繁瑣的安裝過(guò)程,愿意啃它是需要一點(diǎn)毅力的。現(xiàn)在,就通過(guò)一張簡(jiǎn)單的對(duì)比圖告訴你,它到底干了啥!
單看圖示上部分,發(fā)生的變化僅僅是HOST換成了Pod,底層網(wǎng)絡(luò)由真實(shí)網(wǎng)絡(luò)換成了覆蓋網(wǎng)絡(luò),即虛擬網(wǎng)絡(luò)。對(duì)于A(yíng)PP應(yīng)用開(kāi)發(fā)者而言,即使你完全不懂容器技術(shù)也沒(méi)關(guān)系.這是Kubernetes的厲害之處,它提供的抽象層對(duì)于A(yíng)PP應(yīng)用開(kāi)發(fā)者而言是完全透明的。應(yīng)用在POD中和在HOST主機(jī)上并沒(méi)有本質(zhì)區(qū)別。
還是老問(wèn)題: 既然有了 Docker,為什么還要 Kubernetes?
回答這個(gè)問(wèn)題,得從為什么需要引入Docker這個(gè)問(wèn)題先開(kāi)始。你會(huì)說(shuō),因?yàn)樾枰萜骰渴稹D菫槭裁葱枰萜骰渴鹉?就這個(gè)問(wèn)題還可以走得更遠(yuǎn)一點(diǎn)。這里我就偷懶了,先打住。看看容器化部署后出現(xiàn)的新問(wèn)題,即容器實(shí)例越來(lái)越多。因?yàn)槿萜鲗?shí)例越來(lái)越多,就像雞蛋太多需要一個(gè)籃子來(lái)裝一樣,美國(guó)服務(wù)器,Kubernetes就是那個(gè)籃子。當(dāng)然這不是一個(gè)簡(jiǎn)單的籃子,此處也不擴(kuò)展了。
標(biāo)準(zhǔn)答案就是:因?yàn)橛辛?Docker,所以才要Kubernetes。是不是感覺(jué)進(jìn)入一個(gè)loop,我也這感覺(jué)。
從圖中也可以看出,Docker容器技術(shù)是Kubernetes平臺(tái)的基礎(chǔ)。容器技術(shù)主要作用是隔離,通過(guò)對(duì)系統(tǒng)的關(guān)鍵資源的隔離,實(shí)現(xiàn)了主機(jī)抽象。Kubernetes平臺(tái)則是在抽象主機(jī)的基礎(chǔ)上,實(shí)現(xiàn)了集群抽象。
如果用一句話(huà)做個(gè)總結(jié),就是:
容器,提供應(yīng)用級(jí)的主機(jī)抽象;Kubernetes,提供應(yīng)用級(jí)的集群抽象。
小結(jié)
一篇短文,因?yàn)閷?xiě)另外一篇文章觸發(fā)的簡(jiǎn)單總結(jié)。希望可以幫到還徘徊在Kubernetes大門(mén)之外的初學(xué)者。當(dāng)然,新版本Kubernetes已經(jīng)非常容易安裝了。
【凡本網(wǎng)注明來(lái)源非中國(guó)IDC圈的作品,均轉(zhuǎn)載自其它媒體,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。】