成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如烹小蝦:運維自動化閉環(huán),騰訊是這樣做的

運維 系統(tǒng)運維 系統(tǒng) 自動化
2015年的時候我們幾個騰訊的同事一同創(chuàng)業(yè),希望把我們的想法和經(jīng)驗?zāi)軌騻鬟f出來。通過推動和幫助各個企業(yè)進行運維平臺的建設(shè),來解放運維的壓力,幫助運維進行轉(zhuǎn)型,并形成運維技術(shù)的企業(yè)競爭力。

[[166492]]

本文是數(shù)人云深圳技術(shù)分享課上優(yōu)維科技聯(lián)合創(chuàng)始人彭鯉航的演講實錄,演講主題是《運維自動化實踐》,由高效運維公眾號編輯,如需轉(zhuǎn)載,請全文保留。否則必究。

精彩觀點搶鮮看

實現(xiàn)運維自動化閉環(huán),最主要就是配置管理、狀態(tài)管理和變更管理能力。

治大國如烹小蝦,我們來類比餐廳老板,看如何實現(xiàn)炒菜的自動化:

  • 首先,我要知道我的廚房里到底有些什么東西是可用的,比如備了哪些菜,有那些工具,這些就是配置管理。
  • 此外,我要讓系統(tǒng)幫我去做菜,是炒、是燉還是煮?是加水、加油還是加火,這些都是變更管理的能力。
  • 最后,系統(tǒng)還需要能夠知道我炒的菜目前是一個什么樣的情況,有幾分熟,溫度有沒有太高,油是不是太少什么的。這些就是狀態(tài)管理的能力。

不管是什么樣的自動化系統(tǒng),實現(xiàn)本質(zhì)就是這三個能力的閉環(huán)。

正文

我結(jié)合自己在運維方面的一些工作經(jīng)驗,介紹一下怎么樣去設(shè)計和建設(shè)一套完整的運維系統(tǒng)以便支持分布式架構(gòu)的系統(tǒng)。

首先簡單自我介紹下,本人從事運維相關(guān)的工作有很長一段時間了,應(yīng)該有十幾年了吧!

我的第一份工作是做系統(tǒng)集成,期間建過網(wǎng)絡(luò)、建過機房、爬過天花、搬過服務(wù)器,感覺全是各種體育鍛煉,鍛煉出來的身體正好就是干運維的料子。因為運維首先得有體力搬得起服務(wù)器。

印象中我搬過最重的服務(wù)器是 IBM的RS6000,應(yīng)該有個幾百斤吧!一個人根本扛不動,四個人搬都非常吃力。我原來身體好的時候能做一百多個俯臥撐,自從不搬服務(wù)器了,現(xiàn)在估計30個都做不動了。

2006我加入了騰訊,騰訊企業(yè)文化很好,經(jīng)常會有很多小組活動、部門活動什么的,但是做運維很苦。經(jīng)常在外面玩得時候,人剛到電話就過來了。

有一段時間我專門負責(zé)值班優(yōu)化,承包了所有的告警處理,那時候每天晚上要起來四五次處理故障,一個故障最少也要搞個半個多小時到一個小時,當(dāng)時一直覺得這事只熬過來別的事情就應(yīng)該都是小菜一碟了。

雖然當(dāng)我有小孩之后,才發(fā)現(xiàn)原來還有比干運維更辛苦的事情的。

都說運維苦,但其實只要干好了,也可以是非常快樂和有成就感的。為了讓運維都干得比較快樂。

所以,2015年的時候我們幾個騰訊的同事一同創(chuàng)業(yè),希望把我們的想法和經(jīng)驗?zāi)軌騻鬟f出來。通過推動和幫助各個企業(yè)進行運維平臺的建設(shè),來解放運維的壓力,幫助運維進行轉(zhuǎn)型,并形成運維技術(shù)的企業(yè)競爭力。

1、運維的趨勢與挑戰(zhàn)

先說說目前的運維的一些變化。

 

首先,從運維的職能來看。只要干好一件事就可以,那就是讓我們管的機器,或者業(yè)務(wù)能夠一直正常運行,只要它不故障,基本就沒有運維的事了。

但如果出了異常,不管什么事都會有我們的責(zé)任,這就是運維。

為了做好運維,需要關(guān)注的事情很多很廣。從能力維度來看,我們需要關(guān)注運營產(chǎn)品的質(zhì)量,效率成本。從產(chǎn)品的生命周期過程來看,我們需要關(guān)注發(fā)布前、發(fā)布中和發(fā)布后的整個過程。

 

其次,從運維服務(wù)的發(fā)展趨勢來看。很多年前我們經(jīng)常非常會YY一下,我們在騰訊所做的運維優(yōu)化和支持是不是可以打包成服務(wù)或解決方案去支持商業(yè)用戶,當(dāng)年覺得是異想天開。

但隨著云計算的出現(xiàn),大家可以看到,現(xiàn)在上面已經(jīng)有很多的服務(wù),其實就運維所做的優(yōu)化和提供的服務(wù)。運維的價值不斷地從內(nèi)部向外去傳遞。運維能力的建設(shè)也越來越受到企業(yè)的重視。

 

最后,來看看運維能力的發(fā)展趨勢。這里我列出了騰訊互聯(lián)網(wǎng)運維團隊所經(jīng)歷的三個階段。

最早的時候運維只要關(guān)注各種底層的東西,如服務(wù)器、網(wǎng)絡(luò)、交換機等,把安排的事情干完就可以。

但隨著你業(yè)務(wù)規(guī)模做大,需要做的事情就沒那么簡單,不但要把事情做了,還得做得快,做得好,這就需要有能力平臺的積累。

通過運維平臺,一方面是把我們好的、正確的經(jīng)驗積累下來,二是能夠通過平臺把我們的工作變得更可靠、更高效。

當(dāng)平臺建設(shè)達到一定的水平之后,就進入到了第三個階段,即數(shù)據(jù)分析和云計算的階段,在目前大數(shù)據(jù)分析能力快速發(fā)展的情況下,數(shù)據(jù)的價值不斷地被大家發(fā)現(xiàn)和有效利用。

運維作為數(shù)據(jù)的直接管理人,我們可以在數(shù)據(jù)的層面上去挖掘很多的價值,尤其是在服務(wù)優(yōu)化和成本優(yōu)化等方面,運維可以通過把有價值的數(shù)據(jù)實時采集和分析出來,并反饋給研發(fā)、產(chǎn)品團隊,來推動產(chǎn)品的不斷優(yōu)化。

從這個角度來看,這里有很多的挑戰(zhàn),比如說云計算帶來的一些新技術(shù),對人能力的要求。這些不同的新開源組件,新的技術(shù),新的方法,都會對傳統(tǒng)的運維工作帶來變革的要求。

甚至今天主題提的分布式存儲,分布式架構(gòu),各種新的架構(gòu)方案和技術(shù)的流程也對運維工作帶來很多沖擊,這些都是需要我們?nèi)ッ鎸Γプ兏锏摹?/p>

 

舉個例子,我剛到騰訊的時候,騰訊有一個很奇怪的面試官,叫通道委員會。他反復(fù)問我什么是ITIL,那個時候完全不懂,大家做運維的應(yīng)該沒有人不熟悉這個東西了。以前流行通過ITIL,通過流程的理念來管理IT系統(tǒng)。

這東西雖然有用,但運維來說非常的煩人,它會設(shè)定沒多的門檻和流程,其實這里面很多是不科學(xué)的。

比如,我們以前要求做故障單管理,故障修復(fù)完一定要關(guān)閉故障單,我故障早都已經(jīng)恢復(fù)完了,但系統(tǒng)總是記錄我忘記結(jié)單,處理超時。為了關(guān)閉事件單,我就需要浪費額外 的時間去登陸系統(tǒng),去手工關(guān)閉流程。

這種時間上的浪費,當(dāng)你維護的系統(tǒng)變大的時候,效率的損失就邊得很可怕了。所以ITIL的管理理念現(xiàn)在已經(jīng)不流行了。

現(xiàn)在大家都講DEVOPS,提研發(fā)、測試和運維的協(xié)同。以前ITIL講分工,發(fā)布就是運維的責(zé)任,現(xiàn)在DEVOPS強調(diào)協(xié)同,發(fā)布就都讓研發(fā)去做了。

這樣很合理,因為程序發(fā)布這事你讓運維去負責(zé),其實大部分情況下出了問題運維根本識別不出來,你說別人寫的代碼到底有沒有問題我怎么知道,真出了問題,耽誤了時間,最后事情還是得交由開發(fā)來定位和處理。

而DEVOPS重視的就是高效,整個團隊協(xié)同去處理這個事情,什么樣的模式或什么樣的人去做這個事情會變得更高效,誰就是第一責(zé)任人,我們就讓他去負責(zé),這樣團隊的流轉(zhuǎn)就更高效和科學(xué)了。這是理念上的一些變革。

對應(yīng)這些變革,運維人員的能力要求也有所變化。以前我們搬搬服務(wù)器,寫個腳本什么的就可以了。但是隨著技術(shù)和管理理念的變化,現(xiàn)在不一樣了,運維也要開始寫代碼了,JAVA、PYTHON、C++什么的。

運維在公司的角色定位也不太一樣了,以前就只是任務(wù)實施,現(xiàn)在慢慢朝平臺建設(shè),甚至朝運營分析方向轉(zhuǎn)變。我們不但要有能力寫代碼還得有能力和研發(fā)一起討論架構(gòu),和產(chǎn)品進行運營溝通。

真要想把運維做好,你要學(xué)的東西太多了。對于各種新技術(shù)的學(xué)習(xí)、應(yīng)用和融合,如果說每個公司或每個運維都要去重頭開始琢磨,那成本會非常大,對人的要求也會非常高。

2、平臺建設(shè)理念

剛才提了很多挑戰(zhàn)和趨勢,總的來說,如果我們要去做一個運維平臺,去解決運維遇到的這些問題和挑戰(zhàn),我們要怎么做,怎么樣才能夠把運維的能力通過平臺去不斷地提升?

我這里給了一些自己的想法,這些也是我們在騰訊這么些年積累下來的經(jīng)驗。

首先想講的是平臺建設(shè)的理念。很多時候做事情時,事情背后的理念往往會比做事情的方法會更重要,不知道大家認不認同這一點。

技術(shù)人員特別容易陷進一個誤區(qū),我要做一個事情,只要關(guān)注最新潮的方法和手段,背后的一些背景和因果全部都不管。

就比方說有些技術(shù)人員,他們喜歡用Markdown來寫文檔,但他們就從來不考慮寫出來的東西商務(wù)人員該怎么使用,結(jié)果我們公司的所有商務(wù)也得學(xué)用Markdown。在公司內(nèi)部也許這種妥協(xié)是容易的,但放到市場環(huán)境下這種妥協(xié)就不現(xiàn)實了。

所以,我覺得在建設(shè)運維平臺之前,有必要先溝通一些成功的經(jīng)驗和方法輪。

任何公司想要建設(shè)它自己的運維平臺都會是一個龐大并復(fù)雜的系統(tǒng)工程。這里面牽涉到方方面面。很多人往往在設(shè)計的時候會希望一步到位。

比如,希望要一步到位,希望直接就設(shè)計一個能力非常全面的平臺,這個平臺要包含所有需要的功能,要把權(quán)限管理好,要把安全控制住,要把穩(wěn)定性做高、要把用戶體驗做精。

這種情況下,平臺的建設(shè)就會很難,建設(shè)的周期也會非常的長,很多情況下項目可能還沒有建設(shè)完成,需求就已經(jīng)變了,項目也就爛尾了。

其實,我們應(yīng)該考慮先從0到1,然后再從1做到N。先考慮把核心最迫切的功能功能先快速實現(xiàn),只有用起來才是好平臺。簡單的功能可以先實現(xiàn),再不斷地慢慢再完善,不斷地豐富它的功能,這樣過程中的平臺收益才會最大化。

 

第二,標準先行。做過運維的人都知道,我要管理的事情非常多,環(huán)境會非常復(fù)雜。當(dāng)我們推行標準化的時候,它帶來的最大好處是降低平臺設(shè)計和實現(xiàn)的難度。

標準化能力和系統(tǒng)建設(shè)能力是一個翹翹板。我們在業(yè)務(wù)架構(gòu)標準化方面做得好一點,那么系統(tǒng)建設(shè)的復(fù)雜度就低一點。

比如說,如果我們的運維標準化做得較差,我們有10種不同的硬件,每種配置都不一樣,上面操作系統(tǒng)也不一樣,這種情況下我們的平臺就需要做不同系統(tǒng)和環(huán)境做兼容性,系統(tǒng)實施成本就非常的高了。

標準化先行,這樣系統(tǒng)的建設(shè)復(fù)雜度和難度都會相應(yīng)降低。

 

第三,快速嘗試。復(fù)雜系統(tǒng)的設(shè)計和建設(shè)都是非常難的,而且對于沒做過的東西,其實很多方面在一開始的時候跟本想不清楚,也想不明白,這種情況下,應(yīng)該先簡單一點快速實現(xiàn)DEMO原型,而不是停留在反復(fù)的討論和設(shè)計。

只要系統(tǒng)在應(yīng)用環(huán)境中跑一陣子,很快你就會發(fā)現(xiàn)問題和找到相應(yīng)對策的。

 

第四,接受不完美。騰訊現(xiàn)在自動化運維平臺對外有兩個品牌,織云和藍鯨,而我剛好在兩個團隊都待過,也都經(jīng)歷了兩個平臺的建設(shè)和成長。

比如織云平臺的建設(shè),最早是從打包規(guī)范的推廣開始。早期的平臺只是一個簡單的腳本工具平臺,之后才逐漸補充了一此管理功能,如Web管理,組件管理,包發(fā)布、配置發(fā)布等,最后才逐漸建成面向全業(yè)務(wù)管理和調(diào)度的織云平臺。

這里一定是個逐步完善、逐步演進的過程。騰訊也有很多一開始就規(guī)劃得很大的項目,現(xiàn)在看起來,基本上這些大項目都死光了。所以,這里在設(shè)計和建設(shè)中,大家都要能夠接受或是忍受不完美。

對技術(shù)人員來說,這點也許會有點困難吧。記得上次參加GOPS全球運維大會的時候大眾點評的一個講師提到一點很有道理:

我們在面對不完美的平臺時,要知道沒有任何一個平臺是完美的,也沒有任何一個技術(shù)是完美的。但我們決策用不用它的時候,可以評估,如果我用它,它帶來的好處、優(yōu)點比缺點更多,那這個平臺和技術(shù)就是有價值的。

 

第五,業(yè)務(wù)導(dǎo)向。建成的平臺能否發(fā)揮作重就看我們的推廣能力,這里實際也是有一些技巧的。任何一個新的東西,任何一個新的技術(shù)、在推廣的時間其實都會遇到阻力。

就騰訊內(nèi)部的平臺推廣經(jīng)驗來看,最有效的手段就是先找一些比較配合的團隊、或是重點的業(yè)務(wù),這些團隊和業(yè)務(wù)相對的資源也比較豐富。當(dāng)我們快速完成了這些試點業(yè)務(wù)的推廣,就能夠在公司內(nèi)部建立業(yè)務(wù)標桿,并形成影響力和口碑。

當(dāng)建立了業(yè)務(wù)標桿之后,后面的業(yè)務(wù)再去推動就會容易很多了。所以,過程中平臺快速的上線,盡快輸出成效,是非常重要的。

3、平臺建設(shè)實踐

講完方法論,現(xiàn)在回到具體的系統(tǒng)設(shè)計和實現(xiàn)。我們應(yīng)該如何來設(shè)計這個運維平吧呢?作為一個完整的運維平臺,一定要考慮形成運維管理能力的閉環(huán),并逐步實現(xiàn)自動化。

 

如何才能實現(xiàn)運維的自動化閉環(huán)呢?最主要就是掌握配置管理、狀態(tài)管理和變更管理能力。

運維的自動化大家可能不太好理解,我舉個簡單的例子。比如我是餐廳老板,我希望實現(xiàn)炒菜的自動化。那要怎么實現(xiàn)呢?其實非常簡單:

  • 首先,我要知道我的廚房里到底有些什么東西是可用的,比如備了哪些菜,有那些工具,這些就是配置管理。
  • 此外,我要讓系統(tǒng)幫我去做菜,是炒、是燉還是煮?是加水、加油還是加火,這些都是變更管理的能力。
  • 最后,系統(tǒng)還需要能夠知道我炒的菜目前是一個什么樣的情況,有幾分熟,溫度有沒有太高,油是不是太少什么的。這些就是狀態(tài)管理的能力。

不管是什么樣的自動化系統(tǒng),實現(xiàn)本質(zhì)就是這三個能力的閉環(huán)。

對于運維平臺來說,我們通過配置管理能務(wù)來收采和管理所有的系統(tǒng)資源,通過狀態(tài)管理能力實時的監(jiān)控資源的運行情況,最后再根據(jù)監(jiān)控的結(jié)果來對現(xiàn)多的資源進行變更和調(diào)度。

能力閉環(huán)實現(xiàn)了,自動化能力也就實現(xiàn)了。

 

在運維平臺的設(shè)計實現(xiàn)上。我里有一張PPT,大家應(yīng)該經(jīng)常能夠在老王的演講中看得到。

為了實現(xiàn)一個完整的平臺能力,我們需要對整個平臺進行分層設(shè)計,最底層是各種硬件和資源的管理平臺,它能夠抽象地去管理各種物理資源和邏輯資源,和這些資源自身有關(guān)的管理能力也都會放在這一層。

再往上是通用能力層,這一層實際上是把運維所負責(zé)的常規(guī)服務(wù)都實現(xiàn)成為系統(tǒng)能力。 比如運維日常的配置管理、域名管理、文件管理等。

通過第二層的平臺把運維的工作全部服務(wù)化,而這里服務(wù)化的核心就是把日常手工工作都進行系統(tǒng)封裝,變成服務(wù)接口。這種服務(wù)接口可以供外部的服務(wù)或更上層的系統(tǒng)進行調(diào)用和擴展。

當(dāng)運維系統(tǒng)的服務(wù)能力構(gòu)建成熟,我們就可以上更上層構(gòu)建基礎(chǔ)能力平臺,比如說用于管理交付的持續(xù)交付平臺,用于管理服務(wù)狀態(tài)的智能監(jiān)控平臺等。

當(dāng)這些基礎(chǔ)能力平臺完成后,最后我們可以開始建設(shè)各種向向業(yè)務(wù)場景的精細化管理平臺。比如:

  • 我們希望能夠提升產(chǎn)品服務(wù)質(zhì)量,我們可以建設(shè)相應(yīng)的業(yè)務(wù)可用性分析平臺;
  • 我們希望降低產(chǎn)品成本,我們可以建設(shè)相應(yīng)的容量優(yōu)化平臺;
  • 我們希望提升變更效率,我們可以建設(shè)相應(yīng)的設(shè)備擴容調(diào)度平臺等等。

從這里可以看到平臺的分層設(shè)計,一定是從去場景化的基礎(chǔ)能力開始向場景化的服務(wù)能力延伸,所以我們的系統(tǒng)建設(shè)步驟也應(yīng)該遵循這個規(guī)律。

進一步展開運維平臺的實現(xiàn),現(xiàn)在讓我們來看一下每一個模塊的重要功能和設(shè)計挑戰(zhàn)。

4、配置管理平臺介紹

 

首先說說CMDB配置管理。其實配置管理這個東西非常簡單,不管什么樣規(guī)模的公司,肯定都會有自己的配置管理的系統(tǒng)或是辦法。最簡單的配置管理,它其實就是一個excel文檔。

如果復(fù)雜一點,我們可以搭建一個數(shù)據(jù)庫,它一樣也可以實現(xiàn)CMDB的功能。但是如果真正要把這個東西做好,要考慮的問題就比較多了。

比如說,傳統(tǒng)的ITIL理念是非常重視CMDB的,但它把所有精力都集中在硬件資源的管理,如機房、機柜、交換機、網(wǎng)絡(luò),這些層面的東西。ITIL下的CMDB會把這些東西管理得很好。

但就運維所維護的業(yè)務(wù)來說,這些信息只有其中的一個很小的一部分,而且它們對業(yè)務(wù)自動化運維所能夠提供的價值其實是非常低的。因為這些硬件信息不管管理得再怎么精細,在具體操作的層面還是需要依賴人來進行操作。

相反,在應(yīng)用程序的層面,我們可以做的事情就很多。如果能力到位了,我們甚至可以實現(xiàn)故障自愈、自動調(diào)度、彈性計算等高級的自動化能力。而這些能力,需要我們的CMDB能夠關(guān)注和管理面向業(yè)務(wù)的配置信息。

比如說我業(yè)務(wù)資源是什么樣的,我的程序是什么樣的,我的應(yīng)用是什么樣的,我的權(quán)限是什么樣的,我的流程,我的策略是什么,這些東西是非常有價值的。

只有把這些東西全面管理起來,才能夠真正去驅(qū)動整個業(yè)務(wù)的自動化流程。舉個例子,比如說常規(guī)的一些磁盤空間告警,我要想實現(xiàn)故障治愈,首先我得有明確的處理策略。

比如每一臺機器對應(yīng)的磁盤空間清理策略是什么,而這些是需要在CMDB中管理起來的。當(dāng)出現(xiàn)任何異常的時候,我們的自動化系統(tǒng)直接到CMDB里查詢相應(yīng)的策略,就可以實時針對不同的業(yè)務(wù)去實現(xiàn)自動恢復(fù)。

除了業(yè)務(wù)信息的管理,CMDB設(shè)計還需要考慮到數(shù)據(jù)模型的管理能力,即怎么樣去支持和實現(xiàn)靈活的數(shù)據(jù)存儲結(jié)構(gòu)。

我們要管理的數(shù)據(jù)不會都象EXCEL一樣簡單,相反在真正的業(yè)務(wù)環(huán)境中,一定會是多層的關(guān)聯(lián)數(shù)據(jù)結(jié)構(gòu)。而且這個數(shù)據(jù)結(jié)果也不可能就是一成不變的,它一定會在業(yè)務(wù)運營的過程中需要進行動態(tài)的調(diào)整和修正。

這種情況下,我們的CMDB就需要考慮到存儲可靈活性和可擴展性。我們需要實現(xiàn)可配置、可定義,并支持分級數(shù)據(jù)模型的配置,這些都是建設(shè)CMDB時候考慮的事情。

CMDB這里最后要講講配置信息的維護,做過運維的人應(yīng)該都會有同感,配置信息的維護是非常討厭這的事情。

騰訊在早期的時候,配置信息也都是手工維護的,如果我們進行了服務(wù)器的上、下線,事后一定要記得登陸系統(tǒng)去手工更新信息,不然其他人再進行操作就會出錯。時間久了信息的失去價值了。

所以我們以前的做法公司會考慮配置準確性,也即一段時間運動一次,人工的去修正信息。

更好的方法,應(yīng)該是要去做信息的自動發(fā)現(xiàn)和自動更新。怎么實現(xiàn)呢?

  • 一方面這里我們可以做CMDB的探針,它直接去采集設(shè)備上的狀態(tài)和信息,實時的上報回CMDB并更新。
  • 另一方面可以提供接口和外圍的管理系統(tǒng)對接,當(dāng)每一次變更結(jié)束了以后,都通過接口把變更的信息實時回寫和更新CMDB,以止實現(xiàn)信息的自動維護。

5、變更管理平臺介紹

 

關(guān)于變更管理平臺的實現(xiàn)。這里可以考慮分階段的實現(xiàn)方案。對于一些基礎(chǔ)比較差的團隊來說,要想一步到位是非常困難的,而且如果能力沒有達到一定的水平,有一些自動化能力也不一定可以用得起來。

這里需要建設(shè)根據(jù)團隊的技術(shù)實力,選擇合適的節(jié)奏分階段進行建設(shè)。

建議先從腳本平臺開始,先實現(xiàn)最基礎(chǔ)的作業(yè)管理能力,之后再實現(xiàn)業(yè)務(wù)管理和流程管理能力。

 

作業(yè)管理也可以理解為腳本管理。實現(xiàn)自動化最簡單的辦法,其實就是編寫腳本。每個公司的運維團隊都一定會有些積累的腳本。這些都是運維人員最寶貴的資產(chǎn)。

所以在變更管理平臺建設(shè)的過程中,我們應(yīng)該首先考慮把這些資產(chǎn)的價值發(fā)揮出來。

通過實現(xiàn)作業(yè)管理平臺,來提供統(tǒng)一的可視化腳本管理能力,它一方面能夠通過分享和復(fù)用來降低腳本開發(fā)的成本,另一方面也可以實現(xiàn)集中控制,并保證操作的可靠性。騰訊目前的藍鯨平臺,其實本質(zhì)上就是一個作業(yè)管理平臺。

如果團隊能力更強一點,就可以開始考慮實現(xiàn)業(yè)務(wù)管理能力。通過腳本來實現(xiàn)自動化雖然比較簡單,但面對業(yè)務(wù)管理的場景時,我們就會發(fā)現(xiàn)即使是一個簡單的業(yè)務(wù),都會需要大量的腳本才有可能夠把業(yè)務(wù)的關(guān)聯(lián)環(huán)境維護好。

這種情況下,我們需要考慮集成的業(yè)務(wù)管理能力,需要把業(yè)務(wù)通用的維護手段和管理方法封裝成通用的平臺功能:

  • 比如業(yè)務(wù)發(fā)布后的進程守護、日志清理、啟動初始化;
  • 再比如業(yè)務(wù)本身的版本管理、集群管理、實例管理、回滾管理等等。

這樣做最大的好處是把業(yè)務(wù)維護的復(fù)雜度封裝在平臺內(nèi)部,對外只需要關(guān)注到一些通和的服務(wù)接口即可。

 

變更管理的第三個階段是流程和調(diào)度管理。

當(dāng)我們把所需要的各種原子操作和業(yè)務(wù)管理能力都實現(xiàn)之后,那么我們就可以考慮實現(xiàn)最終的自動化流程和調(diào)度管理能力。

比如我們希望實現(xiàn)放牛式的服務(wù)器管理,服務(wù)器掛了可以直接把服務(wù)器殺掉而不影響業(yè)務(wù)。這時需要流程化的自動管理能力,它不但需要和資源池交互調(diào)動新設(shè)備,而且還要和業(yè)務(wù)管理平臺交互,把業(yè)務(wù)實例發(fā)布上去。

隨即還要調(diào)動自動化測試能力,檢測一下新上的服務(wù)器是不是好的,并加載灰度上線的邏輯,把服務(wù)器慢慢上線到運營環(huán)境中去。

整個復(fù)雜的過程不但需要把各種基礎(chǔ)工具和平臺組織起來,還需要根據(jù)接口和各個不同的系統(tǒng)進行交互,并根據(jù)交互的結(jié)果進行工具和后續(xù)流程的決策。

分階段的變更管理平臺建設(shè),可以有效的降低平臺建設(shè)的啟動成本,并且不同的平臺能力也可以較好的適配企業(yè)不同團隊在IT能力發(fā)展過程中所處于的不同階段的需求。

6、狀態(tài)管理平臺介紹

對于狀態(tài)管理平臺。說得簡單一點就是監(jiān)控平臺。對運維自動化來說,監(jiān)控平臺是一個最主要的活動觸發(fā)源。如果我不知道業(yè)務(wù)運行的狀態(tài),不知道業(yè)務(wù)有沒有異常,那么自動化也就無法發(fā)揮它應(yīng)有的價值。

 

一個好的監(jiān)控系統(tǒng)需要能夠?qū)崿F(xiàn)端到端的監(jiān)控。

目前市面上有很多開源的監(jiān)控組件,但基本都是單一緯度的監(jiān)控,比如主機監(jiān)控或是日志監(jiān)控的產(chǎn)品。

但真正做過運維的人都應(yīng)該清楚,現(xiàn)網(wǎng)中出現(xiàn)的很多故障都并沒有那么簡單,大部分情況下,這種單一唯獨的監(jiān)控都沒有辦法很好的覆蓋業(yè)務(wù)的監(jiān)控需求。

比如:我們希望關(guān)注業(yè)務(wù)的運行情況,而采用了CPU的監(jiān)控,它雖然可以發(fā)現(xiàn)到CPU的異常。但對于程序有否有BUG就無能為力了。所以一個全面的監(jiān)控體系一定是需要考慮端到端的監(jiān)控能力。

每一個系統(tǒng)的最終用戶都一定是人,所以我們可以從用戶的角度,模擬用戶的訪問路徑,從而實現(xiàn)一個全面的端到端監(jiān)控能力。

我們可以把用戶請求過程中所經(jīng)過的節(jié)點和鏈路全部監(jiān)控起來。再通過綜合的分析和匯聚,從而有效果的掌握業(yè)務(wù)的運行狀態(tài),并及時發(fā)現(xiàn)異常。

具體實現(xiàn)時,我們可以從最底層的基礎(chǔ)網(wǎng)絡(luò)和鏈路逐步往上是應(yīng)用服務(wù)器、應(yīng)用組件、組件請求、服務(wù)質(zhì)量、到最上層的業(yè)務(wù)狀態(tài)實現(xiàn)全部的監(jiān)控覆蓋。

 

在監(jiān)控的通道上,目前有兩種主流的方式。一種是外部的探測,別一種是內(nèi)部的主要采集和上報。

內(nèi)部采集方式,我們需要在服務(wù)器上部署監(jiān)控的的探針,它會根據(jù)需要定時的去檢查業(yè)務(wù)的運行狀態(tài),并收集有價值的日志信息。

由于不同業(yè)務(wù)所需要的采集邏輯和收集的信息都不一樣,所以監(jiān)控的探針需要設(shè)計成一種插件化的模式,以便支持不同業(yè)務(wù)的靈活擴展。

對于外部探測的監(jiān)控模式,一般的實現(xiàn)是在業(yè)務(wù)生產(chǎn)系統(tǒng)的外部尋找合適的探測節(jié)點,如公網(wǎng)上的服務(wù)器或外網(wǎng)CDN上的緩存節(jié)點。通過這些節(jié)點的訪問,我們可以模擬用戶的訪問路徑,并還原用戶的鏈路質(zhì)量對業(yè)務(wù)的影響。

對于比較強的團隊來說,我們在建設(shè)監(jiān)控系統(tǒng)時,可以同時考慮集成兩種不同的監(jiān)控通道能力,并實現(xiàn)監(jiān)控能力的互補。

監(jiān)控能力對于自動平臺來說,最大的價值是能夠完成事件的觸發(fā)。也即實現(xiàn)從數(shù)據(jù)發(fā)現(xiàn)、分析、定位、到問題解決的閉環(huán)。

通過這個閉環(huán),我們可以構(gòu)建各種故障的自愈能力。通過及時的發(fā)現(xiàn)異常,快速的恢復(fù),能夠有效的提升業(yè)務(wù)的可用性和質(zhì)量。

舉個實例的例子:當(dāng)系統(tǒng)發(fā)現(xiàn)機器的CPU有異常的時候,需要對 CPU高負載進行故障干預(yù)和恢復(fù),這種情況下我怎么做?

  1. 我們可以取到告警的信息,告警里會告訴我這臺機器的IP地址和告警的值;
  2. 通過IP,可以從CMDB中查一下這個機器屬于哪個業(yè)務(wù),再根據(jù)業(yè)務(wù)信息可以查詢到同業(yè)務(wù)下還有那些機器;
  3. 然后我們通過同業(yè)務(wù)的IP地址把其它機器的當(dāng)前CPU值都查詢出來,得出的平均值再去和告警的CPU值來對比;
  4. 最后判斷出是否需要系統(tǒng)干預(yù)。如果需要修復(fù),系統(tǒng)會根據(jù)告警的IP地址到CMDB中去查詢相應(yīng)的恢復(fù)策略,再進行處理。

通過這種靈活和完整的驗證處理閉環(huán),我們就可以構(gòu)建出各種可靠的自動故障恢復(fù)策略。

 

最后,讓我們再來總結(jié)一下之前提到一些方法論。

先是標準先行、小步快跑、容忍缺陷、業(yè)務(wù)導(dǎo)向。

對于復(fù)雜的運維系統(tǒng),不要貪大求全,關(guān)鍵是先構(gòu)建出配置管理、狀態(tài)管理和變更管理的能力閉環(huán)。

我們可以先從標準化開始,通過推動標準化來降低運維系統(tǒng)的設(shè)計和實施復(fù)雜度,然后才是具體的系統(tǒng)實現(xiàn)。

  • 第一步是配置管理,最簡單的配置管理可以先從搭建一個MySQL開始。
  • 之后的變更管理,可以先梳理運維常用的腳本,形成團隊的腳本庫或的操作標準。
  • 監(jiān)控能力的建設(shè)可以依賴外部的開源組件,也可以通過運維腳本加CRONTAB來實現(xiàn)。

從最簡單的平臺,逐步積累標準化和服務(wù)化能力,等大家形成標準化和服務(wù)化的意識和習(xí)慣了,之后再逐步完善和豐富運維系統(tǒng)的能力。

對于運維自動化管理平臺來說,不管具體的實現(xiàn)手段是什么,只要我們能夠覆蓋之前所介紹的領(lǐng)域,能夠滿足業(yè)務(wù)的需求,那么這個平臺就一定會非常的有生命力,非常的有價值。

以上這些就是我對運維自動化平臺建設(shè)和經(jīng)驗和理解,謝謝大家。

 

責(zé)任編輯:武曉燕 來源: 高效運維
相關(guān)推薦

2012-10-22 14:54:48

2014-08-04 10:10:35

IT運維自動化運維

2018-06-23 07:31:05

2017-10-13 13:14:35

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

2012-11-20 17:22:57

2015-10-08 10:55:23

云服務(wù)自動化運維 ANSIBLE

2018-07-26 13:50:37

IT架構(gòu)運維

2014-09-22 11:24:18

運維

2013-04-16 14:55:21

自動化運維Puppet實戰(zhàn)

2024-06-11 10:41:14

2023-02-11 21:14:58

自動化測試框架

2017-07-10 11:50:22

網(wǎng)絡(luò)自動化運維自動化瞻博網(wǎng)絡(luò)

2017-12-03 15:48:12

2017-07-25 10:53:27

2015-06-24 10:42:19

云計算運維自動化運維ANSIBLE

2015-07-22 11:35:26

2015-08-05 09:53:34

運維自動化

2014-08-04 17:30:57

自動化運維puppet

2014-07-26 15:11:20

WOT2014自動化運維

2013-04-11 17:31:28

運維自動化Cobbler
點贊
收藏

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

主站蜘蛛池模板: 中文字幕一级 | 日本精品在线观看 | 久久久久久免费看 | 久久乐国产精品 | 天天操综合网站 | 欧美激情视频一区二区三区免费 | 国内精品免费久久久久软件老师 | 亚洲一区精品在线 | 亚洲欧美日韩电影 | 欧美第一区 | 婷婷丁香在线视频 | 国产午夜精品久久久 | 91在线一区 | 一区二区三区四区视频 | 国产电影一区二区在线观看 | 亚洲国产日韩欧美 | 久久精品国内 | 日韩国产高清在线观看 | 亚洲三级在线观看 | 亚洲精品国产成人 | 国产午夜精品一区二区三区四区 | 久久久久久久综合 | 国产在线播 | 男人的天堂久久 | 久久不卡 | 亚洲日韩中文字幕一区 | 天天天操天天天干 | 亚洲高清av在线 | 久久精品免费观看 | 精品亚洲一区二区三区四区五区高 | 正在播放一区二区 | 日本激情视频中文字幕 | 欧美国产视频 | 国产成人精品午夜视频免费 | 国产精品久久久久久久久久 | 国产精品视频一区二区三区, | 涩涩视频在线观看免费 | 午夜电影福利 | 国产日韩欧美 | 国产精品成av人在线视午夜片 | 最新av片|