• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Zabbix的VMware產(chǎn)品的自動監(jiān)控系統(tǒng)設(shè)計

      2022-06-10 07:13:38周美佳
      關(guān)鍵詞:發(fā)送給觸發(fā)器郵件

      周美佳, 趙 科

      (中遠海運科技股份有限公司, 上海 200135)

      0 引 言

      隨著中遠海運集團及其下屬公司業(yè)務(wù)的快速發(fā)展,以及IaaS(Infrastructure-as-a-Service)基礎(chǔ)架構(gòu)層服務(wù)器虛擬化技術(shù)的應(yīng)用,云架構(gòu)模式逐漸代替了傳統(tǒng)的單機運行模式,虛擬化產(chǎn)品開始應(yīng)用于基礎(chǔ)架構(gòu)中。隨著虛擬化產(chǎn)品Vsphere Client的不斷升級,云數(shù)據(jù)中心內(nèi)納管Vsphere Client也同步升級,目前云數(shù)據(jù)中心內(nèi)在用的監(jiān)控系統(tǒng)APM因商業(yè)產(chǎn)品的許可證問題,無法添加新的組件功能,無法實現(xiàn)二次開發(fā),進而無法實現(xiàn)對Vsphere Client6及以上版本產(chǎn)品的監(jiān)控,需將對虛擬化云的監(jiān)控從傳統(tǒng)監(jiān)控平臺APM中分離出來,這樣既能節(jié)省原監(jiān)控系統(tǒng)的商業(yè)許可證,又能滿足對虛擬化資源的監(jiān)控需求。

      如何以經(jīng)濟有效、自主可控的方式實現(xiàn)對高版本Vsphere Client的監(jiān)控,從而獲得Vsphere Client中納管資源的運行情況,是急需解決的問題,對新的監(jiān)控系統(tǒng)的功能提出了挑戰(zhàn)。

      Zabbix作為業(yè)界廣泛使用的企業(yè)級監(jiān)控工具,具有開箱即用、靈活可擴展、分布式監(jiān)控、高可用和安全保障等諸多優(yōu)勢。Zabbix提供了自定義監(jiān)控項和遠程運行自定義腳本的功能,通過編寫通用腳本和簡單的Web配置,可靈活展示,滿足個性化監(jiān)控和自動化運維需求?;谝陨蟽?yōu)點,選擇Zabbix作為平臺的核心組件。自Zabbix2.2.0版本開始支持對VMware的監(jiān)控,支持VMware vCenter和vSphere的最低版本為4.1,目前監(jiān)控對象的版本在6.5以上,可通過Zabbix 4.4.7實現(xiàn)有效監(jiān)控。本文基于開源的監(jiān)控系統(tǒng)Zabbix,并配合自定義性能計數(shù)器,構(gòu)建自動化監(jiān)控系統(tǒng),高效地完成對各虛擬化云的監(jiān)控,同時提供事件預(yù)警、通知和集中展示功能,達到自主運維和自主可控的目的,較好地解決現(xiàn)有監(jiān)控系統(tǒng)無法監(jiān)控高版本虛擬化資源的問題,為后續(xù)擴大監(jiān)控系統(tǒng)監(jiān)控范圍提供參考。

      1 Zabbix自動化監(jiān)控系統(tǒng)設(shè)計目標

      在日常運維工作中,對虛擬化VMware運維的關(guān)注主要集中在VMware vCenter 中VMware ESX主機的可用性、CPU(Central Processing Unit)利用率、內(nèi)存利用率和所屬存儲使用率等方面。另外,VMWARE ESX主機上虛擬機的運行情況也可通過對VMWARE ESX主機進行監(jiān)控獲取。通過對服務(wù)端Zabbix 4.4.7進行配置和自定義性能計數(shù)器,實現(xiàn)對以上監(jiān)控需求的郵件自動化告警。

      2 Zabbix自動化監(jiān)控系統(tǒng)架構(gòu)

      Zabbix自動化監(jiān)控系統(tǒng)采用3層C/S架構(gòu),分為服務(wù)端、被監(jiān)控客戶端和數(shù)據(jù)展示端等3部分,其中:服務(wù)端采用Zabbix server 4.4.7和Mysql8.0數(shù)據(jù)庫;客戶端一般安裝Zabbix agent;數(shù)據(jù)展示端為Zabbix自帶Web界面,可對日常監(jiān)控數(shù)據(jù)進行查詢和配置監(jiān)控設(shè)備。服務(wù)端主要負責對客戶端采集的數(shù)據(jù)進行處理和邏輯判斷,按監(jiān)控觸發(fā)器的規(guī)則生成對應(yīng)的告警事件,進行故障通知;所有配置信息和Zabbix采集到的數(shù)據(jù)都存儲在Mysql數(shù)據(jù)庫中,便于對日志和數(shù)據(jù)進行回溯查詢。被監(jiān)控客戶端通常安裝Zabbix agent,通過Zabbix agent、SOAP和SNMP等對被監(jiān)控點的性能和可用性進行監(jiān)控,并將收集的數(shù)據(jù)發(fā)送給Zabbix server。自動監(jiān)控系統(tǒng)架構(gòu)見圖1。

      圖1 自動監(jiān)控系統(tǒng)架構(gòu)

      3 技術(shù)實現(xiàn)及應(yīng)用

      3.1 Zabbix實現(xiàn)VMware虛擬化監(jiān)控流程

      Zabbix 4.4.7中默認提供3個模板,可直接用來監(jiān)控VMware vCenter、ESX hypervisor和虛擬機。監(jiān)控虛擬機分以下2個步驟完成:

      1) Zabbix通過VMware collector進程獲取虛擬機數(shù)據(jù)。這些進程通過SOAP協(xié)議,從VMware Web SDK服務(wù)中獲取必要的信息,收集的數(shù)據(jù)分為VMware配置數(shù)據(jù)和VMware性能數(shù)據(jù)2種,目前VMware性能統(tǒng)計信息有數(shù)據(jù)存儲、網(wǎng)絡(luò)接口、磁盤設(shè)備統(tǒng)計信息和自定義性能計數(shù)器項,Zabbix server對這些數(shù)據(jù)進行預(yù)處理并存儲到Zabbix server共享內(nèi)存中。

      2) Zabbix pollers通過Zabbix簡單檢查VMware監(jiān)控項,檢索這些數(shù)據(jù)。

      Zabbix監(jiān)控工作流程圖見圖2。

      圖2 Zabbix監(jiān)控工作流程圖

      3.2 VMware虛擬化平臺監(jiān)控實現(xiàn)

      3.2.1 Zabbix server端配置

      在一般情況下,Zabbix 4.4.7不滿足對虛擬機的監(jiān)控需求,在進行虛擬化平臺監(jiān)控時,Zabbix在編譯時需加上—with-libxml2和—with-libcurl,并在Zabbix server的配置文件中開啟StartVMwareCollectors、VMwareFrequency、VMwarePerfFrequency、VMwareCacheSize和VMwareTimeout。配置完成之后,重啟zabbix_server服務(wù),顯示支持對虛擬機的監(jiān)控。圖3為完成Zabbix server端配置之后的日志。

      圖3 完成Zabbix server端配置之后的日志

      3.2.2 以自定義性能計數(shù)器實現(xiàn)ESX各監(jiān)控項監(jiān)控

      Zabbix內(nèi)置監(jiān)控VMware的3個模板分別是“Template VM VMware”“Template VM VMware Guest”和“Template VM VMware Hypervisor”。Template VM VMware用于對VCenter進行配置,通過配置的VMware Web SDK信息獲取信息;Template VM VMware Guest和Template VM VMware Hypervisor模板通過自動發(fā)現(xiàn)使用,通常設(shè)置為自動鏈接到主機,主要用來自動發(fā)現(xiàn)虛擬機和ESXI服務(wù)器。添加vcenter 地址,采用宏變量方式配置VC控制臺的{PASSWORD}、{URL}和{USERNAME}信息,鏈接到Template VM VMware模板,配置之后成功發(fā)現(xiàn)VC、虛擬機和ESXI服務(wù)器。

      通過Zabbix實現(xiàn)對VMware虛擬化資源的監(jiān)控,具體如下。

      1) VMware ESX主機可用性。

      此部分需使用Zabbix ICMP模板。Zabbix服務(wù)器默認未安裝fping服務(wù),需額外安裝fping服務(wù)并修改配置文件,添加參數(shù)“FpingLocation=/usr/local/fping/sbin/fping”,實現(xiàn)主機的fping功能。在Zabbix web主頁上添加主機ping,見圖4。

      圖4 Zabbix Web主頁上添加主機ping截圖

      2) 自定義實現(xiàn)VMWARE ESX主機CPU利用率。

      通過創(chuàng)建新的item name “hypervisor_cpu_used_percent”定義ESX主機CPU利用率,方便進行自定義計算,item type設(shè)計為計算類型Calculated,key使用自定義key vmware.hv.cpu[usedpercent],通過獲取的CPU frequency、CPU cores和CPU usage自定義性能計數(shù)器“hypervisor_cpu_used_percent”,實現(xiàn)對主機CPU的計算,計算公式為

      100·last(“VMware.hv.cpu.usage[{$URL},{HOST.HOST}]”)/(last(“VMware.hv.hw.cpu.freq[{$URL},{HOST.HOST}]”)·last(“VMware.hv.hw.cpu.num[{$URL},{HOST.HOST}]”))……

      (1)

      3) 自定義實現(xiàn)VMWARE ESX主機內(nèi)存利用率。

      通過創(chuàng)建新的item name “hypervisor_memory_used_percent”定義ESX主機內(nèi)存利用率,方便進行自定義計算,item type設(shè)計為計算類型Calculated,key使用自定義key vmware.hv.memory[usedpercent],通過獲取的Total memory和Used memory自定義性能計數(shù)器“hypervisor_memory_used_percent”,實現(xiàn)對主機內(nèi)存的計算,計算公式為

      100·last(“VMware.hv.memory.used[{$URL},{HOST.HOST}]”)/last(“VMware.hv.hw.memory[{$URL},{HOST.HOST}]”)

      (2)

      4) 自定義實現(xiàn)VMWARE ESX所屬存儲使用率。

      (1) 自動發(fā)現(xiàn)主機關(guān)聯(lián)的所有存儲空間,發(fā)現(xiàn)規(guī)則為“Datastore discovery”,使用內(nèi)置key “vmware.hv.datastore.discovery[{$URL},{HOST.HOST}]”,item type為simple check。

      (2) 在自動發(fā)現(xiàn)所有存儲的基礎(chǔ)上,根據(jù)日常監(jiān)控運維經(jīng)驗,經(jīng)常關(guān)注存儲剩余空間實際大小,方便根據(jù)存儲剩余空間實際大小定義觸發(fā)器。因此,自定義item prototype name “Free space on datastore {#DATASTORE} (sizeG)”,方便以后根據(jù)存儲剩余空間實際大小定義觸發(fā)器。key定義為

      vmware.hv.datastore.size[{$URL},{HOST.HOST},{#DATASTORE},free]

      (3)

      3.2.3 創(chuàng)建各監(jiān)控項的觸發(fā)器

      1) 定義VMware ESX主機可用性觸發(fā)器。

      新建trigger name “Unavailable by ICMP ping”,自定義expression,當主機無法ping通時定義為高危High,即

      {Template VM VMware Hypervisor:icmpping.max(#3)}=0

      (4)

      2) 定義VMWARE ESX主機CPU利用率觸發(fā)器。

      新建trigger name “esx cpu usage”,自定義expression,當CPU利用率大于90%時定義為高危High,即

      {Template VM VMware Hypervisor:vmware.hv.cpu[usedpercent].last()}≥90……

      (5)

      3) 定義VMWARE ESX主機內(nèi)存利用率觸發(fā)器。

      新建trigger name “esx memory usage”,自定義expression,當內(nèi)存利用率大于90%時定義為高危High,即

      {Template VM VMware Hypervisor:vmware.hv.memory[usedpercent].last()}≥90

      (6)

      4) 定義VMWARE ESX 所屬存儲使用率觸發(fā)器。

      新建trigger name “datastore{#DATASTORE} 可用空間小于200G”,自定義expression,當剩余存儲空間小于200G時定義為高危High,即

      {Template VM VMware Hypervisor:vmware.hv.datastore.size[{$URL},{HOST.HOST},{#DATASTORE},free].last()}≤200 000 000 000

      (7)

      3.2.4 配置告警動作

      對于運維人員來說,第一時間得到潛在或發(fā)生的故障信息,及時發(fā)現(xiàn)并排除安全隱患至關(guān)重要,Zabbix 報警通過定義和動作來完成:通過比較監(jiān)控實時數(shù)值與預(yù)設(shè)的閾值判斷報警條件是否成立,通過動作設(shè)定執(zhí)行該報警如何發(fā)送、發(fā)送給誰和何時發(fā)送。報警事件亦有不同級別,可定義為消息、警告、錯誤和嚴重錯誤等,可設(shè)置為只有出現(xiàn)某類級別時才引發(fā)報警。在通知運維人員的方式方面,通過配置SMTP郵件媒介告警,當收集到的數(shù)據(jù)在閾值范圍內(nèi)時,觸發(fā)告警動作,通過action郵件告警的方式將告警信息發(fā)送給管理員。郵件內(nèi)容包括主機名、IP地址、問題名稱和報警時間等,使運維人員能第一時間進行主動干預(yù),解決問題。

      1) 配置告警一:Unavailable by ICMP ping告警。

      設(shè)置以下告警信息:

      (1) Problem started at {EVENT.TIME} on {EVENT.DATE};

      (2) Problem name,即{EVENT.NAME};

      (3) Host,即{HOST.NAME};

      (4) Severity,即{EVENT.SEVERITY};

      (5) Original problem ID,即{EVENT.ID};

      (6) {TRIGGER.URL}。

      當ESX主機無法ping通時,自動發(fā)起郵件告警,發(fā)送給管理員。

      2) 配置告警二:esx cpu memory high monitor up to 90%告警。

      設(shè)置以下告警信息:

      (1) 告警主機{HOST.NAME};

      (2) 告警地址{HOST.IP};

      (3) 監(jiān)控項目{ITEM.NAME};

      (4) 監(jiān)控取{ITEM.LASTVALUE};

      (5) 告警等級{TRIGGER.SEVERITY};

      (6) 當前狀態(tài){TRIGGER.STATUS};

      (7) 告警信息{TRIGGER.NAME};

      (8) 告警時間{EVENT.DATE} - {EVENT.TIME};

      (9) 事件ID{EVENT.ID}。

      當ESX主機CPU或內(nèi)存使用率超過90%時,自動發(fā)起郵件告警,發(fā)送給管理員。

      3) 配置告警三:DATASTORE 剩余空間小于200G告警。

      設(shè)置以下告警信息:

      (1) 告警主機{HOST.NAME};

      (2) 告警地址{HOST.IP};

      (3) 監(jiān)控項目{ITEM.NAME};

      (4) 監(jiān)控取值{ITEM.LASTVALUE};

      (5) 告警等級:{TRIGGER.SEVERITY};

      (6) 當前狀態(tài){TRIGGER.STATUS};

      (7) 告警信息{TRIGGER.NAME};

      (8) 告警時間{EVENT.DATE} - {EVENT.TIME};

      (9) 事件ID{EVENT.ID}。

      當ESX存儲空間小于200G時,自動發(fā)起郵件告警,發(fā)送給管理員。

      4 應(yīng)用效果

      1) 當ESX主機無法ping通時,自動發(fā)起郵件告警,發(fā)送給管理員。管理員收到的內(nèi)存告警郵件信息見圖5。

      圖5 管理員收到的內(nèi)存告警郵件信息

      2) ESX主機CPU或內(nèi)存使用率超過90%時,自動發(fā)起郵件告警,發(fā)送給管理員。管理員收到的內(nèi)存告警郵件信息見圖6。

      圖6 管理員收到的CPU告警郵件信息

      3) 當ESX存儲空間小于200G時,自動發(fā)起郵件告警,發(fā)送給管理員。管理員收到的存儲告警郵件信息見圖7。

      圖7 管理員收到的存儲告警郵件信息

      5 結(jié) 語

      虛擬化架構(gòu)是未來IT服務(wù)發(fā)展方向,在保障重要系統(tǒng)業(yè)務(wù)連續(xù)性運行、提升用戶體驗等方面具有積極作用,虛擬化架構(gòu)的業(yè)務(wù)連續(xù)性依賴于強大的監(jiān)控系統(tǒng),將運維故障終止于發(fā)生初期是監(jiān)控系統(tǒng)的目標。本文基于Zabbix的自動化監(jiān)控系統(tǒng)實現(xiàn)了對虛擬化平臺的監(jiān)控,該系統(tǒng)已投產(chǎn)并穩(wěn)定運行,極大地減輕了運維壓力,提升了整體運維效率。運維人員日常只需查收相關(guān)的告警郵件,即可了解資源異常使用情況,做到提前干預(yù),盡早處理,提升系統(tǒng)的可用性。當然,Zabbix的應(yīng)用遠不止上述監(jiān)控功能,此外還包括操作系統(tǒng)日志監(jiān)控、數(shù)據(jù)庫監(jiān)控、中間件監(jiān)控、Web應(yīng)用監(jiān)控和機房環(huán)境監(jiān)控等,同時可配合Grafana提供更優(yōu)質(zhì)的可視化用戶體驗。未來將繼續(xù)開發(fā)Zabbix的更多應(yīng)用場景,并整合各類運維事件,提供低成本、高效益的智能化統(tǒng)一監(jiān)控運維平臺。

      猜你喜歡
      發(fā)送給觸發(fā)器郵件
      上學路上好風景
      基于James的院內(nèi)郵件管理系統(tǒng)的實現(xiàn)
      來自朋友的郵件
      一封郵件引發(fā)的梅賽德斯反彈
      車迷(2018年12期)2018-07-26 00:42:32
      主從JK觸發(fā)器邏輯功能分析
      電子世界(2017年22期)2017-12-02 03:03:45
      使用觸發(fā)器,強化安全性
      公告
      瘋狂猜圖之側(cè)顏你猜猜猜
      我的錄夢機
      科學啟蒙(2015年3期)2015-04-14 03:54:37
      將當前郵件快速轉(zhuǎn)發(fā)到QQ群
      電腦迷(2012年21期)2012-04-29 22:16:01
      祥云县| 吴旗县| 兴业县| 桦南县| 商城县| 新野县| 河北省| 中江县| 浦县| 社会| 资溪县| 东丰县| 新沂市| 柏乡县| 广饶县| 蓝田县| 安徽省| 和政县| 麻阳| 翼城县| 方正县| 呼和浩特市| 华蓥市| 嵩明县| 嘉荫县| 金坛市| 新竹市| 常宁市| 建昌县| 米易县| 余庆县| 紫金县| 肥城市| 南皮县| 赞皇县| 丰原市| 台中县| 富锦市| 无为县| 灌南县| 萨嘎县|