【第一章】zabbix3.4監控WindowsCPU使用率磁盤IO磁盤事件日誌監控閾值郵件報警詳細配置

 

一、Windows服務器須要先安裝zabbix-agent代理

概況

Zabbix agent部署在監控的目標上,主動監測本地的資源和應用(硬件驅動,內存,處理器統計等)。正則表達式

Zabbix agent收集本地的操做信息並將數據報告給Zabbix server用於進一步處理。一旦出現異常 (好比硬盤空間已滿或者有崩潰的服務進程), Zabbix server會主動警告管理員指定機器上的異常。數據庫

Zabbix agents的極端高效緣於它能夠利用本地系統調用來完成統計數據的收集。windows

被動(passive)和主動(active)檢查

Zabbix agents能夠執行被動和主動兩種檢查方式。服務器

Windows上的Zabbix agent是以Windows服務的形式運行的。less

您能夠在主機上運行Zabbix agent的單個實例或多個實例。oop

單個實例可使用默認配置文件或命令行中指定的配置文件。性能

在多個實例的狀況下,每一個agent實例必須有本身獨立的配置文件(其中一個實例可使用默認配置文件)。測試

如下命令參數能夠在Zabbix agent中使用:spa

參數 描述n
UNIX 和 Windows agent
-c --config <config-file> 配置文件的絕對路徑。
您可使用此選項來制定配置文件,而不是使用默認文件。\\在UNIX中, 默認文件是/usr/local/etc/zabbix_agentd.conf 要麼經過 compile-time 變量 --sysconfdir 或者 --prefix來設置
在Windows中,默認文件是 c:\zabbix_agentd.conf
-p --print 顯示已知監控項並推出
Note: 爲了同時返回用戶參數user parameter 您必須制定配置文件 (若是不是在指定位置的話).
-t --test <item key> 測試指定監控項並退出。
Note:爲了同時返回用戶參數 user parameter 您必須制定配置文件 (若是不是在指定位置的話).
-h --help 顯示幫助信息
-V --version 顯示版本號
僅UNIX agent
-R --runtime-control <option> 執行管理功能。參見 運行時控制. runtime control.
僅Windows agent
-m --multiple-agents 使用多agent實例 (使用 -i,-d,-s,-x )。
T爲了區分實例的服務名稱,每項服務名都會包涵來自配置文件裏的主機名值。
僅Windows agent (功能)
-i --install 以服務的形式安裝Zabbix Windows agent
-d --uninstall 卸載Zabbix indows agent服務
-s --start 開始Zabbix Windows agent服務
-x --stop 中止bbix Windows agent 服務

將上面下載的zabbix_agents_3.4.6.win.zip文件解壓放到c盤裏面命令行

而後須要修改conf裏面的zabbix_agentd.win.conf這個是配置文件

須要修改的配置選項:
LogFile=C:\zabbix_agents_3.4.6.win\log\zabbix_agentd.log ##這個是日誌存放的地址
Server=192.168.10.10 ##這個是zabbix服務端的地址
ServerActive=192.168.10.10:10050 ##10050是zabbix-server和zabbix-agent通訊的端口
Hostname=192.168.10.11 ##這個填寫須要監控的Windows服務器IP

管理員權限運行cmd,以下圖顯示installed successfully表明成功了,再去服務裏面啓動zabbix-agent

##下面這一串命令是把agentd服務啓動
C:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd -i -m -c C:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf

 

二、監控Windows-CPU使用率

在zabbix中,默認的模板不帶CPU使用率的監控,爲減小重複工做率,在template模板下建立一個模板
而後下次新增監控的主機服務器直接關聯相關的模板便可!
在配置---->模板---->建立模板
模板名稱:Template Windows CPU usage
 

 

建立完模板就開始建立監控項
名稱:CPU usage%
鍵值:perf_counter[\Processor(_Total)\% Processor Time]
信息類型:浮點數
單位:%

 

建立完監控項之後新建觸發器,能夠在表達式構造器測試這個觸發器是否有用

名稱:cpu used  is more than 80%

嚴重性:通常嚴重

表達式:{Template Windows CPU usage:perf_counter[\Processor(_Total)\% Processor Time].avg(5m)}>80

建立完觸發器再添加一個圖形查看cpu使用率圖表

名稱:CPU使用率

監控項:Template Windows CPU usage: CPU使用率

添加成功之後能夠查看CPU圖形表了,有數據表明成功監控了!

 

三、監控Windows-磁盤IO性能監控

注意:這個IO模版是收集整個服務器全部物理硬盤的IO數據的
好比:服務器有一個固態硬盤,一個機械硬盤,他是固態硬盤和機械硬盤數據加起來顯示出來
監控數據庫服務器的時候,最好分別對待固態硬盤和機械硬盤,使用不一樣的觸發器閥值
由於是機器上全部硬盤加起來的,要針對固態硬盤和機械硬盤區分開觸發器就很是困難了

WIN下的IO性能監控,是經過調用性能計數器中的參數來獲取

目前已經統計成模板,可直接使用,模板包括了圖形和上圖所示的監控項

 四、監控Windows-磁盤觸發器閾值更改

選擇配置--->模板--->(Template OS Linux/Template OS Windows)

我這邊是監控Windows因此修改Windows的模板,若是是監控Linux能夠修改Linux的模板

默認是1小時更新一次,修改爲600秒,就是10分鐘更新一次,10分鐘後就能看到網卡和磁盤的監控值了!

 

選擇配置--->模板--->(Template OS Linux/Template OS Windows)--->Mounted filesystem discovery--->觸發器類型

我這邊是已經修改好的了,沒有修改的或者沒有這一觸發項的,能夠點擊右上角(建立觸發器原型)

名稱:Free disk space is less than 50GB on volume {#FSNAME}

表達式:{Template OS Windows:vfs.fs.size[{#FSNAME},free].last(0)}<50000000000

選擇配置--->模板--->(Template OS Linux/Template OS Windows)--->Mounted filesystem discovery--->監控項類型

我這邊是已經修改好的了,沒有修改的或者沒有這一監控項的,能夠點擊右上角(建立監控項原型)

名稱:Free disk space on $1

表達式:vfs.fs.size[{#FSNAME},free]

單位:B

更新間隔:1m或者60s均可以

 

五、監控Windows-網卡自動發現規則

問題描述:這個通常是默認的windows模板裏面包含自動發現服務器網卡的,可是會自動發現不少其餘的網卡什麼之類的圖形東東

解決辦法:你直接刪除對應的圖形是沒用的,由於自動發現規則會再次自動發現,因此須要把規則改一下

1.自動發現規則裏面---->Windows service discovery(這個能夠禁用掉)

2.管理--->通常--->正則表達式--->Network interfaces for discovery(加入下圖的參數,這樣就設定不會自動發現以這些參數網卡了)

 

1    »    Microsoft    [結果爲假]
2    »    Teredo    [結果爲假]
3    »    Qos    [結果爲假]
4    »    WFP    [結果爲假]
5    »    RAS    [結果爲假]
6    »    WAN    [結果爲假]
7    »    ^Nu[0-9.]*$    [結果爲假]
8    »    ^[Ss]ystem$    [結果爲假]
9    »    ^[Ll]o[0-9.]*$    [結果爲假]
10    »    ^NULL[0-9.]*$    [結果爲假]
11    »    ^(In)?[Ll]oop[Bb]ack[0-9._]*$    [結果爲假]
12    »    ^Software Loopback Interface    [結果爲假]
13    »    Network traffic on Broadcom NetXtreme Gigabit Ethernet    [結果爲假]

 

 

六、監控Windows事件日誌

模板名稱:Template Windows Event Log

 

監控項:
應用程序日誌MSExchangeTransport
eventlog[Application,,,"MSExchangeTransport",^15004$,,skip]

觸發器:
應用程序日誌60S不出現則恢復
{Template Windows Event Log:eventlog[Application,,,"MSExchangeTransport",^15004$,,skip].nodata(60)}=0

 

觸發器:

出現系統錯誤日記

{Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36882)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36888)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36887)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36874)}<>0

觸發器:

全部系統錯誤日記

{Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].nodata(60)}=0

 

七、配置服務端郵件報警功能

我這邊用到的是騰訊企業郵箱

以下圖所示,管理--->報警媒介類型--->Email

要注意的是用戶名稱這裏要寫你的企業郵箱帳號,密碼填寫密碼

一開始我覺得是發郵件的名稱,搞得無法發郵件,可使用QQ郵箱

SMTP服務器:smtp.exmail.qq.com

端口:465

SMTP電郵:XXXX@qq.com

用戶名稱:XXXX@qq.com

配置--->動做--->觸發器

建立一個觸發器來發郵件報警

操做:

默認標題:故障{TRIGGER.STATUS},服務器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!

消息內容:

告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE}{EVENT.TIME}
告警等級:{TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{ENET.ID}

 

恢復操做:

默認標題:恢復{TRIGGER.STATUS}, 服務器:{HOSTNAME1}: {TRIGGER.NAME}已恢復!

消息內容:

告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE}{EVENT.TIME}
告警等級:{TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{ENET.ID}

 

確認操做:

默認標題:已確認: {TRIGGER.NAME}

消息內容:

{USER.FULLNAME} 已經確認的問題 {ACK.DATE} {ACK.TIME} 如下消息:
{ACK.MESSAGE}

目前的問題狀態是{EVENT.STATUS}

最後配置報警媒介,也就是觸發報警條件,要下發郵件通知道哪一個郵箱裏面

點擊那個小頭像,而後進入到用戶基本資料,選擇報警媒介進行設置

能夠本身選擇嚴重性級別,設置完啓用了之後,報警功能就設置完成了!

相關文章
相關標籤/搜索