無論做什(shen)么(me)運維,運維工(gong)程(cheng)師最基本的(de)(de)職責都是負(fu)責服務的(de)(de)穩定性,確保服務可以7*24H不間(jian)斷地為用戶提供服務。在此之上運維工(gong)程(cheng)師的(de)(de)主(zhu)要工(gong)作(zuo)職責如下(xia):
質量:保障并不斷提升服務(wu)的可用(yong)性,確保用(yong)戶數據安全,提升用(yong)戶體驗。
效率:用自動化的工(gong)(gong)具/平(ping)臺提升(sheng)軟(ruan)件在(zai)研發生命周期中(zhong)的工(gong)(gong)程效率。
成本:通過技術手(shou)段(duan)優(you)化(hua)服務架構、性能(neng)調優(you);通過資源優(you)化(hua)組合降低成本、提升ROI。
從產(chan)品的生(sheng)命(ming)周期(qi)來看:
1. 產品發布(bu)前(qian):負責(ze)參(can)與(yu)并審核架構設計的合理性和可運維(wei)性,以確保在產品發布(bu)之后能高(gao)效穩(wen)定的運行。
2. 產品發布階(jie)段:負責用自(zi)動化的技術(shu)或者平臺確(que)保產品可以(yi)高效的發布上線,之后可以(yi)快(kuai)速穩定(ding)迭代。
3. 產品(pin)運行維(wei)護階段(duan):負責保障(zhang)產品(pin)7*24H穩(wen)(wen)定運行,在此(ci)期間(jian)對出現的各種(zhong)問題可以快速定位并解決;在日常工(gong)作(zuo)中不(bu)斷(duan)優化系統架構(gou)和(he)部署的合(he)理性(xing),以提升系統服(fu)務的穩(wen)(wen)定性(xing)。
在軟件(jian)產品的(de)(de)整個生命周期中(zhong)運維工程師都需要適時(shi)地(di)參與并發揮不同的(de)(de)作用(yong),因此運維工程師的(de)(de)工作內容和方向非常多:
事件管理:目標(biao)是在(zai)服(fu)務出(chu)(chu)現異常時(shi)盡(jin)可(ke)(ke)能(neng)快速的(de)(de)(de)恢復服(fu)務,從而(er)保障服(fu)務的(de)(de)(de)可(ke)(ke)用性(xing);同時(shi)深入(ru)分析故障產生(sheng)的(de)(de)(de)原因,推動并修復服(fu)務存(cun)在(zai)的(de)(de)(de)問(wen)題,同時(shi)設計并開發相關(guan)的(de)(de)(de)預案以確(que)保服(fu)務出(chu)(chu)現故障時(shi)可(ke)(ke)以高效(xiao)的(de)(de)(de)止損。在(zai)這方(fang)面主要工作內容有:
問題發(fa)現(xian):設計并開發(fa)高效的(de)(de)監控平臺和(he)告警(jing)平臺,使用機器(qi)學習、大數據(ju)分(fen)析等方(fang)法對系統中的(de)(de)大量監控數據(ju)進行(xing)匯(hui)總分(fen)析,以及在系統出現(xian)異常的(de)(de)時(shi)候(hou)可以快速的(de)(de)發(fa)現(xian)問題和(he)判斷(duan)故障(zhang)的(de)(de)影響。
問題(ti)(ti)處理(li):設計并開發高效的問題(ti)(ti)處理(li)平臺和(he)工(gong)具(ju),在(zai)系(xi)統出現異常(chang)的時候可以快速/自動決策并觸(chu)發相關止損(sun)預案,快速恢(hui)復服(fu)務。
問題跟蹤:通過分析問題發生時(shi)系統的各種表現(日(ri)志、變更、監控)確定問題發生的根本(ben)原(yuan)因,制定并(bing)開發預案工具(ju)。
變更管理:以可(ke)控的(de)方式(shi),盡可(ke)能高效的(de)完(wan)成產品功(gong)能的(de)迭代的(de)變更工作。在這方面主要工作內容有:
配(pei)置管理:通過配(pei)置管理平臺(自研(yan)、開源)管理服務涉及到的(de)多個模塊、多個版本(ben)的(de)關系以(yi)及配(pei)置的(de)準確(que)性。
發布管(guan)理:通過構建自動(dong)化的(de)平(ping)臺確(que)保每一次版(ban)本變更可以(yi)安全可控地(di)發布到生產環境。
容量管(guan)理(li):在服(fu)務運行(xing)維(wei)護階段,為了(le)確(que)保(bao)服(fu)務架構部(bu)署(shu)的合理(li)性(xing)同時掌握服(fu)務整體(ti)的冗余,需(xu)要(yao)不斷評(ping)估系統的承(cheng)載能力,并不斷優化(hua)之。在這方面(mian)主要(yao)工作內容有:
容(rong)量評(ping)估(gu):通(tong)過技術手(shou)段模(mo)擬實際的(de)用戶請求(qiu),測(ce)試整個(ge)系(xi)統所能承擔的(de)最大吞吐;通(tong)過建立容(rong)量評(ping)估(gu)模(mo)型分析壓力(li)測(ce)試過程中的(de)數據以(yi)評(ping)估(gu)整個(ge)服務的(de)容(rong)量。
容(rong)量(liang)(liang)優化(hua):基(ji)于容(rong)量(liang)(liang)評估數據,判斷系(xi)(xi)統(tong)的(de)瓶(ping)頸并提(ti)供容(rong)量(liang)(liang)優化(hua)的(de)解(jie)決方案(an)。比如通過調整系(xi)(xi)統(tong)參(can)數、優化(hua)服(fu)務(wu)部署架構等方法來高效的(de)提(ti)升(sheng)系(xi)(xi)統(tong)容(rong)量(liang)(liang)。
架構優化:為了支持產品(pin)的不斷迭代,需要不斷的進行架構優化調整。以確保整個產品(pin)能(neng)(neng)夠在功(gong)能(neng)(neng)不斷豐富和(he)復雜的條件(jian)下,同時保持高可用性。
基礎技能:
精通shell/Python/Perl等1至(zhi)2種編(bian)程(cheng)語言
熟練(lian)掌握常用數(shu)據結構和算法,并能靈活運用
熟悉網絡基礎知識
深入理(li)解Linux操作系統
加分技能:
熟悉開源的(de)監控(kong)平(ping)臺工具,比(bi)如:Ganglia、Nagios、Zabbix等
熟(shu)練掌握(wo)Shell腳本熟(shu)悉Awk、Sed等基礎工具(ju)
熟悉分布式計算或者存儲系統,比如Hadoop/Hbase/Storm等
熟悉機(ji)器(qi)學(xue)習原(yuan)理能付(fu)諸實踐者更佳
熟悉TCP/IP、HTTP等(deng)網絡協議,精通socket網絡編程(cheng)
強(qiang)烈的責任心與(yu)主動性(xing),對所負責工作有owner意識,并能自我驅動成(cheng)長
能承擔(dan)較(jiao)大(da)工作(zuo)壓力(li),有較(jiao)強獨立分析、解決(jue)問題的能力(li)
工作中需要膽大心細(xi),具備探索創新精神(shen)
運(yun)維人(ren)員的要(yao)求特別嚴苛,因為運(yun)維人(ren)員針對(dui)不同(tong)的問(wen)題,需要(yao)不斷的補充擴大自己的知識(shi)和研(yan)究范疇。
在初(chu)級階(jie)段,優秀運(yun)維人員(yuan)會(hui)體現出格外出眾的(de)主動性(xing)和責任心,面對(dui)陌生的(de)業務會(hui)主動學習(xi)和拓(tuo)展自(zi)己對(dui)業務對(dui)認識和相應的(de)知識范疇,以能(neng)夠足夠的(de)勝任業務的(de)獨(du)立維護。
在(zai)逐(zhu)(zhu)(zhu)步的發展(zhan)階(jie)(jie)段中,注(zhu)重總結反省(sheng)的工(gong)程(cheng)師會逐(zhu)(zhu)(zhu)漸(jian)成長為高階(jie)(jie)運維人員,通常他們會有(you)比較體系化的服務運維理解。也(ye)有(you)一部分工(gong)程(cheng)師由于出色的項目管理規劃能(neng)力,逐(zhu)(zhu)(zhu)漸(jian)成為項目經理。
再(zai)進(jin)一(yi)步的(de)發(fa)展,高(gao)階的(de)運維人員對于產(chan)品(pin)(pin)的(de)理解將(jiang)非常的(de)透徹,因而在(zai)這種情況(kuang)下,高(gao)階運維人員甚至可(ke)以成為(wei)產(chan)品(pin)(pin)的(de)產(chan)品(pin)(pin)經理、產(chan)品(pin)(pin)研發(fa)的(de)咨詢顧問,在(zai)產(chan)品(pin)(pin)功能的(de)設(she)計與開發(fa)中起到至關重(zhong)要的(de)角(jiao)色。
運(yun)(yun)維(wei)所涉及的(de)知(zhi)識面、專業點非常廣,對從(cong)業人員(yuan)素質也(ye)要求(qiu)非常高,運(yun)(yun)維(wei)工(gong)作在大(da)型互聯(lian)網公(gong)司也(ye)越(yue)來越(yue)重要。隨著互聯(lian)網的(de)高速(su)發展、網站(zhan)規模越(yue)來越(yue)大(da)、架構(gou)越(yue)來越(yue)復雜,對網站(zhan)運(yun)(yun)維(wei)工(gong)程師的(de)需(xu)求(qiu)也(ye)會越(yue)來越(yue)急(ji)迫,特別是對有(you)經(jing)驗的(de)運(yun)(yun)維(wei)人才需(xu)求(qiu)量大(da),而(er)且是越(yue)老越(yue)值錢。