zabbix是一個分布式監視,管理系統,基於server-clinet架構,可用於監視各種網絡服務,服務器和網絡機器等狀態.
server端基於C語言,web管理端Frontend則是基於PHPA制作的,在clinet端如UNIX,windows中安裝zabbix agent之后,可監控CPU,負載,網絡使用情況,硬盤容量等各種狀態.
zabbix是一個基於WEB界面的提供分布式系統監視以及網絡監視功能的企業級開源解決方案,Zabbix能夠監視各種網絡參數,保證服務器系統安全運行;並提供靈活的通知機制讓系統管理員快速的定位/解決各種問題;
zabbix由兩部分組成,zabbix-server與可選組件zabbix agent。zabbix server 可以通過SNMP,zabbix agent,ping端口監視監控遠程主機,數據收集等功能;
Zabbix server可以單獨監視遠程服務器的服務狀態;同事也可以與zabbix agent配合,可以輪詢zabbix agent主動接收監視數據(trapping方式),同時還可以被動接收zabbix agentd 發送數據(trapping方式).
Zabbix主要特點:
安裝與配置簡單,學習成本低;支持多語言;免費開源;自動發現服務器與網絡設備;
分布式監視以及WEB集中管理功能;可以無agent監視;用戶安全認證和柔軟的授權方式;
通過WEB界面設置或查看監視結果;email等通知功能;
Zabbix主要功能:
CPU負載;內存的使用;磁盤的使用;網絡狀況;端口的監視;日志的監視;
Zabbix主要有5個主菜單欄:
Moniting:主要是對監控對象的一些相關展示,比如說web應用的展示;
Inventory:資產管理,類似於公司里的資產管理,比如一個硬件設備,這里可能會標識設備的名稱,操作系統,MAC地址,資產編號等;
Reports:這里主要展示了zabbix服務的狀態,比如主機數,報警屬,還有就是展示了一寫設備的可用性報表等相關的信息;
Congfiguration:這里主要用來對系統的配置,比如創建主機,創建模板,創建報警,創建流量圖片等相關的基本配置主要通過這里來實現的,
Adminstration:這里也是用了對系統進行配置,可configuration相比,這里的配置主要實現對zabbix本身的一些相關的配置工作,比如登錄zabbix的用戶的創建等工作主要通過這里來配置
Zabbix監控功能:
監控服務器的運行狀態:CPU,內存,網卡。硬盤容量,磁盤I/O,負載locad;
監控應用的port,連接數,web網站的關鍵詞
監控網絡設備,防火牆,交換機,路由器,帶寬流量,以及運行是否正常
服務底層硬件:CPU溫度,風扇轉速以及硬盤損壞
開源主流的監控軟件:
- zabbix(C/S):自動發現,自動監控,分布式
- cacti,Nagios,Ganglia,Mrtg(分布式不支持,自動發現,自動監控)
- 支持自動發現服務器和網絡設備;
- 支持底層自動發現,
- 分布式的監控體系和集中式的web管理;
- 支持主動監控和被動監控模式
- 服務器端支持多中操作系統:linux,solaris,HP-UX,ALX,Freebsd,openbsd,MAC等
- Agent客戶端支持多種操作系統:linux,solaris,HP-UX,ALX,FreeBSD,windows等
- 基於SNMP,IPMI接口方式也可以監控Agent;
- 安全的用戶認證及權限配置
- 基於WEB的管理方法,支持自由的自定義時間和郵件發送;
- 高水平的業務管理方法,支持自由的自定義事件和郵件發送;
- 高水平的業務視圖監控資源,支持日志審計,資產管理等功能 ;
- 支持高水平APL二次開發,腳本監控,自KEY定義,自動化運維整合的調用
環境部署:
Centos6.5(zabbix-server)ip:192.168.20.209
centos6.5(zabbix-proxy):192.168.20.20.207
Centos6.5(zabbix-agent被控端)ip:192.168.20.150
zabbix-server端的部署於配置:
[root@zabbix-server ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf

######################################################################################################################
zabbix-proxy分布式的配置
Zabbix是一個分布式監控系統,它可以以一個中心點、多個分節點的模式運行,使用Proxy能大大的降低Zabbix Server的壓力,Zabbix Proxy可以運行在獨立的服務器上,
Zabbix agent 在windows上安裝部署

首先,我們需要在zabbix-server端創建zabbix-proxy端的新數據庫
mysql> create database zabbix_proxy charset=utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on zabbix_proxy.* to zabbix@‘%’ identified by '123456';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
[root@zabbix-server ~]# cd zabbix-3.2.7/database/mysql/
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix_proxy <schema.sql
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix_proxy <images.sql
接下來我們在zabbix_proxy部署分布式
[root@zabix-proxy ~]# yum install -y mysql mysql-devel
[root@zabix-proxy ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBIc
[root@zabix-proxy ~]# useradd -M -s /sbin/nologin zabbix
[root@zabix-proxy zabbix-3.2.7]# make install
root@zabix-proxy ~]# tar zxvf zabbix-3.2.7.tar.gz
[root@zabix-proxy ~]# cd zabbix-3.2.7
[root@zabix-proxy zabbix-3.2.7]# ./configure --prefix=/usr/local/zabbix/ --enable-proxy --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
[root@zabix-proxy zabbix-3.2.7]# make
[root@zabix-proxy zabbix-3.2.7]# make install
root@zabix-proxy zabbix-3.2.7]# ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
[root@zabix-proxy zabbix-3.2.7]# cd /usr/local/zabbix/etc/
[root@zabix-proxy etc]# cp zabbix_proxy.conf zabbix_proxy.conf.back
[root@zabix-proxy etc]# vim zabbix_proxy.conf
Server=192.168.20.209
Hostname=192.168.20.207
LogFile=/tmp/zabbix_proxy.log
DBHost=192.168.20.209
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=123456
Timeout=4
LogSlowQueries=3000
DataSenderFrequency=30
HistoryCacheSize=128M
CacheSize=128M

[root@zabix-proxy etc]# mysql -h192.168.20.209 -uzabbix -p123456

[root@zabix-proxy ~]# /usr/local/zabbix/sbin/zabbix_proxy #啟動proxy
[root@zabix-proxy ~]# netstat -anput | grep zabbix_proxy

zabbi-proxy啟動完成之后,接下來我們需要在zabbi-server端上添加proxy


創建主機使用proxy端監控

PS:proxy監控某台機器,需要將該機器的配置IP指向proxy端,不能再指向zabbi-server端,因為是由proxy監控並將監控數據上報給zabbix-server端


重啟agent端生效!


新建的主機監控需要添加監控模板

ps:如果server端未能正常獲取到監控圖形數據,在保證server端配置無誤的情況下,我們可以檢查proxy和agent端,包括時間是否同步,IP地址指向是否正確!


到此為止zabbix-server通過proxy端監控agent成功!!!!!!!!!!!!!!!
########################################################
批量發現





