zabbix 功能之自動化監控(agent主動注冊與server自動發現)


  

 

 

一:自動化監控可以實現主機開機自動發現自動關聯模板,不需要人工發現與干預,自動化模式可以有客戶端zabbix agent自動注冊到zabbix server,或由zabbix server掃描到zabbix agent后添加到監控組,具體如下:

1.1:zabbix agent注冊到zabbix server的方式:

1.zabbix agent自動注冊: #zabbix agent啟動后主動添加到zabbix server 2.zabbix server主動發現: #由zabbi server主動掃描發現 3.通過zabbix api自動添加

1.2:自動注冊前提條件:

1.知道server是誰(zabbix server IP 2.告訴server我是誰(zabbixagent 主機名) 3.有自己的特征碼(是linux還是windows系統,)

2:zabbix agent自動注冊方式實現:

2.1:zabbix agent配置文件:

# grep “^[a-Z]”  /etc/zabbix/zabbix_agentd.conf  

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 StartAgents=0 #不啟動zabbix agent客戶端端口 ServerActive=192.168.0.26 #指定zabbix server服務器地址 Hostname=hfnginx.example.com #本機主機名,主動模式下每個agent不能相同 HostMetadataItem=system.uname #zabbix agent特征,通過item獲取 Include=/etc/zabbix/zabbix_agentd.d/*.conf

2.2:在zabbix server創建規則:

#所謂規則就是zabbix server自定義的一種機制,當遇到什么樣的數據能匹配什么樣的機制就匹配什么樣的動作。

1.4.1#configration-actions-Auto registration-create action
 

2.3:配置條件:

#所謂條件,就是滿足了zabbix server的某種自定義的機制

 

2.4:配置操作:

#所謂操作,就是滿足了zabbix server自定義的機制下一步的動作

2.5:啟動或重啟zabbix agent服務:

/etc/init.d/zabbix-agent restart #剛配置完成zabbix agent不重啟是因為zabbix server還沒有配置完成。

2.6:隔幾分鍾在zabbix server上檢查是否將主機hfnginx.example.com 自動添加並可以采集數據:

2.6.1:查看主機是否添加:

 

2.6.2:查看是否采集數據並出圖:

 

 

#關於zabbix agent主動注冊模式的排錯:

1.找不到錯誤日志就開debug 2.等幾分鍾,也許是網絡延遲 3.確認填寫正確的HostMetadataItem=system.uname,即要確認自己寫的agent特征是符合zabbix server要求的 4.ServerActive=x.x.x.x IP地址配置Zabbib server正確 5.管理zabbix agent的模板是主動模式的 6.網絡是相同的 7.不排除其他未考慮到的臨時問題

3.zabbix server自動發現zabbix agent機制:

#zabbix server掃描指定的地址范圍,將符合掃描此地址范圍內的所有IP地址

#可以創建action,當主機down的時候就講監控關閉等操作

3.1:zabbix agent配置:

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 DebugLevel=4 Server=192.168.0.26 #zabbix server的地址 Hostname=Zabbix server #Hostname與zabbix server保持一致 HostMetadataItem=system.uname #zabbix agent特征,通過item獲取 Include=/etc/zabbix/zabbix_agentd.d/*.conf

3.2:添加discovery:

#configration-discovery:

 

3.3:創建動作:

#configration-actions-create action:

3.3.1:創建action:
 

3.2.2:制定條件:

 

3.3.3:指定操作:

 

3.4:重啟zabbix agent客戶端,等幾分鍾查看是否添加agent:

3.4.1:添加的zabbix agent:

 

3.4.2:查看是否有圖形:

 

#主機名是ip地址,不便於區分運行的業務

3.5:zabbix server自動發現zabbix agent的日志:

 

#關於排錯:

1.zabbix agent的模式配置正確,即使用Server=zabbix server,確認啟動10050端口 2.zabbix agentHostname=Zabbix serve 3.zabbix agent特征配置正確 4.zabbix server設置的發現IP地址范圍正確 5.zabbix server設置的方法正確 6.zabbix server設置的操作正確

4.配置zabbix server通過zabbix proxy自動掃描發現zabbix agent:

4.1:zabbix proxy設置:

ProxyMode=1 Server=zabbixhf.chinacloudapp.cn Hostname=South-proxy1 LogFile=/var/log/zabbix/zabbix_proxy.log LogFileSize=0 DebugLevel=4 PidFile=/var/run/zabbix/zabbix_proxy.pid DBName=zabbix_proxy2 DBUser=proxy DBPassword=proxy ProxyLocalBuffer=0 ProxyOfflineBuffer=1 ConfigFrequency=5 DataSenderFrequency=60 StartPollers=5 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=30 ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000

 4.2:zabbix agent配置:

4.2.1:方式1:

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=192.168.0.5 Hostname=Zabbix server HostMetadataItem=system.uname Include=/etc/zabbix/zabbix_agentd.d/

4.2.2:方式2:

#為測試是否受Hostname的影響,因此寫了兩個不同方式的Hostname,測試是否有影響!

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=192.168.0.5 Hostname=Zabbix server HostMetadataItem=system.uname Include=/etc/zabbix/zabbix_agentd.d/ 

4.3:創建通過proxy 自動被動發現zabbix agent的discovery策略:

4.3.1:創建zabbix proxy:

 

4.3.1:創建discovery:

#configration-discovery-create discovery rule: 

 

#這里的掃描網段不要寫的太大,否則zabbix server會一遍遍的掃描:

 

#zabbix agent端發送特征碼的debug日志,server端請求特征碼后zabbix agent進行回復:

 

4.3.2:創建規則:

 

4.3.3:創建條件:

4.3.4:創建操作:
 

4.4:等幾分鍾查看是否添加zabbix agent並出圖:

4.4.1:添加的主機:

#這個過程很長,大約等待了十幾分鍾才添加成功,下面出圖的時間更長,大約有一個多小時時間才出圖,期間要涉及到zabbix proxy與zabbix server之間的數據交互時間,因此如果配置正確而日志有沒有報錯的情況下,那就一個字,“等”!。

4.4.2:查看圖形:

 

5.配置zabbix agent通過zabbix proxy主動注冊到zabbix server:

5.1:配置zabbix server的proxy功能,zabbix server只添加一個proxy即可,因為是agent主動聯系server的所以就不需要discovery了。

#administration-proxies-create proxy:

 

5.2:配置action:

#configration-actions:

 

5.2.1:定義條件:
 

5.2.2:定義操作:

 

5.3:配置zabbix server:

 

[root@nginx zabbix-proxy-mysql-3.0.3]# grep "^[a-Z]" /etc/zabbix/zabbix_proxy.conf  ProxyMode=0 #主動模式 Server=zabbixhf.chinacloudapp.cn Hostname=South-proxy1 LogFile=/var/log/zabbix/zabbix_proxy.log LogFileSize=0 DebugLevel=4 PidFile=/var/run/zabbix/zabbix_proxy.pid DBName=zabbix_proxy4 #數據庫換了四次了,因為做了不同模式的代理,每換一次模式就換一次數據庫,避免出錯 DBUser=proxy DBPassword=proxy ProxyLocalBuffer=0 ProxyOfflineBuffer=1 ConfigFrequency=5 DataSenderFrequency=60 StartPollers=5 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=30 ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000

 5.4:zabbix agent配置:

5.4.1:zabbix agent1:

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 ServerActive=192.168.0.5 #主動模式的zabbix proxy StartAgents=0 Hostname=proxy-tomcat-active HostMetadataItem=system.uname Include=/etc/zabbix/zabbix_agentd.d

5.4.2:zabbix agent2:

PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 DebugLevel=4 StartAgents=0 ServerActive=192.168.0.5 Hostname=South-proxy-logstash HostMetadataItem=system.uname Include=/etc/zabbix/zabbix_agentd.d/

 5.5:過一段時間查看主機是否自動注冊並出圖:

5.5.1:主機添加成功:

 
5.5.2:查看圖形:

#至此,關於zabbix server的大部分功能均已完成!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM