- 相關(guān)推薦
互聯(lián)網(wǎng)時代的網(wǎng)絡(luò)自動化運維
互聯(lián)網(wǎng)上有兩大主要元素"內(nèi)容和眼球","內(nèi)容"是互聯(lián)網(wǎng)公司(或稱ICP)提供的網(wǎng)絡(luò)服務(wù),如網(wǎng)頁、游戲、即時通信等,"眼球"則是借指海量的互聯(lián)網(wǎng)用戶;ヂ(lián)網(wǎng)公司的內(nèi)容往往分布在多個或大或小的IDC中,越來越多的"眼球"在盯著ICP所提供的內(nèi)容,互聯(lián)網(wǎng)公司進行內(nèi)容存儲的基礎(chǔ)設(shè)施也呈現(xiàn)出了爆發(fā)式的增長。為了保障對內(nèi)容的訪問體驗,互聯(lián)網(wǎng)公司需要在不同的運營商、不同的省份/城市批量部署業(yè)務(wù)服務(wù)器用以對外提供服務(wù),并為業(yè)務(wù)模塊間的通信建立IDC內(nèi)部網(wǎng)絡(luò)、城域網(wǎng)和廣域網(wǎng),同時通過自建CDN或CDN專業(yè)服務(wù)公司對服務(wù)盲點進行覆蓋。因此隨著業(yè)務(wù)的增長,運維部門也顯得愈發(fā)重要。他們經(jīng)過這些年的積累,逐步形成了高效的運維體系。本文將結(jié)合國內(nèi)互聯(lián)網(wǎng)公司的經(jīng)驗,重點針對IT基礎(chǔ)設(shè)施的新一代自動化運維體系展開討論。
一、運維的三個階段
● 第一個階段:人人皆運維
在早期,一個公司的IT基礎(chǔ)設(shè)施尚未達到一定的規(guī)模(通常在幾臺到幾十臺機器的規(guī)模),不一定有專門的運維人員或部門,運維的工作分擔(dān)在各類崗位中。研發(fā)人員擁有服務(wù)器權(quán)限,自己維護和管理線上代碼及業(yè)務(wù)。
● 第二個階段:縱向自動化
隨著業(yè)務(wù)量的增長,IT基礎(chǔ)設(shè)施發(fā)展到了另外一個量級(通常在上百臺至幾千臺機器的規(guī)模),開始有專門的運維人員,從事日常的安裝維護工作,扮演"救火隊員",收告警,有運維規(guī)范,但運維主要還是為研發(fā)提供后置服務(wù)。
這個階段已經(jīng)開始逐步向流程化處理進行過渡,運維部門開始輸出常見問題處理的清單,有了自己業(yè)務(wù)范圍適用的自動化腳本,開始利用開源軟件的拼裝完成大部分的工作。
具體表現(xiàn)為:各產(chǎn)品線有自己編寫的腳本,利用如SVN+puppet或chef來完成服務(wù)器的上線和配置管理等工作。
● 第三階段:一切皆自動
在互聯(lián)網(wǎng)化的大潮中,越來越多的黑馬團隊?wèi)?yīng)運而生,都曾有過短時間內(nèi)用戶訪問量翻N倍的經(jīng)歷。在流量爆發(fā)的過程中,ICP的互聯(lián)網(wǎng)基礎(chǔ)服務(wù)設(shè)施是否能夠很好的跟進,直接決定了業(yè)務(wù)內(nèi)容能否滿足海量用戶的并發(fā)訪問。
與此同時,運維系統(tǒng)需要足夠地完善、高效、流程化。谷歌、騰訊、百度和阿里等規(guī)模的公司內(nèi)一般都有統(tǒng)一的運維團隊,有一套或多套自動化運維系統(tǒng)可供參照,運維部門與開發(fā)部門會是相互平行的視角。并且也開始更加關(guān)注IT基礎(chǔ)設(shè)施在架構(gòu)層面的優(yōu)化以及超大規(guī)模集群下的自動化管理和切換(如圖1所示)。
圖1.大型互聯(lián)網(wǎng)公司IT基礎(chǔ)設(shè)施情況概覽
二、BAT(百度、阿里、騰訊)運維系統(tǒng)的分析
國內(nèi)的互聯(lián)網(wǎng)公司百度、阿里、騰訊(以下簡稱:BAT)所提供的主要業(yè)務(wù)內(nèi)容不同,IT架構(gòu)不同,運維系統(tǒng)在發(fā)展過程中有不同的關(guān)注點。
1.騰訊運維:基于ITIL的運維服務(wù)管理
預(yù)計到2015年騰訊在全國將擁有60萬臺服務(wù)器。隨著2012年自動化部署實踐的成功,目前正在進行自動化驗收的工作。在網(wǎng)絡(luò)設(shè)備方面,后續(xù)將實現(xiàn)從需求端開始的全自動化工作:設(shè)備清單自動生成->采購清單自動下發(fā)->端口連接關(guān)系、拓撲關(guān)系自動生成->配置自動下發(fā)->自動驗收。整個運維流程也已由初期的傳統(tǒng)IT管理演進到基于ITIL的服務(wù)管理流程(如圖2所示)。
圖2.騰訊基于ITIL的運維服務(wù)管理
2.阿里運維系統(tǒng):基于CMDB的基礎(chǔ)設(shè)施管理+邏輯分層建模
CMDB(Configuration Management Database) 配置管理數(shù)據(jù)庫(以下簡稱:CMDB),將IT基礎(chǔ)架構(gòu)的所有組件存儲為配置項,維護每個配置項的詳細數(shù)據(jù),維護各配置項之間的關(guān)系數(shù)據(jù)以及事件、變更歷史等管理數(shù)據(jù)。通過將這些數(shù)據(jù)整合到中央存儲庫,CMDB可以為企業(yè)了解和管理數(shù)據(jù)類型之間的因果關(guān)系提供保障。同時,CMDB與所有服務(wù)支持和服務(wù)交付流程都緊密相聯(lián),支持這些流程的運轉(zhuǎn)、發(fā)揮配置信息的價值,同時依賴于相關(guān)流程保證數(shù)據(jù)的準確性。可實現(xiàn)IT服務(wù)支持、IT運維以及IT資產(chǎn)管理內(nèi)部及三者之間的流程整合與自動化。在實際的項目中,CMDB常常被認為是構(gòu)建其它ITIL流程的基礎(chǔ)而優(yōu)先考慮,ITIL項目的成敗與是否成功建立CMDB有非常大的關(guān)系。
3.百度自動化運維:部署+監(jiān)控+業(yè)務(wù)系統(tǒng)+關(guān)聯(lián)關(guān)系
百度主要面臨的運維挑戰(zhàn)包括:突發(fā)的流量變化、復(fù)雜環(huán)境的關(guān)聯(lián)影響、快速迭代的開發(fā)模式以及運維效率、運維質(zhì)量、成本之間的平衡等等。百度的運維團隊認為,當(dāng)服務(wù)器規(guī)模達到上萬臺時,運維視角需要轉(zhuǎn)為以服務(wù)為粒度。萬臺并不等于"百臺*100";機器的運行狀態(tài),也不再代表業(yè)務(wù)的工作狀態(tài);運維部門為研發(fā)提供前置服務(wù),服務(wù)與服務(wù)之間關(guān)系也隨著集群的擴大逐漸復(fù)雜起來。
圖3.百度自動化運維技術(shù)框架
百度的自動化運維技術(shù)框架,劃分為部署、監(jiān)控、業(yè)務(wù)系統(tǒng)、關(guān)聯(lián)關(guān)系四大部分,整個框架更多突出了業(yè)務(wù)與IT基礎(chǔ)設(shè)施的融合,注重"關(guān)聯(lián)關(guān)系"的聯(lián)動。所謂關(guān)聯(lián)關(guān)系,主要是指任務(wù)與任務(wù)之間的時序依賴關(guān)系、任務(wù)與任務(wù)之間的數(shù)據(jù)依賴關(guān)系、任務(wù)與資源之間的引用依賴關(guān)系,分別對應(yīng)到任務(wù)調(diào)度、數(shù)據(jù)傳輸、資源定位的服務(wù)流程中,形成了多條服務(wù)鏈。
關(guān)聯(lián)關(guān)系的運維與業(yè)務(wù)較強相關(guān),需要有一套系統(tǒng)能夠理清楚關(guān)系的全貌,從而在復(fù)雜的服務(wù)鏈上,定位運行所在的環(huán)節(jié),并在發(fā)生故障時預(yù)估影響范圍,及時定位并通知相應(yīng)的部門。在這樣的一套系統(tǒng)中,自動化監(jiān)控系統(tǒng)非常重要。百度的技術(shù)監(jiān)控框架,主要通過數(shù)據(jù)采集、服務(wù)探測、第三方進行信息收集,進行監(jiān)控評估后交給數(shù)據(jù)處理和報警聯(lián)動模塊處理,通過API接口進行功能擴充(如圖4所示)。
圖4.百度自動化技術(shù)監(jiān)控框架
其實無論是BAT等互聯(lián)網(wǎng)企業(yè)還是其他行業(yè)的企業(yè),在IT建設(shè)中都會遵循IT基礎(chǔ)架構(gòu)庫(ITIL)或ISO20000服務(wù)管理的最佳實踐,采用自動化IT管理解決方案以實現(xiàn)重要的業(yè)務(wù)目標(biāo),如減少服務(wù)中斷、降低運營成本、提高IT效率等等。隨著ISO20000、ITIL v3.0的發(fā)布和推廣,兩者已經(jīng)成為事實上的某種標(biāo)準。在當(dāng)今企業(yè)IT管理領(lǐng)域,對兩個標(biāo)準有著很迫切的需求。特別是ISO20000的認證要求,已經(jīng)成為企業(yè)越來越普遍的需求 。ITIL v3.0包含了對IT運維從戰(zhàn)略、設(shè)計到轉(zhuǎn)換、運營、改進的服務(wù)全生命周期的管理,相關(guān)方案往往覆蓋了多個領(lǐng)域和多個產(chǎn)品,規(guī)劃實施和工具的選擇會比較糾結(jié)。如果選擇開源的工具,從CMDB開始就會遇到很多的開發(fā)工作,對于很多注重成本收益比的企業(yè),可以參考,但由于無法保證性能與效果并不一定適用。因此,成熟的商業(yè)方案會是更好的選擇。
最新的iMC V7版本,圍繞資源、用戶、業(yè)務(wù)三個維度進行創(chuàng)新,發(fā)布了SOM服務(wù)運維管理(基于ISO20000、ITIL標(biāo)準)等組件,增加了對服務(wù)器的管理,能很好的滿足更多互聯(lián)網(wǎng)化的場景需求。
通常認為,一個高效、好用的配置管理數(shù)據(jù)庫一般需要滿足6條重要標(biāo)準,即聯(lián)合、靈活的信息模型定義、標(biāo)準合規(guī)、支持內(nèi)置策略、自動發(fā)現(xiàn)和嚴格的訪問控制。企業(yè)IT基礎(chǔ)架構(gòu)的元素類型、管理數(shù)據(jù)的類型往往有較多種,如網(wǎng)絡(luò)設(shè)備、服務(wù)器、虛擬機等,因此對于多種信息的存儲需要有合適的聯(lián)合的方法。雖然 iMC智能管理平臺在網(wǎng)絡(luò)設(shè)備、服務(wù)器設(shè)備等方面已經(jīng)能夠較好的的滿足,但是隨著服務(wù)器虛擬化技術(shù)的發(fā)展,虛擬機正越來越多的成為IT基礎(chǔ)架構(gòu)的一大元素。因此,針對這一需求華三通信基于CAS CVM虛擬化管理系統(tǒng),對服務(wù)器CPU、內(nèi)存、磁盤I/O、網(wǎng)絡(luò)I/O等更細節(jié)的重要資源以及虛擬機資源進行全面的管理。與BAT不同,華三通信的網(wǎng)管軟件面向全行業(yè),目前雖然沒有對域名管理等特殊資源的管理,但是能夠通過API接口等方式與特有系統(tǒng)進行聯(lián)動,進而滿足定制化運維的需求,尤其是在互聯(lián)網(wǎng)化的場景中,針對不同的業(yè)務(wù)需求,可以實現(xiàn)很多定制化的對接需求,例如,iMC+WSM組件與國內(nèi)某大互聯(lián)網(wǎng)公司自有Portal系統(tǒng)進行了對接,打通了iMC工具與用戶自有運維平臺,很好的實現(xiàn)了架構(gòu)融和。另外,與阿里的邏輯分層建模相似,H3C "iMC+CAS"軟件體系在上層也做了很多的邏輯抽象、分層,形成了諸多的模塊,也即是大家看到的各種組件。
三、網(wǎng)絡(luò)自動化運維體系
"哪怕是一個只有基礎(chǔ)技術(shù)能力的陌生人,也能做專業(yè)的IT運維;哪怕是一個只有初中學(xué)歷的運維人員,也能夠帶隊完成中小型機房節(jié)點的建設(shè),并負責(zé)數(shù)百至上千臺服務(wù)器的維護管理工作"--這是一些公司對自己IT運行維護水平的一個整體評價。看似有些夸大的嫌疑,但實際上依托于強大的IT運維系統(tǒng),國內(nèi)已經(jīng)有不少互聯(lián)網(wǎng)公司能夠達到或者接近這一標(biāo)準。
這些企業(yè)都經(jīng)歷了運維發(fā)展過程中的各個階段,運維部門曾經(jīng)也是被動的、孤立的、分散的"救火隊"式的團隊,在后來的發(fā)展過程中,IT系統(tǒng)架構(gòu)逐漸走向標(biāo)準化、模型化,運維部門建立了完整的設(shè)備、系統(tǒng)資源管理數(shù)據(jù)庫和知識庫,包括所有硬件的配置情況、所有軟件的參數(shù)配置,購買日期、維修記錄,運維風(fēng)險看板等等,通過網(wǎng)管軟件,進行系統(tǒng)遠程自動化監(jiān)控。運維過程中系統(tǒng)會收集所有的問題、事件、變更、服務(wù)級別等信息并錄入管理系統(tǒng),不斷完善進而形成一套趨向自動化的運作支撐機制。按照云計算的體系架構(gòu),在這樣一套系統(tǒng)中,主要的IT資源包括計算、存儲、網(wǎng)絡(luò)資源,近些年隨著網(wǎng)絡(luò)設(shè)備廠商的推動,網(wǎng)絡(luò)設(shè)備管理方面的自動化技術(shù)也得到十足的發(fā)展。
總結(jié)來看,一個企業(yè)在進行互聯(lián)網(wǎng)化的建設(shè)初期,就需要考慮到隨著用戶訪問量的增加,資源如何進行擴展。具體可以細化為規(guī)劃、建設(shè)、管理、監(jiān)控、運維五個方面。
1.規(guī)劃模型化
為了確保后續(xù)業(yè)務(wù)能夠平滑擴容,網(wǎng)管系統(tǒng)能夠順利跟進,互聯(lián)網(wǎng)企業(yè)一般在早期整體系統(tǒng)架構(gòu)設(shè)計時便充分考慮到標(biāo)準化、模型化,新增業(yè)務(wù)資源就好比點快餐,隨需隨取。
標(biāo)準化:一是采用標(biāo)準協(xié)議和技術(shù)搭建,擴展性好,使用的產(chǎn)品較統(tǒng)一,便于管理;二是采用數(shù)據(jù)中心級設(shè)備,保證可靠性、靈活性,充分考慮業(yè)務(wù)系統(tǒng)對低時延的要求。
模型化:基于業(yè)務(wù)需求設(shè)計網(wǎng)絡(luò)架構(gòu)模型,驗證后形成基線,可批量復(fù)制,統(tǒng)一管理,也適宜通過自動化提高部署效率、網(wǎng)管效率。
圖5.常見互聯(lián)網(wǎng)IDC架構(gòu)
2.建設(shè)自動化
互聯(lián)網(wǎng)IT基礎(chǔ)設(shè)施具備批量復(fù)制能力之后,可以通過自動化技術(shù),提高上線效率。在新節(jié)點建設(shè)過程中,3~5人的小型團隊即可完成機房上線工作。例如某互聯(lián)網(wǎng)公司某次針對海外緊急業(yè)務(wù)需求,一共派遣了2名工程師到現(xiàn)場進行設(shè)備安裝部署和基本配置,而后通過互聯(lián)網(wǎng)鏈路,設(shè)備從總部管理系統(tǒng)中自動獲取配置和設(shè)備版本,下載業(yè)務(wù)系統(tǒng),完成設(shè)備安裝到機房上線不超過1周時間。
要達到自動化運維的目標(biāo),建設(shè)過程中需要重點考慮批量復(fù)制和自動化上線兩個方面(如圖6所示)。
批量復(fù)制:根據(jù)業(yè)務(wù)需要,梳理技術(shù)關(guān)注點,設(shè)計網(wǎng)絡(luò)模型,進行充分測試和試點,輸出軟、硬件配置模板,進而可進行批量部署。
自動化上線:充分利用TR069、Autoconfig等技術(shù),采用零配置功能批量自動化上線設(shè)備,效率能夠得到成倍提升。
圖6.批量配置與自動化上線
○ Autoconfig與TR069的主要有三個區(qū)別:
○ Autoconfig適用于零配置部署,后續(xù)一般需要專門的網(wǎng)管系統(tǒng);TR069是一套完整的管理方案,不僅在初始零配置時有用,后續(xù)還可以一直對設(shè)備進行監(jiān)控和配置管理、軟件升級等。
○ Autoconfig使用DHCP與TFTP--簡單,TR069零配置使用DHCP與HTTP--復(fù)雜,需要專門的ACS服務(wù)器。
安全性:TR069更安全,可以基于HTTPS/SSL。
而H3C iMC BIMS實現(xiàn)了TR-069協(xié)議中的ACS(自動配置服務(wù)器)功能,通過TR-069協(xié)議對CPE設(shè)備進行遠程管理,BIMS具有零配置的能力和優(yōu)勢,有靈活的組網(wǎng)能力,可管理DHCP設(shè)備和NAT后的私網(wǎng)設(shè)備。BIMS的工作流程如圖7所示。
圖7.H3C iMC BIMS工作流程
3.管理智能化
對于網(wǎng)管團隊而言,需要向其他團隊提供便利的工具以進行信息查詢、告警管理等操作。早期的網(wǎng)管工具,往往離不開命令行操作,且對于批量處理的操作支持性并不好,如網(wǎng)絡(luò)設(shè)備的MIB庫相比新的智能化技術(shù)Netconf,好比C和C++,顯得笨拙許多。因此使用的角度考慮,圖形化、智能化的管理工具,往往是比較受歡迎。
智能化:使用新技術(shù),提升傳統(tǒng)MIB式管理方式的處理效率,引入嵌入式自動化架構(gòu),實現(xiàn)智能終端APP化管理(如圖8所示)。
圖8.消息、事件處理智能化
● Netconf技術(shù)
目前網(wǎng)絡(luò)管理協(xié)議主要是SNMP和Netconf。SNMP采用UDP,實現(xiàn)簡單,技術(shù)成熟,但是在安全可靠性、管理操作效率、交互操作和復(fù)雜操作實現(xiàn)上還不能滿足管理需求。Netconf采用XML作為配置數(shù)據(jù)和協(xié)議消息內(nèi)容的數(shù)據(jù)編碼方式,采用基于TCP的SSHv2進行傳送,以RPC方式實現(xiàn)操作和控制。XML可以表達復(fù)雜、具有內(nèi)在邏輯、模型化的管理對象,如端口、協(xié)議、業(yè)務(wù)以及之間的關(guān)系等,提高了操作效率和對象標(biāo)準化;采用SSHv2傳送方式,可靠性、安全性、交互性較好。二者主要對比差異如表1所示。
表1 網(wǎng)管技術(shù)的對比
● EAA嵌入式自動化架構(gòu)
EAA自動化架構(gòu)的執(zhí)行包括如下三個步驟。
○ 定義感興趣的事件源,事件源是系統(tǒng)中的軟件或者硬件模塊,如:特定的命令、日志、TRAP告警等。
○ 定義EAA監(jiān)控策略,比如保存設(shè)備配置、主備切換、重啟進程等。
○ 當(dāng)監(jiān)控到定義的事件源發(fā)生后,觸發(fā)執(zhí)行EAA監(jiān)控策略。
4.監(jiān)控平臺化
利用基本監(jiān)控工具如Show、Display、SNMP、Syslog等,制作平臺化監(jiān)控集成環(huán)境,實現(xiàn)全方位監(jiān)控(如圖所示)。
【互聯(lián)網(wǎng)時代的網(wǎng)絡(luò)自動化運維】相關(guān)文章:
運維項目管理流程06-08
企業(yè)IT運維管理選型建議03-20
下一代網(wǎng)絡(luò)運維管理技術(shù)的發(fā)展趨勢03-20
互聯(lián)網(wǎng)+時代下電影該何去何從03-06
IT運維管理包含的六大趨勢03-20
企業(yè)該如何進行高效IT運維管理03-20