Zabbix SNMP監控介紹
Zabbix提供了強大的SNMP監控功能,可以用于監控網絡設備、服務器和其他支持SNMP協議的設備。SNMP(Simple Network Management Protocol,簡單網絡管理協議)是一種廣泛用于網絡管理的協議。它用于監控網絡設備(如路由器、交換機、服務器等)的狀態和性能。
Zabbix 提供了對 SNMPv1、SNMPv2c 和 SNMPv3 的支持。SNMPv3 增強了安全性,提供了身份驗證和加密功能。
在Zabbix中,使用SNMP監控可以實現以下功能:
- 設備發現和自動添加: 可以自動發現網絡中的設備,并添加到監控系統中。
- 性能監控: 可以監控設備的各種性能指標,如CPU利用率、內存使用情況、網絡流量等。
- 事件和告警: 可以設置閾值和觸發條件,當設備或指標達到預設值時,觸發告警通知管理員。
- 歷史數據存儲與分析: 可以持久存儲歷史數據,并提供數據分析功能,如生成趨勢圖和報告。
要在Zabbix中配置SNMP監控,通常需要以下步驟:
- 定義SNMP設備: 在Zabbix中添加需要監控的SNMP設備,指定設備的IP地址、SNMP版本、團體字符串等信息。
- 配置監控項: 設置需要監控的指標,如CPU利用率、內存使用率等。
- 創建觸發器和告警: 定義觸發條件和告警動作,確保及時響應異常情況。
- 監控和管理: 監控設備狀態、性能指標,管理監控系統中的設備和配置。
通過合理配置和管理,Zabbix的SNMP監控能夠幫助管理員及時發現和解決網絡設備的問題,保障網絡的穩定性和可靠性。
Zabbix SNMP監控配置
zabbix環境信息:
節點 | IP | OS | Role |
---|---|---|---|
zabbix-server | 192.168.72.31 | Ubuntu 22.04 | zabbix-server |
web-server | 192.168.72.33 | Ubuntu 22.04 | SNMP |
zabbix 版本: v7.0.0
前置要求:已在web-server上安裝snmp。
安裝SNMP
在web server上安裝SNMP。
apt install -y snmp snmpd
修改SNMP配置文件,配置監聽地址,以及snmp用戶。
root@web-server:~# vim /etc/snmp/snmpd.conf
agentAddress udp:127.0.0.1:161,udp:192.168.72.33:161
rouser zabbixsnmpuser priv
停止SNMP服務
systemctl stop snmpd.service
使用 net-snmp-create-v3-user
工具創建 SNMPv3 用戶:
net-snmp-create-v3-user -ro -A ZabbixAuthPass@123 -X ZabbixPrivPass@123 -a SHA -x AES zabbixsnmpuser
參數說明:
-
-ro 表示只讀用戶。
-
-A 指定認證密碼。
-
-X 指定加密密碼。
-
-a 指定認證協議(SHA 或 MD5)。
-
-x 指定加密協議(AES 或 DES)。
-
zabbixsnmpuser 是要創建的 SNMP 用戶名。
net-snmp-create-v3-user
工具不直接支持 AES-256
和 SHA-256
。需要手動編輯配置文件來實現此功能。以上命令生成一個基礎配置,之后需要手動修改配置文件。
編輯 /var/lib/snmp/snmpd.conf
,打開生成的配置文件,修改加密算法為SHA-256
和AES-256
。
root@web-server:~# nano /var/lib/snmp/snmpd.conf
createUser zabbixsnmpuser SHA-256 ZabbixAuthPass@123 AES-256 ZabbixPrivPass@123
編輯完成后,保存并關閉文件,然后重啟 SNMP 服務:
systemctl restart snmpd
在zabbix-server節點安裝snmpwalk工具
apt install -y snmp
在zabbix-server節點使用 snmpwalk
工具來驗證配置是否正確:
snmpwalk -v3 -u zabbixsnmpuser -l authPriv -a SHA-256 -A ZabbixAuthPass@123 -x AES-256 \
-X ZabbixPrivPass@123 192.168.72.33
輸出如下內容,說明配置正常
so.3.6.1.2.1.1.1.0 = STRING: "Linux web-server 5.15.0-113-generic #123-Ubuntu SMP Mon Jun 10 08:16:17 UTC 2024 x86_64"
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks: (350977) 0:58:29.77
iso.3.6.1.2.1.1.4.0 = STRING: "Me <me@example.org>"
iso.3.6.1.2.1.1.5.0 = STRING: "web-server"
iso.3.6.1.2.1.1.6.0 = STRING: "Sitting on the Dock of the Bay"
iso.3.6.1.2.1.1.7.0 = INTEGER: 72
iso.3.6.1.2.1.1.8.0 = Timeticks: (0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.2.1 = OID: iso.3.6.1.6.3.10.3.1.1
iso.3.6.1.2.1.1.9.1.2.2 = OID: iso.3.6.1.6.3.11.3.1.1
iso.3.6.1.2.1.1.9.1.2.3 = OID: iso.3.6.1.6.3.15.2.1.1
iso.3.6.1.2.1.1.9.1.2.4 = OID: iso.3.6.1.6.3.1
......
配置zabbix-web
登錄 Zabbix Web 界面,導航到數據采集->主機->創建主機
在 Host
選項卡中填寫以下基本信息:
- Hostname: 填寫主機名,例如
192.168.72.33_SNMP
- Visible name: (可選)填寫顯示名
- 模板:
Linux by SNMP
- Groups: 選擇或創建一個組,例如
Linux servers
- Interfaces: 點擊
Add
,選擇SNMP
類型,填寫主機的 IP 地址和端口(默認是 161)
在 Interfaces
部分,點擊 Add
,選擇 SNMP
類型并填寫以下信息:
- Type: SNMP
- IP Address: 輸入設備的 IP 地址,例如
192.168.72.33
- Port: 默認是
161
- SNMP version: 選擇
SNMPv3
在 SNMP
選項卡中,選擇 SNMPv3
,并填寫以下字段:
- Security name: 填寫在 Ubuntu 上創建的 SNMPv3 用戶名,例如
zabbixsnmpuser
- Security level: 選擇
authPriv
- Authentication protocol: 選擇
SHA256
- Authentication passphrase: 填寫認證密碼,例如
ZabbixAuthPass@123
- Privacy protocol: 選擇
AES256
- Privacy passphrase: 填寫您的加密密碼,例如
ZabbixPrivPass@123
示例配置如下:
導航到監測,查看通過SNMP收集的最新數據