大型網(wǎng)站運維探討和心得(經(jīng)典)_第1頁
大型網(wǎng)站運維探討和心得(經(jīng)典)_第2頁
大型網(wǎng)站運維探討和心得(經(jīng)典)_第3頁
大型網(wǎng)站運維探討和心得(經(jīng)典)_第4頁
大型網(wǎng)站運維探討和心得(經(jīng)典)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一、什么是大型網(wǎng)站運維?首先明確一下,全文所講的運維是指:大型網(wǎng)站運維,與其它運維的區(qū)別還是蠻大的;然后我們再對大型網(wǎng)站與小型網(wǎng)站進行范圍定義,此定義主要從運維復(fù)雜性角度考慮,如網(wǎng)站規(guī)范、知名度、服務(wù)器量級、PV量等考慮,其它因素不是重點;因此,我們先定義服務(wù)器規(guī)模大于1000臺,PV每天至少上億(至少國內(nèi)排名前10),如Sina、Baidu、QQ,51.com等等;其它小型網(wǎng)站可能沒有真正意義上的運維工程師,這與網(wǎng)站規(guī)范不夠和成本因素有關(guān),更多的是集合網(wǎng)絡(luò)、系統(tǒng)、開發(fā)工作于一身的“復(fù)合性人才”,就如有些公司把一些合同采購都納入了運維職責(zé)范圍,還有如IDC網(wǎng)絡(luò)規(guī)劃也納入運維職責(zé)。所以,非常重要一定需要明白:運維對其它關(guān)聯(lián)工種必須非常了解熟悉:網(wǎng)絡(luò)、系統(tǒng)、系統(tǒng)開發(fā)、存儲,安全,DB等;我在這里所講的運維工程師就是指專職運維工程師。我們再來說說一般產(chǎn)品的“出生”流程:1、首先公司管理層給出指導(dǎo)思想,PM定位市場需求(或copy成熟應(yīng)用)進行調(diào)研、分析、最終給出詳細設(shè)計。2、架構(gòu)師根據(jù)產(chǎn)品設(shè)計的需求,如PV大小預(yù)估、服務(wù)器規(guī)模、應(yīng)用架構(gòu)等因素完成網(wǎng)絡(luò)規(guī)劃,架構(gòu)設(shè)計等(基本上對網(wǎng)絡(luò)變動不大,除非大項目)3、開發(fā)工程師將設(shè)計code實現(xiàn)出來、測試工程師對應(yīng)用進行測試。4、好,到運維工程師出馬了,首先明確一點不是說前三步就與運維工作無關(guān)了,恰恰相反,前三步與運維關(guān)系很大:應(yīng)用的前期架構(gòu)設(shè)計、軟/硬件資源評估申請采購、應(yīng)用設(shè)計性能隱患及評估、IDC、服務(wù)性能\安全調(diào)優(yōu)、服務(wù)器系統(tǒng)級優(yōu)化(與特定應(yīng)用有關(guān))等都需運維全程參與,并主導(dǎo)整個應(yīng)用上線項目;運維工程師負責(zé)產(chǎn)品服務(wù)器上架準備工作,服務(wù)器系統(tǒng)安裝、網(wǎng)絡(luò)、IP、通用工具集安裝。運維工程師還需要對上線的應(yīng)用系統(tǒng)架構(gòu)是否合理、是否具備可擴展性、及安全隱患等因素負責(zé),并負責(zé)最后將產(chǎn)品(程序)、網(wǎng)絡(luò)、系統(tǒng)三者進行拼接并最優(yōu)化的組合在一起,最終完成產(chǎn)品上線提供用戶使用,并周而復(fù)始:需求->開發(fā)(升級)->測試->上線(性能、安全問題等之前預(yù)估外的問題隨之慢慢就全出來了)在這里提一點:網(wǎng)站開發(fā)模式與傳統(tǒng)軟件開發(fā)完全不一樣,網(wǎng)站一天開發(fā)上線1~5個升級版本是家常便飯,用戶體驗為王嘛,如果某個線上問題像MS需要1年解決,用戶早跑光了;應(yīng)用上線后,運維工作才剛開始,具體工作可能包括:升級版本上線工作、服務(wù)監(jiān)控、應(yīng)用狀態(tài)統(tǒng)計、日常服務(wù)狀態(tài)巡檢、突發(fā)故障處理、服務(wù)日常變更調(diào)整、集群管理、服務(wù)性能評估優(yōu)化、數(shù)據(jù)庫管理優(yōu)化、隨著應(yīng)用PV增減進行應(yīng)用架構(gòu)的伸縮、安全、運維開發(fā)工作:a、盡量將日常機械性手工工作通過工具實現(xiàn)(如服務(wù)監(jiān)控、應(yīng)用狀態(tài)統(tǒng)計、服務(wù)上線等等),提高效率。b、解決現(xiàn)實中服務(wù)存在的問題,如高可靠性、可擴展性問題等。c、大規(guī)模集群管理工具的開發(fā),如1萬臺機器如何在1分鐘內(nèi)完成密碼修改、或運行指定任務(wù)?2000臺服務(wù)器如何快速安裝操作系統(tǒng)?各分布式IDC、存儲集群中數(shù)PB級的數(shù)據(jù)如何快速的存儲、共享、分析?等一系列挑戰(zhàn)都需要運維工程師的努力。在此說明一下其它配合工種情況,在整個項目中,前端應(yīng)用對于網(wǎng)絡(luò)/系統(tǒng)工程師來說是黑匣子,同時開發(fā)工程師職責(zé)只是負責(zé)完成應(yīng)用的功能性開發(fā),并對應(yīng)用本身性能、安全性等應(yīng)用本身負責(zé),他不負責(zé)或關(guān)心網(wǎng)絡(luò)/系統(tǒng)架構(gòu)方面事宜,當(dāng)然軟/硬件采購人員等事業(yè)部其它同事也不會關(guān)心這些問題,各司其職,但項目的核心是運維工程師~!所有其它部門的橋梁。上面說了很多,我想大家應(yīng)該對運維有一些概念了,在此打個比方吧,如果我們是一輛高速行駛在高速公路上的汽車,那運維工程師就是司機兼維修工,這個司機不簡單,有時需要在高速行駛過程中換輪胎、并根據(jù)道路情況換檔位、當(dāng)汽車速度越來越快,汽車本身不能滿足高速度時對汽車性能調(diào)優(yōu)或零件升級、高速行進中解決汽車故障及性能問題、時刻關(guān)注前方安全問題,并先知先覺的采取規(guī)避手段。這就是運維工作~!最后說一下運維工程師的職責(zé):“確保線上穩(wěn)定”,看似簡單,但實屬不容易,運維工程師必須在諸多不利因素中進行權(quán)衡:新產(chǎn)品模式對現(xiàn)有架構(gòu)及技術(shù)的沖擊、產(chǎn)品高頻度的升級帶來的線上BUG隱患、運維自動化管理承度不高導(dǎo)致的人為失誤、IT行業(yè)追求的高效率導(dǎo)致流程執(zhí)行上的缺失、用戶增漲帶來的性能及架構(gòu)上的壓力、IT行業(yè)寬松的技術(shù)管理文化、創(chuàng)新風(fēng)險、互聯(lián)網(wǎng)安全性問題等因素,都會是網(wǎng)站穩(wěn)定的大敵,運維工程師必須把控好這最后一關(guān),需具體高度的責(zé)任感、原則性及協(xié)調(diào)能力,如果能做到各因素的最佳平衡,那就是一名優(yōu)秀的運維工程師了。另外在此聊點題外話,我在這里看到有很多人要Sina、QQ、Baidu、51.com等聊聊自己運維方面的經(jīng)驗,其實這對于它們有點勉為其難:a、各公司自己網(wǎng)絡(luò)架構(gòu)、規(guī)模、或多或少還算是公司的核心秘密,要保密,另外,對于大家所熟知的通用軟件、架構(gòu),由于很多公司會根據(jù)自己實際業(yè)務(wù)需要,同時因為原版性能、安全性、已知BUG、功能等原因,進行過二次開發(fā)(如Apache、PHP、Mysql),操作系統(tǒng)內(nèi)核也會根據(jù)不同業(yè)務(wù)類型進行定制的,如某些應(yīng)用屬于運算型、某些是高IO型、或大存儲大內(nèi)存型。根據(jù)這些特點進行內(nèi)核優(yōu)化定制,如Sina就在memcache上進行過二次開發(fā),搞出了一個MemcacheDB,具體做得如何我們不談,但開源了,是值得稱贊的,國內(nèi)公司對于開源基本上是索取,沒有貢獻;另外,服務(wù)器也不是大家所熟知的型號,根據(jù)業(yè)務(wù)特點,大部份都是找DELL/HP/IBM進行過定制;另外,在分布式儲存方面都有自己解決方案,要不就是使用現(xiàn)成開源Hadoop等解決方案,或自己開發(fā)。但90%都是借鑒GoogleGFS的思想:分布式存儲、計算、大表。b、各公司業(yè)務(wù)方向不一樣,會導(dǎo)致運維模式或方法都不一樣,如51.com和Baidu運維肯定區(qū)別很大,因為他們業(yè)務(wù)模式?jīng)Q定了其架構(gòu)、服務(wù)器量級、IDC分布、網(wǎng)絡(luò)結(jié)構(gòu)、通用技術(shù)都會不一樣,主打新聞門戶的Sina與主打SNS的51.com運維模式差異就非常大,甚至職責(zé)都不大一樣;但有一點,通用技術(shù)及大致架構(gòu)上都大同小異,大家不要太神化,更多的公司只是玩壘積木的游戲罷了,沒什么技術(shù)含量。c、如上面所講,目前大型網(wǎng)站運維還處于幼年時期理念和經(jīng)驗都比較零散,沒有成熟的知識體系,可能具體什么是運維,大家都要先思索一番,或壓根沒想過,真正討論也只是運維工作的冰山一角,局限于具體技術(shù)細節(jié),或某某著名網(wǎng)站大的框架,真正運維體系化東西沒有,這也許是目前網(wǎng)上運維相關(guān)資料比較少的原故吧。或者也是國內(nèi)運維人員比較難招,比較牛的運維工程師比較少見的原因之一吧。二、運維工作師需要什么樣的技能及素質(zhì)作為一名運維工程師需要什么樣的技能及素質(zhì)呢,首先說說技能吧,如大家上面所看到,運維是一個集多IT工種技能與一身的崗位,對系統(tǒng)—網(wǎng)絡(luò)—存儲—協(xié)議—需求—開發(fā)—測試—安全等各環(huán)節(jié)都需要了解一些,但對于某些環(huán)節(jié)需熟悉甚至精通,如系統(tǒng)(基本操作系統(tǒng)的熟悉使用,Linux/Unix,Windows等等)、協(xié)達到Google所描述自恢復(fù)能力,如GFS,糟糕的設(shè)計那就是一臺服務(wù)器的死機可能會造成大面積服務(wù)的連鎖故障反映,直接對用戶拒絕響應(yīng)。b、應(yīng)用故障問題:可能是某一BUG被觸發(fā)、或某一性能閥值被超越、攻擊等情況不一而定,但重要的一點,是要有對這些問題的預(yù)防性措施,不能想當(dāng)然,它不會出問題,如真出問題了,如何應(yīng)對?這需要運維工程師平時做足功夫,包括應(yīng)急響應(yīng)速度、故障處理的科學(xué)性、備用方案的有效等。III、自動化自動化:簡而言之,就是將我們?nèi)粘J謩舆M行的一些工作通過工具,系統(tǒng)自動來完成,解放我們的雙手及枯燥的重復(fù)性勞動,例如:沒有工具前,我們安裝系統(tǒng)需要一臺一臺裸機安裝,如2000臺,可能需要10人/10天,搞爛N張光盤,人力成本更大。。。而現(xiàn)在通過自動化工具,只需幾個簡單命令就能搞定、還有如機器人類程序,自動完成以往每天人工干預(yù)的工作,使其自動完成、匯報結(jié)果,并具備一定的專家系統(tǒng)能力,能做一些簡單的是/非判斷、優(yōu)化選擇等。。。這些好處非常明顯不再多說。。。應(yīng)該說,自動化運維是運維工程師職業(yè)化的一個追求,利已利公,雖然這是一個異常艱巨的任務(wù):不斷變更的業(yè)務(wù)、不規(guī)范化的應(yīng)用設(shè)計、開發(fā)模式、網(wǎng)絡(luò)架構(gòu)變更、IDC變更、規(guī)范變動等因素,都可能會對現(xiàn)有自動化系統(tǒng)產(chǎn)生影響,所以需要模塊化、接口化、變因參數(shù)化等因此,自動化相關(guān)工作,是運維工程師的核心重點工作之一,也是價值的體現(xiàn)。五、運維中關(guān)鍵技術(shù)點解剖(比較實際,現(xiàn)實中的案例)1大量高并發(fā)網(wǎng)站的設(shè)計方案2高可靠、高可伸縮性網(wǎng)絡(luò)架構(gòu)設(shè)計3網(wǎng)站安全問題,如何避免被黑?4南北互聯(lián)問題,動態(tài)CDN解決方案5海量數(shù)據(jù)存儲架構(gòu)如果大家還有更好的意見歡迎討論?!斑\維”直白說就是運行維護,運維部門的職責(zé)就是確?;A(chǔ)架構(gòu)安全、穩(wěn)定、高效運行,為企業(yè)的上層IT架構(gòu)提供支持。從環(huán)境

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論