iT邦幫忙

2018 iT 邦幫忙鐵人賽
0
自我挑戰組

成長型維運平台 - 單人新手到多人團隊都適用的工具系列 第 24

1-15.監控工具之一:Zabbix SnmpTrap

  • 分享至 

  • xImage
  •  

收SnmpTrap這功能比較麻煩,方式是透過SNMPTT收集產生log,zabbix agent再去監視log發至server

節錄官網:https://www.zabbix.com/documentation/3.4/zh/manual/config/items/itemtypes/snmptrap
接收trap的工作流程:

1.snmptrapd 收到trap
2.snmptrapd将trap传递给SNMPTT或调用Perl接收器
3.SNMPTT或Perl trap接收器解析,格式化并将trap写入文件
4.Zabbix SNMP trap读取并解析trap文件
5.对于每个trap,Zabbix发现主机接口与接收的trap地址匹配的所有“SNMP trap”监控项。请注意,在匹配期间只使 用主机接口中选定的“IP”或“DNS”。
6.对于每个找到的监控项,将trap与“snmptrap[regexp]”中的regexp进行比较。 trap设置为all匹配项的值。如果没有找到匹配的监控项,并且有一个“snmptrap.fallback”监控项,则将trap设置为该值。
7.如果trap未设置为任何监控项的值,Zabbix默认记录不匹配的trap。(这由管理 - >常规 - >其它中的“记录不匹配的SNMP trap(Log unmatched SNMP traps)”配置。)

1.相依安裝

yum install net-snmp*

2.設定zabbix_server.conf

vi /etc/zabbix/zabbix_server.conf
StartSNMPTrapper=1
SNMPTrapperFile=/tmp/my_zabbix_traps.tmp
service zabbix-server restart

兩種方式收snmptrap訊息(以下採用perl接收方式)

使用zabbix_trap_receiver.pl
3.設定snmptrapd

vi /etc/sysconfig/snmptrapd
OPTIONS="-On -Lsd -p /var/run/snmptrapd.pid"

4.設定snmptrapd.conf

vi /etc/snmp/snmptrapd.conf
authCommunity execute public
perl do "/usr/bin/zabbix_trap_receiver.pl"

去官網下載Zabbix Sources,複製 zabbix_trap_receiver.pl到bin

yum install wget
wget https://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.4.5/zabbix-3.4.5.tar.gz
tar -zxvf zabbix-3.4.5.tar.gz
cp zabbix-3.4.5/misc/snmptrap/zabbix_trap_receiver.pl /usr/bin/
chmod +x /usr/bin/zabbix_trap_receiver.pl

設定與zabbix-server的SNMPTrapperFile位置相同

vi /usr/bin/zabbix_trap_receiver.pl
$SNMPTrapperFile = '/tmp/my_zabbix_traps.tmp';

5.啟動snmptrapd

systemctl restart snmptrapd
systemctl enable snmptrapd

測試 (依照以下步驟測試方便查找問題)

snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.3' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.3 s "teststring000"

到vi /tmp/my_zabbix_traps.tmp看有無資料進入 (這步沒資料查snmptrap問題)

到vi /var/log/zabbix/zabbix_server.log查有無snmptrap Log (這步沒資料查zabbix_server設定)

Zabbix 建立主機

先建立snmptrap.fallback測試

snmptrap -v 1 -c public 172.16.23.68 ‘.1.3.6.1.6.3.1.1.5.3’ ‘0.0.0.0’ 6 33 ’55’ .1.3.6.1.6.3.1.1.5.3 s “teststring000″

查看zabbix有無收到 (這步沒資料查interface設定,IP也是依照字串比對輸入127.0.0.1不會有資料,如果/var/log/zabbix/zabbix_server.log有資料,那一定是zabbix host 設定錯誤)


範例
收F5上下線 Trigger
items設定收POOL member底下203.69.1.1這台狀態

當關鍵字沒有monitor status up發送告警,出現monitor status up恢復正常


上一篇
1-14.監控工具之一:Zabbix 自定義參數監控apache server-status
下一篇
5.1-數據分析-安裝anaconda
系列文
成長型維運平台 - 單人新手到多人團隊都適用的工具27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
froce
iT邦大師 1 級 ‧ 2018-01-06 14:49:23

想請問zabbix應該可以做到即時監控client端的網路流速吧?
如果確定可以的話公司也想來做這個。

client端會是win7或win10

Eugene iT邦研究生 5 級 ‧ 2018-01-08 14:08:52 檢舉

以下方式皆可
1.client端裝Agent
2.client開SNMP功能
3.Client端上層Switch開SNMP,zabbix去收switch snmp (不用裝Agent)

froce iT邦大師 1 級 ‧ 2018-01-08 14:41:54 檢舉

好的,確定可以的話就ok了,這系列幫助很大,謝謝。

我要留言

立即登入留言