了解最新公司動(dòng)態(tài)及行業(yè)資訊
歡迎大家一起學(xué)習(xí)交流
運(yùn)維是一個(gè)綜合多學(xué)科(網(wǎng)絡(luò)、系統(tǒng)、開發(fā)、安全、應(yīng)用架構(gòu)、存儲(chǔ)等)的綜合性技術(shù)崗位,從最初的網(wǎng)絡(luò)管理(網(wǎng)絡(luò)管理)到今天的系統(tǒng)運(yùn)維工程師,網(wǎng)絡(luò)運(yùn)維工程師、安全運(yùn)維工程師、運(yùn)維開發(fā)工程師等,可見運(yùn)維的分工還在細(xì)化,對(duì)綜合技能的要求越來越高可見,未來運(yùn)維的發(fā)展趨勢(shì)是高、精、尖,高即高,精即精通,銳即尖端,即運(yùn)維工作場(chǎng)所必須站在一定的技術(shù)高度必須能夠控制趨勢(shì)。
一、運(yùn)維崗位的發(fā)展與趨勢(shì)
根據(jù)不同運(yùn)維領(lǐng)域和技術(shù)方面的三個(gè)方面,以及分工流程,了解2019年運(yùn)維崗位的發(fā)展趨勢(shì)。
1、由字段定義
1)、基礎(chǔ)設(shè)施運(yùn)維:IDC/網(wǎng)絡(luò)運(yùn)維、服務(wù)器/存儲(chǔ)設(shè)備運(yùn)維
2)、系統(tǒng)運(yùn)維:系統(tǒng)中間件運(yùn)維、云測(cè)算平臺(tái)運(yùn)維
3)、數(shù)據(jù)運(yùn)維:數(shù)據(jù)庫運(yùn)維、大數(shù)據(jù)技術(shù)平臺(tái)運(yùn)維
4)、應(yīng)用運(yùn)維:應(yīng)用軟件系統(tǒng)
5)、云平臺(tái)運(yùn)維:公有云平臺(tái)運(yùn)維
6)、容器運(yùn)維:基于容器服務(wù)的運(yùn)維
2、按技術(shù)方面分
1)、安全運(yùn)維
2)、性能運(yùn)維
3)、數(shù)據(jù)運(yùn)維
4)、一體化運(yùn)維
3、由進(jìn)程定義
1),構(gòu)建/持續(xù)集成,發(fā)布
2),安裝部署,升級(jí),遷移,合并,擴(kuò)展
3),配置,初始化,配置更改
4),備份,傳輸,恢復(fù)
5)、日志、監(jiān)控、警報(bào)
6),診斷故障排除,優(yōu)化
二、系統(tǒng)運(yùn)維技能圖
系統(tǒng)運(yùn)維是運(yùn)維的基礎(chǔ)。新的一年,對(duì)基本運(yùn)維技能的要求也越來越高。打好系統(tǒng)運(yùn)維基礎(chǔ),可以深入學(xué)習(xí)身邊的各種運(yùn)維技巧。
右圖列出了系統(tǒng)運(yùn)維必備的技能:
三、Web運(yùn)維技能圖
Web運(yùn)維是運(yùn)維崗位中崗位最多的,薪資也比較高,但是需要掌握的知識(shí)點(diǎn)很多。新技能要掌握,老的運(yùn)維技能不能丟。 Web運(yùn)維需要掌握的各種必備技能。
四、大數(shù)據(jù)運(yùn)維技能圖
大數(shù)據(jù)從2017年開始逐漸走進(jìn)生活的各個(gè)角落,2018年逐漸落地,2019年大數(shù)據(jù)依舊火熱。再加上國家對(duì)大數(shù)據(jù)產(chǎn)業(yè)的扶持,大數(shù)據(jù)產(chǎn)業(yè)進(jìn)入了新時(shí)代。每年的工作需求肯定會(huì)更強(qiáng),所以掌握大數(shù)據(jù)運(yùn)維的技能是運(yùn)維的最前沿。
五、容器運(yùn)維技能圖
容器的形成是 IT 行業(yè)的一場(chǎng)革命。從 2015 年到 2016 年,業(yè)界普遍感受到容器技術(shù)的爆發(fā)。短短一年多時(shí)間,容器技術(shù)在中國大陸完成了零星的概念。為烽火燎原之大功。
如今,容器技術(shù)在國外大部分企業(yè)的落地已經(jīng)成為共識(shí),國外生態(tài)也呈現(xiàn)出企業(yè)產(chǎn)品、開源社區(qū)、公有云齊頭并進(jìn)的良好局面。為此,2019年也是容器繼續(xù)快速落地的一年。右圖列出了大數(shù)據(jù)運(yùn)維必須掌握的各種基本技能。
六、數(shù)據(jù)為王的時(shí)代
高層建筑從地面開始,高層建筑的穩(wěn)定性取決于地基是否牢固。運(yùn)維數(shù)據(jù)是這座高層建筑運(yùn)維的基礎(chǔ)。運(yùn)維數(shù)據(jù)大致分為四個(gè)方面:CMDB、日志、生產(chǎn)DB、知識(shí)庫。
只有數(shù)據(jù)的維護(hù)和管理才重要,尤其是日志數(shù)據(jù)。對(duì)于運(yùn)維來說,通過日志可以更準(zhǔn)確、更全面地了解系統(tǒng)或設(shè)備的運(yùn)行情況,并可以查看和恢復(fù)問題的原因。整個(gè)過程。通過日志服務(wù)器運(yùn)維,還可以提前預(yù)知系統(tǒng)中可能出現(xiàn)的問題或故障,比如系統(tǒng)安全日志。如果網(wǎng)絡(luò)攻擊會(huì)在系統(tǒng)安全日志中體現(xiàn)出來。
下面簡單介紹一下運(yùn)維收集的日志數(shù)據(jù)的組成部分和用途。
1、系統(tǒng)日志
系統(tǒng)日志主要是指操作系統(tǒng)的日志,主要是/var/log下的各種日志信息。包含系統(tǒng)運(yùn)行日志、系統(tǒng)安全日志、定時(shí)任務(wù)日志等。系統(tǒng)日志是運(yùn)維管理安全模塊中審計(jì)的重要依據(jù)。通常,默認(rèn)的操作系統(tǒng)日志不能滿足要求,需要更改系統(tǒng)的參數(shù),例如給命令添加時(shí)間戳和IP,以及長時(shí)間保留歷史記錄。另外對(duì)日志文件進(jìn)行處理,不允許用戶執(zhí)行空命令,只能追加。
2、應(yīng)用日志
應(yīng)用日志主要記錄應(yīng)用服務(wù)的健康運(yùn)行和業(yè)務(wù)運(yùn)行的具體日志。應(yīng)用監(jiān)控的運(yùn)行狀態(tài)反映了應(yīng)用服務(wù)的健康狀況。如果某個(gè)應(yīng)用占用了CPU,或者顯存太低,或者出現(xiàn)波動(dòng),可以通過分析應(yīng)用日志和業(yè)務(wù)運(yùn)行日志來推斷。業(yè)務(wù)操作日志可以為業(yè)務(wù)審計(jì)提供主要依據(jù)。有些系統(tǒng)喜歡把業(yè)務(wù)操作日志放到數(shù)據(jù)庫里,這也是需要注意的。但是,無論在哪里,需求都是不可或缺的,為后續(xù)的業(yè)務(wù)審計(jì)和問題回顧提供了依據(jù)。
3、數(shù)據(jù)庫日志
數(shù)據(jù)庫日志主要報(bào)告數(shù)據(jù)庫的運(yùn)行狀態(tài)。通過對(duì)數(shù)據(jù)庫的日志進(jìn)行監(jiān)控和管理,可以及時(shí)了解數(shù)據(jù)庫的運(yùn)行情況,及時(shí)解決問題??梢詫?shù)據(jù)庫日志與數(shù)據(jù)庫系統(tǒng)自帶的數(shù)據(jù)庫系統(tǒng)結(jié)合起來,比如系統(tǒng)視圖v$、MySQL等也作為數(shù)據(jù)庫日志的一部分進(jìn)行管理和監(jiān)控,我們已經(jīng)及時(shí)知道數(shù)據(jù)庫的監(jiān)控狀態(tài),以防可能出現(xiàn)的問題。
4、設(shè)備日志
設(shè)備日志通常是一個(gè)容易忽略的地方,但它往往可以反映設(shè)備的運(yùn)行情況。交換機(jī)故障、防火墻故障等設(shè)備故障都可能導(dǎo)致大規(guī)模的系統(tǒng)和服務(wù)故障。因此,必須收集、分析和監(jiān)控設(shè)備日志,以進(jìn)行預(yù)警。常用的設(shè)備日志包括交換機(jī)日志、防火墻日志、網(wǎng)絡(luò)安全設(shè)備日志。
日志這么多,運(yùn)維必須通過各種手段完成日志采集、過濾分析、可視化展示。那么如何實(shí)現(xiàn)這個(gè)功能,有很多技巧,比如ELK集成套件(,,)可以很方便的實(shí)現(xiàn)日志數(shù)據(jù)的實(shí)時(shí)采集、分析傳輸、圖形化展示。
此外,還有一個(gè)附屬于 Beats 的日志收集工具。 Beats 目前包括四種工具:
(收集網(wǎng)絡(luò)流量數(shù)據(jù))
(收集系統(tǒng)、進(jìn)程和文件系統(tǒng)級(jí)別的 CPU 和視頻內(nèi)存使用情況等數(shù)據(jù))
(收集文件數(shù)據(jù))
(收集風(fēng)暴日志數(shù)據(jù))
如您所見,Beats 涵蓋了收集日志數(shù)據(jù)的所有方面。
如何以這種方式使用ELK?根據(jù)日志量的不同,對(duì)應(yīng)的ELK架構(gòu)也不同。請(qǐng)參閱以下常見架構(gòu):
該框架主要收集各個(gè)節(jié)點(diǎn)上的相關(guān)日志和數(shù)據(jù),經(jīng)過分析過濾后發(fā)送到遠(yuǎn)程服務(wù)器存儲(chǔ)。然后將數(shù)據(jù)壓縮并存儲(chǔ)在分片中,并提供多種API供用戶查詢和操作。用戶可以通過Web直觀地查詢?nèi)罩?,并根?jù)需要生成數(shù)據(jù)報(bào)表。
這個(gè)框架的優(yōu)點(diǎn)是構(gòu)建簡單,使用方便。缺點(diǎn)是對(duì)系統(tǒng)資源的消耗比較大,運(yùn)行時(shí)占用CPU和顯存資源。此外,由于沒有消息隊(duì)列緩存,因此可能存在數(shù)據(jù)丟失的風(fēng)險(xiǎn)。建議初學(xué)者或數(shù)據(jù)量較小的環(huán)境使用此框架。
這就引出了第二個(gè)框架:
這種架構(gòu)的主要特點(diǎn)是引入了消息隊(duì)列機(jī)制。每個(gè)節(jié)點(diǎn)上的Agent(第一級(jí),主要用于傳輸數(shù)據(jù))首先將數(shù)據(jù)傳輸?shù)较㈥?duì)列(常見的Kafka、Redis等),然后,(第二級(jí)主要用于拉取消息隊(duì)列數(shù)據(jù),過濾和分析數(shù)據(jù))并將低級(jí)數(shù)據(jù)傳遞給存儲(chǔ)。最后,通過將日志和數(shù)據(jù)呈現(xiàn)給用戶。由于引入了Kafka(或Redis)緩存機(jī)制,雖然遠(yuǎn)端因故障停止運(yùn)行,但不會(huì)因?yàn)閿?shù)據(jù)已經(jīng)存儲(chǔ)而丟失數(shù)據(jù)。
這些架構(gòu)適用于集群大、數(shù)據(jù)量一般的應(yīng)用環(huán)境,但是由于需要分析處理大量數(shù)據(jù),以及存儲(chǔ)和索引大量數(shù)據(jù),負(fù)載會(huì)比較重解決方案是將它們配置為集群模式以分擔(dān)負(fù)載。
這種架構(gòu)的優(yōu)點(diǎn)是引入了消息隊(duì)列機(jī)制來平衡網(wǎng)絡(luò)傳輸,從而增加了網(wǎng)絡(luò)阻塞的可能性,尤其是數(shù)據(jù)丟失,但是仍然存在占用系統(tǒng)資源過多的問題。服務(wù)器運(yùn)維,可能會(huì)出現(xiàn)性能困境。
最后還有第三個(gè)框架:
這個(gè)框架是在其中的第二個(gè)框架的基礎(chǔ)上改進(jìn)的,主要是將后端收集數(shù)據(jù)的Agent替換為消息隊(duì)列的Kafka集群,然后通過集群模式進(jìn)行改進(jìn)。該架構(gòu)適用于集群小、數(shù)據(jù)量大的業(yè)務(wù)場(chǎng)景。通過替換后端Agent來收集日志,有效減少業(yè)務(wù)系統(tǒng)資源的消耗。同時(shí)消息隊(duì)列采用Kafka集群架構(gòu),有效保證了采集數(shù)據(jù)的安全性和穩(wěn)定性,前端和集群采用集群方式構(gòu)建,提升了效率、擴(kuò)展性和吞吐量ELK 系統(tǒng)作為一個(gè)整體。
七、運(yùn)用大數(shù)據(jù)思維進(jìn)行運(yùn)維監(jiān)控
大數(shù)據(jù)分析從運(yùn)維人員的日志分析開始,逐步發(fā)展到各種業(yè)務(wù)的分析。人們發(fā)現(xiàn)這種數(shù)據(jù)蘊(yùn)含著巨大的價(jià)值。通過對(duì)互聯(lián)網(wǎng)上研究對(duì)象的實(shí)時(shí)檢測(cè)和跟蹤所形成的海量行為數(shù)據(jù),挖掘分析,闡明規(guī)律,提出研究推論和對(duì)策。這就是大數(shù)據(jù)的用途。
同樣,通過大數(shù)據(jù)分析,我們可以得到各種指標(biāo),比如:
1、業(yè)務(wù)層面,如團(tuán)購業(yè)務(wù)每秒訪問量、每秒檢查團(tuán)購券數(shù)量、每分鐘支付、創(chuàng)建訂單等。
2、在應(yīng)用層面,每個(gè)應(yīng)用的錯(cuò)誤數(shù)、調(diào)用進(jìn)程、平均訪問時(shí)長、最大時(shí)長、95行等
3、系統(tǒng)資源層面:如cpu、內(nèi)存、swap、磁盤、負(fù)載、主進(jìn)程生存等
4、網(wǎng)絡(luò)層面:如丟包、ping生存、流量、tcp連接等
而這種指標(biāo)正是運(yùn)維非常需要的。這種通過大數(shù)據(jù)分析的指標(biāo)可以解決以下問題:
系統(tǒng)健康監(jiān)測(cè)
找出問題的癥結(jié)
系統(tǒng)問題的診斷和調(diào)整
跟蹤安全相關(guān)問題
如何運(yùn)用大數(shù)據(jù)思維進(jìn)行運(yùn)維?大數(shù)據(jù)架構(gòu)的一個(gè)思路就是提供一個(gè)運(yùn)維平臺(tái)方便地解決這類問題,而不是讓大數(shù)據(jù)平臺(tái)解決出現(xiàn)的問題。
一個(gè)基本的大數(shù)據(jù)運(yùn)維框架如下:
對(duì)于運(yùn)維的監(jiān)控,借助大數(shù)據(jù)思維,需要分三步走:
獲取所需數(shù)據(jù)
過濾異常數(shù)據(jù)并設(shè)置報(bào)警閾值
通過第三方監(jiān)控平臺(tái)發(fā)出警報(bào)
所有系統(tǒng)中最可靠的是日志輸出。系統(tǒng)是否正常,發(fā)生了什么,我們習(xí)慣在出現(xiàn)問題的時(shí)候查看日志,或者寫一個(gè)腳本定期分析。現(xiàn)在這種東西可以集成到現(xiàn)有的平臺(tái)中,我們唯一要做的就是定義解析日志的邏輯。
好了,這就是明天給大家介紹的新時(shí)代核心運(yùn)維技能。抓住機(jī)遇,開始新的學(xué)習(xí)!有問題可以一起學(xué)習(xí)交流。
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)