運維監控能夠實現自動化嗎?

用戶3767468966919


你好,很高興回答你這個問題。作為運維工程師,非常理解你的這個問題,我們也希望通過監控的自動化來提高運維的效率,把更多的精力放到業務上;但是這需要各子系統及流程的配合,才能達到更好的效果。換句話說就是

運維自動化不是孤立的,必須依賴上下游系統,基於規範和流程才能完成


下面咱們來舉個簡單場景來分析下吧。

需求:產品部門需要上線一個業務子系統。

運維需要的工作主要為以下三步:

1.上架新的服務器或虛擬機;

2.業務子系統部署上線;

3.上線完成後添加監控;


以上三步中涉及到監控系統的有:

1.上架的新機器的自動錄入到監控系統,進行統一納管;

2.對錄入機器及業務系統需要從幾個維度的監控:硬件監控、基礎狀態監控、應用監控、業務日誌監控、流量監控;

3.與監控平臺聯動的平臺也要及時進行數據更新;


對於運維監控自動化來說,我們需要從以上幾個維度出發去考慮如何實現自動化。無論是從哪個維度出發,必須都要有一套自動化腳本或模板去統一實現,因此我們需要制定規範去配合腳本或模板的自動化執行,才能順利完成。如果監控系統依賴其他上下游平臺,在自動化過程中還要聯動其他平臺。


總結

通過以上的描述,如果我們在各個監控維度,有統一的規範、統一的模板、完善的流程以及各個平臺的API(或統一的ESb),那麼我們肯定是能夠實現自動化的。當然監控系統的自動化遠不止於此,例如故障自愈、智能監控等,現在很多大廠也都已經實現。但我覺得無論多麼高大上,都需要打好基礎。


好了,我的回答就到這吧,希望對你有幫助。


木訥大叔愛運維


一個非常好的問題。運維監控能夠實現自動化,而且建議實現自動化。


雲服務已經成為IT技術的核心基礎設施,充分利用雲服務帶來的彈性和分佈式優勢,賦能自動化運維。

一,自動化部署

CI/CD持續化集成和自動化部署,比如常用的Jenkins,配置Git代碼提交時觸發構建,然後自動部署。

二,Docker容器技術

Docker將應用以及依賴打包到一個可移植的鏡像中,可以實現虛擬化,有助於快捷高效的交付應用。


搭建阿里雲容器鏡像服務+Git+Docker自動構建系統,結合資源編排服務,實現自動部署更新,不再需要常用的Jenkins構建服務器。

三,AutoScaling自動伸縮

配置一定的觸發條件,滿足時自動增加或者釋放服務器資源。比如當CPU使用率達到80%或者內存佔用率達到80%時,根據配置好的服務器和數量,自動觸發。

四,系統日誌收集處理系統

1,ELK是常見的日誌收集管理系統,包括ElasticSearch, LogStash, Kibana三個服務,架構示意圖如下:

2,在ELK系統中,Kibana是一個圖形化展示工具,配置查詢條件,運維人員隨時可以搜索指定日誌信息,分析處理故障。

五,服務監控

1,雲監控CloudMonitor

主流雲服務商都將監控功能集成到了基礎架構中,以阿里云為例,雲監控提供了多種配置,多維度全方位監控。


比如配置CPU使用率到達80%時,自動觸發動作,增加服務器實例,同時郵件通知運維人員。

2,應用監控

以監控寶為例,配置服務地址,選擇分佈在不同地區和運營商的監測點。當監測點不能正常調用配置的服務地址時,將收到警告信息,可以選擇郵件、短信、電話等通知方式。

六,雲原生

雲原生是指從開始設計應用時,就充分考慮並且利用雲服務的特點,比如彈性和分佈式,可以簡單的理解為:雲原生 = 微服務 + DevOps + 持續交付 + 容器化。

在雲原生應用系統裡,運營、維護和監控,完全是自動化的。


我是工作多年的Web應用架構師,陸續發佈關於軟件開發方面的文章,歡迎關注我,瞭解更多IT專業知識。


急速馬力快de源碼控


運維監控大致可以分為以下幾個大類:

1、服務器資源監控(CPU,內存,磁盤)

2、網絡質量監控(延時,丟包,流量)

3、業務監控(端口,進程,api接口)

4、內容監控(某個頁面響應時間, 某個頁面的關鍵字等)

5、數據庫監控(數據庫相關的性能參數監控)

6、自定義監控(比如日誌監控等)


如果是把 現有的一些監控項做自動化,那是可以的。

我以 zabbix 為例子,把固定的一些監控項做成模板,新服務器可以實現自動註冊,自動添加監控項。

但是如果要完全自動化,那比較困難,因為在實際工作中經常會有一些新需求,這些都是需要先手工進行配置的。



分享到:


相關文章: