偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

WOT李健:eleme容器平臺(tái)的演進(jìn)

原創(chuàng)
網(wǎng)絡(luò)
在本次大會(huì)上,除了眾星云集的主論壇環(huán)節(jié),12場分論壇更是各具特色,在19日下午的“DevOps”分論壇上,來自餓了么計(jì)算力交付部資深工程師李健先生發(fā)表了精彩演講。

【51CTO.com原創(chuàng)稿件】2018年5月18-19日,由51CTO主辦的全球軟件與運(yùn)維技術(shù)峰會(huì)在北京召開。來自全球企業(yè)的技術(shù)精英匯聚北京,暢談軟件技術(shù)前沿,共同探索運(yùn)維技術(shù)的新邊界。而在本次大會(huì)上,除了眾星云集的主論壇環(huán)節(jié),12場分論壇更是各具特色,在19日下午的“微服務(wù)架構(gòu)設(shè)計(jì)”分論壇上,來自餓了么計(jì)算力交付部資深工程師李健先生發(fā)表了精彩演講。

作為餓了么企業(yè)內(nèi)部多個(gè)基于容器的云計(jì)算項(xiàng)目的開發(fā)負(fù)責(zé)人,李健擁有多年豐富的容器系統(tǒng)建設(shè)經(jīng)驗(yàn),推進(jìn)了餓了么平臺(tái)容器化進(jìn)程。尤其擅長將容器的敏捷性和標(biāo)準(zhǔn)化進(jìn)行企業(yè)級(jí)落地。為應(yīng)對(duì)萬物互聯(lián)時(shí)代持續(xù)計(jì)算帶來的機(jī)遇與挑戰(zhàn),李健致力于打造更加便捷的計(jì)算力服務(wù),促進(jìn)高性能計(jì)算、大數(shù)據(jù)和云計(jì)算等多元計(jì)算模式的深入融合。


餓了么計(jì)算力交付部資深工程師李健演講

李健此次的演講主題是“eleme容器平臺(tái)”,這個(gè)平臺(tái)是基于容器的一個(gè)管理系統(tǒng),談及管理系統(tǒng),李健認(rèn)為,雖然現(xiàn)在公有云比較多,但大家都要面臨的一個(gè)場景就是混合云。他的演講主要分為四個(gè)部分,即計(jì)算力交付、技術(shù)選型、算力外賣和基于kubernetes的拓展方案。他坦言,最初在業(yè)務(wù)快速增長的過程中,資源規(guī)模增長非常迅速,導(dǎo)致我們服務(wù)器的類型特別多,管理的任務(wù)也很重。因?yàn)橐m應(yīng)業(yè)務(wù),交付的需求也多種多樣。

一、計(jì)算力交付

李健認(rèn)為,計(jì)算力交付作為一個(gè)抽象的概念,實(shí)際上是我們把物理資源抽象出來的一種輸出,是對(duì)于開發(fā)人員的一種輸出。餓了么的物理資源,訊息資源量很大,人力有限,我們不可能無限的去擴(kuò)張,于是我們就想實(shí)現(xiàn)一種方式,將它標(biāo)準(zhǔn)化,這樣可以極大的減少成本,也可以更輕松的去管理更多機(jī)器?;谝陨希覀冇?jì)算交付部門出現(xiàn)了。我們認(rèn)為一切的交付行為都是應(yīng)用,所以餓了么面臨的關(guān)鍵變成了怎么樣去交付這個(gè)應(yīng)用,怎么去管理這個(gè)應(yīng)用。

    說到這里,就不得不提容器技術(shù)。容器技術(shù)很早就出現(xiàn)了,Docker為容器做了很大的貢獻(xiàn),它真正面向了應(yīng)用,可以移植,可以跨平臺(tái)的特性,特別是它打包方式,使得所有的服務(wù),都變成一種統(tǒng)一的打包方式。這就是應(yīng)用的一個(gè)標(biāo)準(zhǔn),在這種標(biāo)準(zhǔn)之上,我們可以把這個(gè)應(yīng)用跑在我們想跑的任何一個(gè)平臺(tái)上。只有這樣的話,我們才有可能進(jìn)一步的去做到,不論是自動(dòng)化運(yùn)維,還是AIOPS或者是大數(shù)據(jù)等等,這些更加的降低人力成本,提高資源使用率的目標(biāo)。

    具體看來,我們會(huì)交付三個(gè)事情,首先是用戶數(shù),就是你把應(yīng)用交給我,我來幫你部署,讓服務(wù)跑起來。其次是標(biāo)準(zhǔn)服務(wù)的一鍵交付,比如大數(shù)據(jù)需要一套環(huán)境,或者某某部門他需要一套環(huán)境,一套環(huán)境里面他包含了ABC很多服務(wù),這些服務(wù)和其他服務(wù)有隔離性,服務(wù)之間又必須建立起一種聯(lián)系,而且具有可復(fù)制性。第三是服務(wù)器的交付,其實(shí)也被劃撥進(jìn)來。開發(fā)需要一臺(tái)服務(wù)器,這個(gè)時(shí)候我們就很好的可以將計(jì)算力作為服務(wù)器的一種交付。

二、技術(shù)選型   

技術(shù)選型現(xiàn)在有很多,kubernetes是比較風(fēng)靡的一種,選擇kubernetes即是建立了標(biāo)準(zhǔn),它帶來的利好就是成本下降。當(dāng)我用跟別人一樣的東西,我成本下降了,解決問題時(shí)的優(yōu)勢(shì)不言而喻。如果我選熱度很高的項(xiàng)目,這個(gè)項(xiàng)目,首先對(duì)于我中小公司來說,我遇到問題至少可以在谷歌上,可以查到這個(gè)問題,有據(jù)可依。另外還考慮到的一個(gè)場景,即你需要的東西和你的選型是否契合,這也是非常值得關(guān)注的問題。此外,擴(kuò)展性、生態(tài)發(fā)展、大公司的容易建立起生態(tài),亦有前瞻性可循。

三、算力外賣   

談起算力外賣,李健津津樂道。據(jù)他介紹,餓了么做外賣,有好多東西容易要跟吃的結(jié)合起來。例如我們會(huì)議室可能叫“榴蓮酥”。算力外賣我們需要的就是一個(gè)場景,例如說我們?nèi)ワ埖瓿燥?,這就是一個(gè)場景。再比如說一個(gè)開發(fā)環(huán)境,在使用完了這套環(huán)境之后就可以銷毀了,或者我可以點(diǎn)一個(gè)套餐,點(diǎn)一套“環(huán)境”,好像我們?nèi)ビ喭赓u,購買一個(gè)套餐一樣,包含很多內(nèi)容。

    在應(yīng)用層面,李健把它描述得跟我們的胃口很像,包括各種不同類型的服務(wù)。所以會(huì)有這樣一個(gè)box,box實(shí)際上可以把它抽象成一桌飯或者是一個(gè)外賣盒。在這里面我們可以看到,我們把每一個(gè)服務(wù)相互之間的調(diào)用,都通過domain去調(diào)用。而且這個(gè)box它有復(fù)制性,無論從這個(gè)模板里面創(chuàng)建出來box有多少,在每個(gè)box內(nèi)部調(diào)不同服務(wù)的時(shí)候,它的域名是唯一的。

    例如,從第一個(gè)服務(wù)調(diào)第二個(gè)服務(wù)的時(shí)候,第二個(gè)服務(wù)的域名是JOB,第一個(gè)服務(wù)調(diào)第二個(gè)服務(wù)的時(shí)候它從B就可以調(diào)用,這樣就減少了開發(fā)人員復(fù)雜度。我們啟用個(gè)服務(wù)的時(shí)候,自動(dòng)給它生成唯一網(wǎng)絡(luò)標(biāo)識(shí),可能是IP或者域名。想要更改我的配置,不需要更改它的配置,只需要把這個(gè)環(huán)境拉起來,這個(gè)應(yīng)用就可以跑起來了。因?yàn)槲业呐渲?,我所?duì)應(yīng)那些服務(wù),他們的網(wǎng)絡(luò)標(biāo)識(shí)是一樣的,他們都是叫X。

四、基于kubernetes的拓展方案   

李健演講的最后一部分是“基于kubernetes的拓展方案”。其具體的實(shí)現(xiàn)就是用kubernetes去做底層的容器引擎。在里面可以看到,在一個(gè)Internal里面,包括domainl,pod我們可以在這個(gè)服務(wù),它有自己的一個(gè)副本,做一個(gè)副的均衡。這些服務(wù)之間可能有依賴關(guān)系,例如A服務(wù)依賴B服務(wù),如果B服務(wù)宕機(jī),A服務(wù)要做一些處理。A服務(wù)依賴B服務(wù),會(huì)有個(gè)啟動(dòng)數(shù),我們?cè)赽ox里面也做了同樣的事情。

    當(dāng)然從技術(shù)發(fā)展來講,很多時(shí)候大家認(rèn)為,新技術(shù)里面,不應(yīng)該有依賴關(guān)系。但是我們現(xiàn)在遇到的問題,確實(shí)存在依賴。我們的服務(wù)業(yè)務(wù)在這個(gè)場景下,要推動(dòng)標(biāo)準(zhǔn)化就一定要兼容開發(fā)的目前的一些項(xiàng)目或者它的習(xí)慣。

    還有一些服務(wù)啟停,那就是初始化。比如說有些服務(wù)完成之后會(huì)調(diào)另外一個(gè)pod進(jìn)行初始化。還有一些公共服務(wù),有些數(shù)據(jù)是需要傳遞的。我們就可以把外面的服務(wù),通過內(nèi)部標(biāo)識(shí)轉(zhuǎn)換到外部標(biāo)識(shí),我們內(nèi)部標(biāo)識(shí)實(shí)際上是永遠(yuǎn)是不變的,外面關(guān)系通過服務(wù)發(fā)現(xiàn)或者機(jī)制關(guān)聯(lián)上來,這樣就完全的不用考慮配置變更,或者服務(wù)發(fā)現(xiàn)等等問題了。

這個(gè)是我們的一個(gè)最簡單的通過外賣的方式對(duì)我們服務(wù)的一個(gè)抽象。當(dāng)然了我們?cè)谶@個(gè)過程當(dāng)中會(huì)考慮我們服務(wù)的規(guī)模,規(guī)模擴(kuò)大后會(huì)發(fā)生什么問題。kubernetes依賴etcd,etcd,我們知道它實(shí)際上在kubelet場景下,它支持不了那么大規(guī)模,但是我們又對(duì)穩(wěn)定性有一些要求。所以我們就只能說把它進(jìn)行拆分,盡量的進(jìn)行拆分。

如果我們?nèi)藶榈耐ㄟ^三個(gè)或者四個(gè)kubelet機(jī)群給它拆分了,如果拆得太細(xì),資源利用率就會(huì)降低,有些機(jī)群可能餓死了,有些機(jī)群可能飽死了。我們就是通過一種方式,我們希望說讓這些服務(wù),kubelet是不同的etcd這個(gè)機(jī)群,有一個(gè)方式讓服務(wù)可以在機(jī)群之間進(jìn)行飄移,可以調(diào)度。這樣既解決了資源效率的問題,又解決了可靠性的問題。

從上圖的結(jié)構(gòu)看來,除了黃色的部分,其他部分就是kubelet原先的一些組件。我們開發(fā)了一個(gè)類似于kubelet的API Server的服務(wù)。按照我們本來的想法,例如我現(xiàn)在調(diào)度完成之后,分兩級(jí)調(diào)度,我們以為把資源調(diào)到A機(jī)群還是調(diào)到B機(jī)群就可以了,后來發(fā)現(xiàn)實(shí)際上很難做到。我們?cè)诂F(xiàn)在使用的docker上加了一個(gè)小版本,小版本主要問題是,日志量很頻繁的時(shí)候(毫秒級(jí)別)就會(huì)亂序,導(dǎo)致業(yè)務(wù)部門排查不下去。因此我們?cè)赿ocker里面增加了一個(gè)序號(hào)。

     李健坦言,我們企業(yè)的軟件環(huán)境,實(shí)際上是自己生長出來的,我們不可能因?yàn)橐粋€(gè)開源軟件更改現(xiàn)有的內(nèi)容,我們希望通過某種方式讓開源軟件來適應(yīng)現(xiàn)在的軟件狀態(tài)。這就是docker的一些監(jiān)控,例如我們發(fā)現(xiàn)一些問題或者bug,都是通過監(jiān)控來發(fā)現(xiàn)的。

    此外,我們?cè)谌萜鞴芾懋?dāng)中,如果遇到一些問題,比如說將傳統(tǒng)的業(yè)務(wù)進(jìn)行容器化的時(shí)候,我們就進(jìn)行改進(jìn)。所有的東西都是在容器里面,internal進(jìn)程是我們定制的,internal進(jìn)程是切換技術(shù)層管理的一些目錄和環(huán)境變量,另外一個(gè)是基礎(chǔ)配置文件的一個(gè)宏代換替換。我們服務(wù)在跑這個(gè)的過程當(dāng)中,有些服務(wù)遷移,以前是配置的,現(xiàn)在改成了容器。在環(huán)境變量里面,把這個(gè)配置從環(huán)境變量里面讀,可能會(huì)產(chǎn)生一些成本。所以我們提供了一種方式,把變量寫在里面,會(huì)根據(jù)容器這些環(huán)境變量自動(dòng)替換這個(gè)配置。特別是在容器環(huán)境里面,如果這個(gè)容器沒起來之前,不清楚它的IP,問題就必須在internal進(jìn)程里面去解決。

本次WOT峰會(huì)講師演講稿件由51CTO采編整理,如欲了解更多,敬請(qǐng)登錄www.szyisi.cn進(jìn)行查看。

 

 

【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文作者和出處為51CTO.com】

責(zé)任編輯:劉妮娜 來源: 51CTO
相關(guān)推薦

2018-07-03 09:57:43

容器知乎大數(shù)據(jù)

2017-10-23 09:10:52

2018-09-03 08:36:04

知乎容器大數(shù)據(jù)

2018-08-17 09:14:43

餓了么容器演進(jìn)

2023-02-01 10:11:06

轉(zhuǎn)轉(zhuǎn)容器日志

2015-12-30 14:29:53

NFV開放平臺(tái)

2018-06-06 10:50:18

容器開源

2016-06-29 10:29:35

2016WOT企業(yè)安全

2014-05-13 14:11:36

GoRedis

2016-11-26 14:35:49

京東互聯(lián)網(wǎng)

2017-03-20 15:26:12

容器網(wǎng)絡(luò)方案Vlan模式

2023-07-07 19:26:50

自建DTS平臺(tái)

2016-11-07 11:33:02

2014-02-27 14:14:20

第三技術(shù)平臺(tái)梭子魚

2015-11-28 21:05:46

李大學(xué)WOT2015互聯(lián)網(wǎng)+

2015-11-29 22:42:36

2024-03-29 13:25:12

互動(dòng)玩法直播

2019-12-20 10:45:47

Kubernetes容器網(wǎng)絡(luò)

2023-08-28 16:10:00

容器化DockerKubernetes

2017-04-25 15:14:30

WOT金山云郝明非
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)