1. 程式人生 > 其它 >第十一章 監控系統-zabbix自動化監控

第十一章 監控系統-zabbix自動化監控

一、Zabbix自動發現(被動)

[網路發現官方手冊](https://www.zabbix.com/documentation/3.4/zh/manual/discovery/network_discovery)

1.概述

#1.Zabbix提供了有效和非常靈活的網路自動發現功能。

當網路發現正確設定後你可以:
1.加快Zabbix部署
2.簡化管理
3.無需過多管理就能在快速變化的環境中使用Zabbix

Zabbix網路發現基於以下資訊:
1.IP範圍
2.可用的外部服務(FTP,SSH,WEB,POP3,IMAP,TCP等)
3.來自 zabbix agent 的資訊(僅支援未加密模式)
4.來自 snmp agent 的資訊

不支援:
1.發現網路拓撲

網路發現由兩個階段組成:發現(discovery)和動作(actions)。

2.配置

1.單擊配置->自動發現->啟動預設的Local network!
2.配置規則
3.單擊配置->動作->事件源->自動發現->啟用動作
4.修改動作規則
5.修改操作細節

預設標題
自動發現主機IP:{DISCOVERY.DEVICE.IPADDRESS}

訊息內容
客戶端名稱: {DISCOVERY.SERVICE.NAME}
客戶端埠: {DISCOVERY.SERVICE.PORT}
客戶端狀態: {DISCOVERY.SERVICE.STATUS}

操作動作
新增主機,新增主機組,連結模板,傳送郵件,等等
6.主機已掃描加入節點 web03是/etc/hosts中定義的
7.新增一臺全新的主機
[root@web02 ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.12-1.el7.x86_64.rpm

[root@web02 ~]# grep "^Server" /etc/zabbix/zabbix_agentd.conf 
Server=10.0.0.61

[root@web02 ~]# systemctl restart zabbix-agent

8.如果出現discover busy告警則需要優化
[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf
StartDiscoverers=20

9.zabbix網路發現總結
	1) 網路發現速度太慢
	2) 輪詢掃描網段
	3) 如果網段中存在不通的主機,會出現卡頓並且造成後續新增的伺服器無法加入節點
	4) 會導致server效能變緩慢,影響server效能

二、Zabbix自動註冊(主動)

Zabbix agent可以自動註冊到伺服器進行監控。這種方式無需在伺服器上手動配置它們。
自動註冊官方手冊:https://www.zabbix.com/documentation/3.4/manual/discovery/auto_registration

1.配置 Zabbix-Agent指定 Zabbix-Server

[root@prd-databridge001 ~]$ vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1,68.79.32.235    #被動模式
ServerActive=127.0.0.1,68.79.32.235   #主動模式
Hostname=prd-databridge001     #指定主機名       

#過載服務
[root@prd-databridge001 ~]$ systemctl restart zabbix-agent

注意: 如果不指定Hostname,則伺服器將使用agent的系統主機名命名主機

2.單擊配置->動作,選擇自動註冊為事件源,然後單擊建立操作

3.配置動作規則

4.配置操作規則

主題:Auto registration:{HOST.HOST}
訊息:
Host name:{HOST.HOST}
Host IP:{HOST.IP}
Agent port:{HOST.PORT}

5.等待自動註冊

6.等待郵件通知

7.可以通過主機名稱來區分不同的主機,例如web,db,這樣可以根據不同的主機配置不同的模板。

#1.第一個動作如下

> 名稱:web服務主機自動註冊
> 主機名稱似 web
> 操作:連結到模板:Template Nginx Status

#2.第二個動作如下

> 名稱:db服務主機自動註冊
> 主機名稱似 db
> 操作:連結到模板:Template DB MySQL

如無法通過主機名稱進行區分各個主機,建議使用"主機元資料"進行區分各個主機,詳情參考官方文件

三、Zabbix主被模式區別

1.主動模式與被動模式區別

1.被動模式 (Zabbix-server輪詢檢測zabbix-agent)
2.主動模式 (Zabbix-agent主動上報給Zabbix-server)

2.主動模式與被被動模式選擇如何選擇

1.當Queue裡有大量延遲的監控項
2.當監控主機超過300+, 建議使用主動模式

四、Zabbix主被模式實踐

1.Zabbix被動模式演示取值:

Zabbix預設是被動模式,被動模式如果需要獲取100個監控項的值, 需要Server向Agent獲取100次。(注意zabbix圖中的時間)

2.Zabbix主動模式演示取值:

Zabbix主動模式如果需要獲取100個監控項的值,Server會將要獲取監控項的值生成一個清單傳送給Agent,Agent採集完成後會一次將所有資料傳送給Server。

3.如何將Zabbix調整為主動模式

1.修改/etc/zabbix/zabbix_agent.conf配置檔案
[root@prd-databridge001 ~]$ vim /etc/zabbix/zabbix_agentd.conf
ServerActive=68.79.32.235
Hostname=   #填寫主機名稱

2.Zabbix需要更新模板為 Active
	1)克隆一份被動模式的模板
	2)點選克隆後的模板->選中所有監控項->批量修改->修改為主動模式
	3)主機取消連結並清理被動模板,重新關聯新模板即可。