目錄:zabbix其他篇
03: zabbix API接口 對 主機、主機組、模板、應用集、監控項、觸發器等增刪改查
目錄:
- 1.1 zabbix監控基本介紹
- 1.2 添加主機組
- 1.3 添加模板
- 1.4 創建主機
- 1.5 創建應用集
- 1.6 創建監控項
- 1.7 創建Triggers(觸發器)
- 1.8 添加Media(添加發送郵件賬戶信息)
- 1.9 添加接收報警郵件人員信息(這里以內置admin用於為例)
- 1.10 配置action
- 1.11 查看報警信息
1.1 zabbix監控基本介紹 返回頂部
參考博客:https://www.cnblogs.com/xuliangwei/p/6658838.html
1、Zabbix的監控流程
1. 數據采集:Zabbix通過SNMP、Agent、ICMP、SSH、IPMI等進行數據采集
2. 數據存儲:Zabbix存儲在MySQL上,也可以存儲在其他數據庫
3. 數據展示:web界面展示、(移動APP、java_php開發一個web界面也可以)
4. 數據報警:郵件報警、微信報警、短信報警、報警升級機制
2、Zabbix的監控配置流程
1. 1)Host groups(主機組)→2)Hosts(主機)→3)template(模板)→
2. 4)Applications(監控項組)→5)Items(監控項)→
3. 6)graph(圖形) →7)screen (圖形分組)→
4. 8)Triggers(觸發器)→9)Event(事件)→10)Actions(處理動作)→
5. 11)Media types(告警升級|1.執行遠程命令2.發送告警郵件)→
6. 12)User groups(用戶組)→13)Users(用戶)→14)Medias(告警郵件)
1.2 添加主機組 返回頂部
1、主機組說明(對同一屬性的主機或模板,盡量歸納到分組)
1. 以地理位置進行划分。
2. 以業務為單位划分組。
3. 以機器用途划分。
4. 以系統版本划分。
5. 以應用程序分組。
2、配置→主機組→創建主機組(創建主機組 Test group)
1.3 添加模板 返回頂部
1、模板說明
1. 監控項、觸發器、圖形、Web、Discovery等都是存在於主機之上的
2. 由於多個主機都會用相同的監控配置,因此,可以對這部分同類的數據進行歸納抽象,即將這些數據做成模板。
3. 當我們需要對其他監控數據進行配置的時候,只需要對相對應的主句添加對應的模板即可。
2、配置→模板→創建模板
3、填寫模板信息
4. 模板具有繼承的功能(將一個模板在另外一個模板中使用)
說明:新建的模板如果繼承了 Template OS linux 模板后,就會擁有其所有功能
5、新建宏
1. 宏主要是對變量定義,設置宏的作用是方便后面再Items、Trigger中引用
2. 在模板中配置一個宏,在不同的主機對該宏設置不同的變量值,從而達到模板通用的目的
1.4 創建主機 返回頂部
1、配置→主機組→創建主機
2、配置主機使用的監控模板
1.5 創建應用集 返回頂部
1、應用集說明
1. 應用集一般配合監控項使用,它相當於多個同類型的監控項的分類目錄,方便查找而已
2. 應用集一般關聯指定模板(只有應用此模板的主機才有此應用集),也可以將應用集關聯指定主機(某個獨有應用集)
2、為指定模板創建應用集(法1)
配置→模板→應用集(找到要創建應用集的模板)→創建應用集
3、為指定主機創建應用集(法2)
配置→主機→應用集(找到要創建應用集的主機)→創建應用集
注:創建監控項時可以對這里創建的應用集進行選擇
1.6 創建監控項 返回頂部
1、監控項說明
1. 監控項(iterm)就是你要監控的指標,比如cpu利用率,cpu負載,內存使用率等等。
2. 監控項一般關聯指定模板(只有應用此模板的主機才有此監控項),也可以將監控項關聯指定主機(某個獨有監控項)
3. 監控項是Zabbix中獲得數據的基礎。沒有監控項,就沒有數據——因為一個主機中只有監控項定義了單一的指標或者需要獲得的數據。
2、在 zabbix-agent端/etc/zabbix/zabbix_agentd.d 下創建 base.conf文件 添加 key
1)在zabbix-agent中創建監控key
[root@linux-node1 /]# cd /etc/zabbix/zabbix_agentd.d [root@linux-node1 /]# vim base.conf # 添加下面這條,統計當前登錄用戶數量 UserParameter=log_user, /usr/bin/w|awk 'NR==1{print $6}' [root@linux-node1 /]# systemctl restart zabbix-agent # 重啟agent
2)在server上get上面配置key的值(測試是否可以獲取結果)
yum -y install zabbix-get # 在server安裝zabbix-get工具(如果按照失敗使用清華源安裝) rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-get-3.4.15-1.el7.x86_64.rpm zabbix_get -s 192.168.56.11 -p10050 -k log_user # 在server端運行命令測試是否可以獲取到
3、為指定模板配置監控項
配置→模板→監控項(需要添加監控項的模板)→創建監控項
1.7 創建Triggers(觸發器) 返回頂部
1、觸發器說明
1. 監控項只是用於收集數據。如果需要自動評估收到的數據,我們則需要定義觸發器。
2. 觸發器包含了一個表達式,這個表達式定義了數據的可接受的閾值級別
3.如果收到的數據超過了這個定義好的級別,觸發器將被“觸發”,讓我們知道有問題發生。
4. 如果數據再次恢復到合理的范圍,觸發器將會到“正常(Ok)”狀態。
2、添加觸發器
配置→模板→觸發器(為剛剛模板中的監控添加觸發器)→創建觸發器
1.8 添加Media(添加發送郵件賬戶信息) 返回頂部
1、創建報警媒介
管理→報警媒介類型→創建媒體類型
2、添加發送郵件的默認用戶
1.9 添加接收報警郵件人員信息(這里以內置admin用於為例) 返回頂部
1、添加接收郵件人員信息
管理→用戶→找到對應人員
2、填寫接收人信息
1)第一步
2)第二步
1.10 配置action 返回頂部
1、創建action(發送報警信息)
管理→動作→創建動作
1)創建 action:動作
2)創建 action:操作(觸發報警時操作)
1、觸發器事件成立后有以下兩種動作。
1. 發送消息(send message)
2. 執行遠程命令(Remote command)
2、當出現了Trigger狀態改變時,應嘗試自愈,如果無法修復,那么報警升級發送消息通知相關人員
1. 第一梯度:1-2步,遠程執行命令重啟Apache,間隔時間為60s,發送執行2次直到故障恢復。
2. 第二梯度:3-4步,發送給Admin用戶,間隔時間為60s,發送兩次,直到故障恢復。
3. 首先要支持遠程執行命令,必須開啟遠程執行命令,以及sudo權限
[root@linux-node2 ~]# vim /etc/zabbix/zabbix_agentd.conf EnableRemoteCommands=1 [root@linux-node2 zabbix_agentd.d]# systemctl restart zabbix-agent [root@linux-node2 ~]# visudo zabbix ALL=NOPASSWD: /usr/bin/systemctl restart httpd
4. 第一梯度:1-2步,遠程執行命令重啟Apache
5. 第二梯度:3-4步,發送給Admin用戶,間隔時間為60s,發送兩次,直到故障恢復。
3)創建 action:恢復操作(同上)
1.11 查看報警信息 返回頂部
1、查看報警信息
2、郵件中收到報警信息如下圖