運維工程師的職責和前景(一)

2021-09-20 20:29:22 字數 2964 閱讀 8015

運維中關鍵技術點解剖:1 大量高併發**的設計方案 ;2 高可靠、高可伸縮性網路架構設計;3 **安全問題,如何避免被黑?4 南北互聯問題,動態cdn解決方案;5 海量資料儲存架構

一、什麼是大型**運維?

首先明確一下,全文所講的」運維「是指:大型**運維,與其它運維的區別還是蠻大的;然後我們再對大型**與小型**進行範圍定義,此定義主要從運維複雜性角度考慮,如**規範、知名度、伺服器 量級、pv量等考慮,其它因素不是重點;因此,我們先定義伺服器規模大於1000臺,pv每天至少上億(至少國內排名前10),如sina、baidu、 qq,51.com等等;其它小型**可能沒有真正意義上的運維工程師,這與**規範不夠和成本因素有關,更多的是集合網路、系統 、開發工作於一身的「複合性人才」,就如有些公司把一些合同採購都納入了運維職責範圍,還有如idc網路規劃也納入運維職責。所以,非常重要一定需要明白:運維對其它關聯工種必須非常了解熟悉:網路、系統、系統開發、儲存,安全,db等;我在這裡所講的運維工程師就是指專職運維工程師。

我們再來說說一般產品的「出生」流程:

1、首先公司管理層給出指導思想,pm定位市場需求(或copy成熟應用)進行調研、分析、最終給出詳細設計。

2、架構師根據產品設計的需求,如pv大小預估、伺服器規模、應用架構等因素完成網路規劃,架構設計等(基本上對網路變動不大,除非大專案)

3、開發工程師將設計code實現出來、測試工程師對應用進行測試。

4、好,到運維工程師出馬了,首先明確一點不是說前三步就與運維工作無關了,恰恰相反,前三步與運維關係很大:應用的前期架構設計、軟/硬體資源評估申請採購、應用設計效能隱患及評估、idc、服務效能\安全調優、伺服器系統級優化(與特定應用有關)等都需運維全程參與,並主導整個應用上線專案;運維工程師負責產品伺服器上架準備工作,伺服器系統安裝、網路、ip、通用工具集安裝。運維工程師還需要對上線的應用系統架構是否合理、是否具備可擴充套件性、及安全隱患等因素負責,並負責最後將產品(程式)、網路、系統三者進行拼接並最優化的組合在一起,最終完成產品上線提供使用者使用,並週而復使:需求->開發(公升級)->測試->上線(效能、安全問題等之前預估外的問題隨之慢慢就全出來了)在這裡提一點:**開發模式與傳統軟體開發完全不一樣,**一天開發上線1~5個公升級版本是家常便飯,使用者體驗為王嘛,如果某個線上問題像m$ 需要1年解決,使用者早跑光了;應用上線後,運維工作才剛開始,具體工作可能包括:公升級版本上線工作、服務監控、應用狀態統計、日常服務狀態巡檢、突發故障處理、服務日常變更調整、集群管理、服務效能評估優化、資料庫管理優化、隨著應用pv增減進行應用架構的伸縮、安全、運維開發工作:

a 、盡量將日常機械性手工工作通過工具實現(如服務監控、應用狀態統計、服務上線等等),提高效率。

b、解決現實中服務存在的問題,如高可靠性、可擴充套件性問題等。

c、大規模集群管理工具的開發,如1萬台機器如何在1分鐘內完成密碼修改、或執行指定任務?2000臺伺服器如何快速安裝作業系統?各分布式idc、儲存集群中數pt級的資料如何快速的儲存、共享、分析?等一系列挑戰都需運維工程師的努力。

在此說明一下其它配合工種情況,在整個專案中,前端應用對於網路/系統工程師來說是黑匣子,同時開發工程師職責只是負責完成應用的功能性開發,並對應用本身效能、安全性等應用本身負責,它不負責或關心網路/系統架構方面事宜,當然軟/硬體採購人員等事業部其它同事也不會關心這些問題,各司其職,但專案的核心是運維工程師~!所有其它部門的橋梁。

上面說了很多,我想大家應該對運維有一些概念了,在此打個比方吧,如果我們是一輛高速行駛在高速公路上的汽車,那運維工程師就是司機兼維修工,這個司機不簡單,有時需要在高速行駛過程中換輪胎、並根據道路情況換檔位、當汽車速度越來越快,汽車本身不能滿足高速度時對汽車效能調優或零件公升級、高速行進中解決汽車故障及效能問題、時刻關注前方安全問題,並先知先覺的採取規避手段。這就是運維工作~!

最後說一下運維工程師的職責:」確保線上穩定「,看似簡單,但實屬不容易,運維工程師必須在諸多不利因素中進行權衡:新產品模式對現有架構及技術的衝擊、產品高頻度的公升級帶來的線上bug隱患、運維自動化管理承度不高導致的人為失誤、it行業追求的高效率導致流程執行上的缺失、使用者增漲帶來的效能及架構上的壓力、it行業寬鬆的技術管理文化、創新風險、網際網路安全性問題等因素,都會是**穩定的大敵,運維工程師必須把控好這最後一關,需具體高度的責任感、原則性及協調能力,如果能做到各因素的最佳平衡,那就是一名優秀的運維工程師了。

另外在此聊點題外話,我在這裡看到有很多人要sina、qq、baidu,51.com等聊自已的運維方面的經驗,其實這對於它們有點免為其難:

a、各公司自已網路架構、規模、或多或少還算是公司的核心秘密,要保密,另外,對於大家所熟知的通用軟體、架構,由於很多公司會根據自已實際業務需要,同時因為原版效能、安全性、已知bug、功能等原因,進行過二次開發(如apache,php,mysql ),作業系統核心也會根據不同業務型別進行定製的,如某些應用屬於運算型、某些是高io型、或大儲存大記憶體型。根據這些特點進行核心優化定製,如sina就在 memcache上進行過二次開發,搞出了乙個memcachedb,具體做得如何我們不談,但開源了,是值得稱讚的,國內公司對於開源基本上是索取,沒有貢獻;另外,伺服器也不是大家所熟知的型號,根據業務特點,大部份都是找dell/hp/ibm進行過定製;另外,在分布式儲存方面都有自已解決方案,要不就是使用現成開源hadoop等解決方案,或自已開發。但90%都是借鑑google gfs的思想:分布式儲存、計算、大表。

b、各公司業務方向不一樣,會導致運維模式或方法都不一樣,如51.com和baidu運維肯定區別很大,因為他們業務模式決定了其架構、伺服器量級、 idc分布、網路結構、通用技術都會不一樣,主打新聞門戶的sina與主打sns的51.com運維模式差異就非常大,甚至職責都不大一樣;但有一點,通用技術及大致架構上都大同小異,大家不要太神化,更多的公司只是玩壘積木的遊戲罷了,沒什麼技術含量。

c、如上面所講,目前大型**運維還處於幼年時期理念和經驗都比較零散,沒有成熟的知識體系,可能具體什麼是運維,大家都要先思索一番,或壓根沒想過,真正討論也只是運維工作的冰山一角,侷限於具體技術細節,或某某著名**大的框架,真正運維體系化東西沒有,這也許是目前網上運維相關資料 比較少的原故吧。或者也是國內運維人員比較難招,比較牛的運維工程師比較少見的原因之一吧。

運維工程師的職責和前景

python運維工程師前景 運維工程師的前景怎麼樣

我覺得因該是有前途的,看個人能力和努力程度,本人現在正在往此方向發展。隨著國家大力提倡網際網路 網際網路時代會加速普及,運維大有作為。只是隨著雲計算時代的來臨,傳統運維崗位可能會大大減少,而掌握雲計算方面運維的工程師將會迎來新的天地。結合上面說的網際網路環境,加上最近幾年的經歷,讓我覺得雲計算遮天蔽...

Linux運維工程師前景

如果我們是一輛高速行駛在高速公路上的汽車,那運維工程師就是司機兼維修工,這個司機可不簡單,有時需要在高速行駛過程中更換輪胎 並根據道路情況換檔位 當汽車速度越來越快時,汽車本身不能滿足高速度時對汽車效能調優或零件公升級 高速行進中解決汽車故障及效能問題 時刻關注前方安全問題,並先知先覺的採取規避手段...

運維工程師是橋的護欄 運維工程師崗位職責與任職要求

駐場運維工程師崗位職責及要求 一 系統維護人員能力 素質要求 1.具備優秀的計算機軟 硬體知識,能夠快速判斷軟 硬體故障,並且能 夠指導使用者使用主流軟 硬體 2.熟悉常用的作業系統 windows 的安裝 操作 配置 故障處理,具備微 軟商業桌面 3.具備網路基礎知識,對相關網路裝置及綜合佈線有一...