第三個問題,完善調(diào)度成功率。經(jīng)過SRE和云計算同學的合作努力,現(xiàn)在的成功率已經(jīng)達到了3個9左右。
云計算基礎設施架構(gòu)
上圖是我們云計算基礎設施網(wǎng)絡相關(guān)的架構(gòu)圖,可以看到上面是公網(wǎng)的入口,流量接入大部分都是走的BGP鏈路。往下是多機房間的高速專線,專線的穩(wěn)定性經(jīng)歷了線上大規(guī)模業(yè)務的校驗,像外賣、團購、酒旅等,都是做多機房部署的。
另外就是高冗余的網(wǎng)絡架構(gòu),基本上每個節(jié)點都有一個冗余設備,能保證在其中一臺設備出現(xiàn)問題的時候,整個流量不受影響。入口和出口接入了一些自研的組件,像MGW(參考之前的博客文章《MGW——美團點評高性能四層負載均衡》)、NAT等,使我們對流量的管控變的更靈活。
美團點評應該是美團云最大的用戶,美團云能給美團點評帶來的收益有完善的API支持、高度定制化資源的隔離、調(diào)度機制,還有多機房光纖直連以及較高的資源利用率。
運維自動化
隨著訂單量和機器數(shù)的高速增長,為了更高效的運維,我們不得不往自動化的方向發(fā)展。
在自動化演進的過程中,我們總結(jié)出了自己的一套方法論。
復雜的事情簡單化。比如引入云平臺,基礎設備管理都通過云平臺的系統(tǒng)來做,把底層相關(guān)的東西全部封裝,最終暴露給我們的就是接口或Web界面。 簡單的事情標準化。如果你想做流程或者自動化,沒有一個統(tǒng)一標準的話,你要考慮的點就會很多。所以我們在主機、域名等資源的命名、系統(tǒng)基礎環(huán)境、上下線操作等方面,出了很多的標準,這些標準經(jīng)歷線上的實踐打磨最終形成統(tǒng)一的規(guī)范。等標準都成型之后,我們再引入流程,比如創(chuàng)建一些機器,我會列出需要的操作,然后根據(jù)標準來做SOP,先流程化再自動化。我們通過代碼把手工的工作釋放掉,最終達到了一個自動化的水準。
這是服務樹,它包括線上的云主機、服務及服務負責人的映射關(guān)系,根據(jù)不同的層級做一個樹形的展示。它將多個周邊系統(tǒng)進行打通,因為上面有標簽,通過這個標簽能識別唯一的服務。目前我們打通的系統(tǒng)有配制管理系統(tǒng)、容量系統(tǒng)、監(jiān)控平臺等,還包括線上主機的登錄權(quán)限。
另外最新的一個成本核算,服務樹也已經(jīng)打通,通過服務樹的節(jié)點,只需要進行簡單的操作,就能看到每個事業(yè)群的成本情況。
上圖是我們創(chuàng)建機器的一個簡單流程,首先由技術(shù)人員發(fā)起流程,然后到流程中心,流程中心從服務樹獲取服務的基礎信息,然后將信息發(fā)送到運維平臺,運維平臺根據(jù)這些信息去云平臺創(chuàng)建機器。之后云平臺會返回到運維平臺,運維平臺將創(chuàng)建好的機器加到流程中心提供的服務節(jié)點下,同時調(diào)用配置管理系統(tǒng)對機器進行環(huán)境初始化,初始化完成后會自動添加基礎監(jiān)控信息。之后調(diào)用部署系統(tǒng),對服務進行部署。部署之后,服務根據(jù)它的服務的標簽,最終注冊到服務治理平臺,然后就能提供線上服務了。相當于只要技術(shù)人員發(fā)起,整個流程都是能自動完成的。
自動化這塊就簡單介紹這些,下面介紹一下目前的現(xiàn)狀。
數(shù)據(jù)運營
如上圖所示,現(xiàn)如今公司規(guī)模變得很大,我們對此做了一些相應的拆分,圖中紅色的部分全部由云平臺來負責,從最初的接入層到底層的一些基礎設施,比如機房、網(wǎng)絡、主機,全部由云平臺來封裝。中間又拆封了一層,這一層是由SRE來負責。
現(xiàn)在流程系統(tǒng)已經(jīng)做得比較完善了,接下來我們新的探索目標就是數(shù)據(jù)運營這塊。首先是故障管理,針對線上故障做一個統(tǒng)一管理,包括故障發(fā)生的時間、起因、負責人,根據(jù)它的嚴重程度,分為不同的故障等級。我們也會針對故障的后續(xù)改進持續(xù)跟進優(yōu)化,保證每一個TODO都能落實。