zabbix基礎詳解及安裝配置

1、什麼是zabbixphp

Zabbix是一個基於WEB界面的分佈式開源監控系統,主要組成部分:Zabbix_server、Zabbix_agent、Zabbix_proxy。;Zabbix能夠監控網絡和服務的監控情況。利用靈活的報警機制,容許用戶對事件發送基於Email或短信等方式進行報警;同時能夠利用存儲數據提供傑出的報告及圖形化方式。node

zabbix架構圖(馬哥教育):python

wKioL1Nzck7QzlMaAAKx3lFeURE086.jpg

2、zabbix的特性mysql

數據採集:
web

  • 支持SNMP(trapping及polling)、IPMI、JMX監控;sql

  • 自定義檢測和間隔收集收據;數據庫

  • 可用性及性能檢測;vim

  • server/proxy/agents性能;瀏覽器

數據存儲:服務器

  • 數據存儲在數據庫中;

  • 歷史數據可配置;

  • 內置數據清理機制;

數據展現:

  • 容許自定義建立多監控項視圖;

  • 自定義的面板(screen)和報告;

  • 網絡拓撲(network maps);

報警:

  • 能夠自定義告警升級(escalation)、接收者及告警方式;

  • 告警信息能夠配置並容許使用宏(macro)變量;

  • 經過遠程命令實行自動化動做(action);

網絡自動發現:

  • 自動發現網絡設備;

  • agent自動註冊;

  • 自動發現文件系統、網卡設備、SNMP OID等;

3、安裝zabbix

zabbix須要數據庫來存儲數據;因此須要安裝mysql;建議數據庫與zabbix服務器安裝在不一樣的機器上

下面以yum安裝演示:


IP 主機 描述
192.168.0.111 node1.soul.com zabbix_server
192.168.0.112 node2.soul.com mysql
192.168.0.113 node3.soul.com zabbix_agent
#在node1上安裝zabbix_server
[root@node1 ~]# yum -y install zabbix22 zabbix22-agent zabbix22-server zabbix22-server-mysql zabbix22-web zabbix22-web-mysql zabbix22-dbfiles-mysql
[root@node1 ~]# rpm -ql zabbix22-server
/etc/logrotate.d/zabbix-server
/etc/rc.d/init.d/zabbix-server
/etc/zabbix/alertscripts
/etc/zabbix/externalscripts
/etc/zabbix/zabbix_server.conf
#能夠看到配置文件等安裝信息
[root@node1 ~]# rpm -ql zabbix22-dbfiles-mysql
/usr/share/doc/zabbix22-dbfiles-mysql-2.2.1
/usr/share/doc/zabbix22-dbfiles-mysql-2.2.1/COPYING
/usr/share/zabbix-mysql
/usr/share/zabbix-mysql/data.sql
/usr/share/zabbix-mysql/p_w_picpaths.sql
/usr/share/zabbix-mysql/schema.sql
#能夠查看到zabbix的數據庫文件
[root@node1 ~]# scp /usr/share/zabbix-mysql/{data.sql,p_w_picpaths.sql,schema.sql} node2:/tmp
root@node2's password:
data.sql                                                   100%  948KB 947.6KB/s   00:00
p_w_picpaths.sql                                                 100% 1932KB   1.9MB/s   00:00
schema.sql                                                 100%  104KB 104.1KB/s   00:00
[root@node1 ~]# 複製到node2主機上

安裝mysql於node2主機:

[root@node2 ~]# yum -y install mysql mysql-server
[root@node2 ~]# service mysqld start
Starting mysqld:                                           [  OK  ]
[root@node2 ~]#
mysql> create database zabbix;
Query OK, 1 row affected (0.00 sec)
mysql> use zabbix;
Database changed
mysql> source /tmp/schema.sql
mysql> source /tmp/p_w_picpaths.sql
mysql> source /tmp/data.sql
#建立數據庫;導入數據
mysql> grant all on zabbix.* to 'zbx'@'192.168.0.111' identified by 'zbxpass';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
#受權zabbix_server主機

配置node1上的zabbix_server啓動:

[root@node1 ~]# vim /etc/zabbix_server.conf
#更改對應的數據庫信息便可
DBHost=192.168.0.112
DBName=zabbix
DBUser=zbx
DBPassword=zbxpass
[root@node1 ~]# service zabbix-server start
Starting Zabbix server:                                    [  OK  ]
[root@node1 ~]# ss -tunl | grep 10051
tcp    LISTEN     0      128                   :::10051                :::* 
tcp    LISTEN     0      128                    *:10051                 *:*
#啓動成功
#啓動httpd
[root@node1 ~]# service httpd start
Starting httpd:                                            [  OK  ]

4、使用web管理界面配置zabbix

在瀏覽器中輸入:http://(你的zabbix_server地址)/zabbix

wKiom1Ny1eqBsmV3AAEsQ632HZY193.jpg

wKioL1Ny1gfygOyEAAHCsJ_Gl8s902.jpg

上述提示PHP問題;對應的修改/etc/php.ini重啓httpd;完成後retry測試所有OK便可

wKiom1Ny16Dw9X3XAAJp93PRQRI340.jpg

完成安裝後的界面。

Monitoring監控菜單:

Dashboard(儀表盤) | Overview(總覽) | WEB | Latest data(最新數據) | Triggers(觸發器) | Events(事件) | Graphs(圖形) | Screen(多屏) | Maps(拓撲圖) | IT Services。

Inventory主機資產清單使用的很少。

Reports報告菜單:

wKiom1Ny2gGxRJcKAAFUU2FUEZU228.jpg

Status of Zabbix(Zabbix的狀態信息) | Avaliablity report(可用性報告) | Triggers top 100(前100個觸發數據) | Bar reports(柱形圖)。

Configuration配置菜單:

wKiom1Ny2r_iw5xYAAHnppIxIio828.jpg

Host group(主機組) | Templates(模板) | Hosts(主機) | Maintenance(維護) | Actions(動做) | Screens(多屏) | Slide shows(幻燈片) | Maps(拓撲圖) | Discovery(自動發現) | IT services。

Administration管理菜單:

wKioL1Ny3JqyFgn6AAFpfkzW-Lk888.jpg

General(通用配置) | DM(zabbix_proxy) | Authentication(用戶認證) | Users(用戶管理) | Media types(媒介類型) | Scripts(腳本) | Audit(審計) | Queue(隊列) | Notifications(通知) | Installation(安裝)

具體參數:http://www.zabbix.com/documentation.php 選擇對應版本。

5、配置簡單的監控實例

在node3安裝zabbix_agent

[root@node3 ~]# yum -y install zabbix22 zabbix22-agent
[root@node3 ~]# vim /etc/zabbix_agentd.conf
#更改Server便可
Server=192.168.0.111
[root@node3 ~]# service zabbix-agent start
Starting Zabbix agent:                                     [  OK  ]
[root@node3 ~]# ss -tunl | grep 10050
tcp    LISTEN     0      128                   :::10050                :::* 
tcp    LISTEN     0      128                    *:10050                 *:*
#啓動成功

一、添加主機:create host

wKiom1Ny5kaC6ITEAAIGYCc47zM644.jpg

二、添加Items:create item

wKiom1Ny6WywsMK2AAGjJ4dA7dg667.jpg

相似再添加一個CPU的監控。

三、建立Graphs:create graph

wKioL1Ny6e6zEK25AAElTo3oD-w262.jpg


四、建立screen:create screen

wKiom1N0n8qA6LNbAAHp94oG7lo771.jpg

添加完成後能夠在monitor中查看具體信息:

能夠在latest data中查看:

wKioL1Ny7UaybZ7mAAE9La01UJk920.jpg

graph中查看:group和host中能夠選擇對應的主機等;graph中能夠選擇圖形信息

wKiom1N0oaDA0gDzAAKM9dbP8aY919.jpg

以上簡單的作到了CPU負載和網卡流量監控。

下面添加一個能夠自動報警發送郵件的機制:

五、添加一個media type

wKioL1N0ofrCw8VyAAFwbJUqY5c768.jpg

六、添加默認的帳戶zabbix的通知給本機的root:

wKioL1NzAPLzzbCcAAHNZyXhcxk741.jpg

七、添加一個trigger:

wKioL1N0o5mB72txAAGcVQu5Nxo448.jpg

八、添加一個action:

wKiom1N0ommx5bBTAAHdkAjV6qM383.jpg

其中macro的說明:https://www.zabbix.com/documentation/2.2/manual/appendix/macros/supported_by_location

Recovery message這項選擇後在恢復時也會對應的發郵件通知;其他還須要設定條件和具體的操做:

wKioL1N0olSDIP3TAAEmX22QpRk587.jpg

wKioL1N0onfzpA-BAAHW-uq7xGo889.jpg

如今能夠查看監控:

wKioL1N0ozDDMDghAAFZeN7FCf4000.jpg

很明顯有了閾值線。左下方顯示閾值的大小。

定義完成後能夠進行測試了。

wKiom1N0pFLig9mlAAIC101UoA8829.jpg

能夠在monitor的dashboard面板查看到相關信息:

wKioL1N0pJ2S2KBkAAHs1urZs80812.jpg

此時能夠看到事件已觸發;能夠查看下是否有郵件通知。

wKioL1N0pMayiHObAAHt7KLOu9A819.jpg

能夠查看到郵件通知信息;且內容與定義的相符。一條報警通知和一條恢復通知。到此;一些基本內容已配置完成和實現。





若有錯誤;懇請糾正。

相關文章
相關標籤/搜索