Zabbix通過C/S模式采集數據,通過B/S模式在web端展示和配置。
被監控端:主機通過安裝agent方式采集數據,網絡設備通過SNMP方式采集數據
Server端:通過收集SNMP和agent發送的數據,寫入MySQL數據庫,再通過php+apache在web前端展示。
Zabbix運行條件:
Server:
Zabbix Server需運行在LAMP或LNMP環境下,對硬件要求低
Agent:
目前已有的agent基本支持市面常見的Linux、HPUX、Solaris、Sun、windows等
1.安裝系統:CentOS 6.5 部署LAMP架構
2.源碼包:官網下載zabbix-2.4.3.tar.gz
1.服務端環境准備
配置好yum源,確認已安裝httpd,mysql-server,php
安裝所需的依賴環境
# yum install mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml -y
增加zabbix用戶和組
# groupadd zabbix
# useradd -g zabbix -m zabbix
下載zabbix-2.4.3.tar.gz解壓
# tar zxvf zabbix-2.4.3.tar.gz
2.數據庫准備
啟動mysqld服務並進入mysql,創建zabbix庫和用戶
mysql> create database zabbix default charset utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on zabbix.* to zabbix@'localhost'
-> identified by '123';
mysql> grant all on zabbix.* to zabbix@'127.0.0.1'
-> identified by '123';
導入zabbix基礎數據到數據庫,注意按順序導入
# cd /root/zabbix-2.4.3/database/mysql/
# mysql -u zabbix -p123 zabbix < schema.sql
# mysql -u zabbix -p123 zabbix < images.sql
# mysql -u zabbix -p123 zabbix < data.sql
1.編譯安裝zabbix
進入zabbix-2.4.3
# ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl --with-openipmi --enable-agent
報錯checking for IKSEMEL... No
configure: error: Jabber library not found
需要安裝iksemel和iksemel-devel
下載安裝iksemel-1.4-2.el6.x86_64.rpm和iksemel-devel-1.4-2.el6.x86_64.rpm
# rpm -ivh iksemel-1.4-2.el6.x86_64.rpm
# rpm -ivh iksemel-devel-1.4-2.el6.x86_64.rpm
報錯 error: Failed dependencies:
gnutls-devel is needed by iksemel-devel-1.4-2.el6.x86_64
# yum install gnutls-devel
# rpm -ivh iksemel-devel-1.4-2.el6.x86_64.rpm
2.再次編譯安裝zabbix
# ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl --with-openipmi --enable-agent
報錯checking for OPENIPMI support... no
configure: error: Invalid OPENIPMI directory - unable to find ipmiif.h
需要安裝OpenIPMI和OpenIPMI-devel
Yum安裝OpenIPMI並下載OpenIPMI-devel-2.0.16-14.el6.x86_64.rpm
# yum install OpenIPMI
# rpm -ivh OpenIPMI-devel-2.0.16-14.el6.x86_64.rpm
報錯 error: Failed dependencies:
pkgconfig(ncurses) is needed by OpenIPMI-devel-2.0.16-14.el6.x86_64
# yum install ncurses-devel
# rpm -ivh OpenIPMI-devel-2.0.16-14.el6.x86_64.rpm
3.繼續編譯安裝zabbix
# ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl --with-openipmi --enable-agent
***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************
依賴環境ok
# make && make install
拷貝zabbix web 文件到html目錄下並改名
# cp -rf /root/zabbix-2.4.3/frontends/php /var/www/html/
# cd /var/www/html/ && mv php zabbix
# chown zabbix:zabbix /var/www/html/zabbix/
配置php相關參數
# vim /etc/php.ini
max_execution_time = 300
date.timezone = Asia/Shanghai
max_input_time = 600
啟動apache
# service httpd start
配置zabbix server端
# vim /usr/local/zabbix/etc/zabbix_server.conf
DBHost=localhost ---數據庫本機
DBName=zabbix ---數據庫庫名
DBUser=zabbix ---數據庫賬號
DBPassword=123 ---數據庫密碼
DBSocket=/var/lib/mysql/mysql.sock ---指定sock路徑
ListenPort=10051 ---服務端監聽端口
ListenIP=0.0.0.0 ---監聽IP范圍
啟動服務
# cp /root/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_server /etc/init.d/
# vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix
# service zabbix_server start
查看啟動端口
# lsof -i:10051
添加開機啟動
# chkconfig --add zabbix_server
# chkconfig --level zabbix_server on
配置zabbix agent端
# vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=127.0.0.1 ---填寫server端IP,server鏈接agent獲取數據
ServerActive=127.0.0.1 ---填寫server端IP,agent主動提交數據
Hostname=Zabbix server ---給agent設定一個名字,默認為Zabbix server
啟動服務
#cp /root/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
# vim /etc/init.d/zabbix_agentd
BASEDIR=/usr/local/zabbix
# service zabbix_agentd start
添加開機啟動
# chkconfig --add zabbix_agentd
# chkconfig --level zabbix_agentd on
輸入本機IP/zabbix地址進入web界面,點擊next>>
http://192.168.1.238/zabbix
確認required全部ok,點擊next>>
測試連接數據庫ok,點擊next>>
zabbix server信息,點擊next>>
確認信息,點擊next>>
點擊下載配置文件,然后拷貝到提示目錄下,點擊retry,點擊finish
登陸界面輸入賬號admin,密碼zabbix進入
將zabbix-2.4.3.tar.gz拷貝到需要安裝agent端的主機解壓
# tar zxvf zabbix-2.4.3.tar.gz
編制安裝agent端
# ./configure --prefix=/usr/local/zabbix --enable-agent
# make && make install
配置zabbix agent端
# vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.1.238 ---server端IP
ListenPort=10050 ---agent端端口
ServerActive=192.168.1.238 ---server端IP
Hostname=test237 ---定義agent端主機名字
啟動服務
#cp /root/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
# vim /etc/init.d/zabbix_agentd
BASEDIR=/usr/local/zabbix
# service zabbix_agentd start
查看啟動端口添加開機啟動
# lsof -i:10050
# chkconfig --add zabbix_agentd
# chkconfig --level zabbix_agentd on
zabbix server添加監控agent,點擊configuration---host---create host
host name填寫之前agent端配置文件設定的名字test237,groups選擇
linux servers,IP地址填寫agent端的IP 192.168.1.237,然后點擊update
在templates項目選擇添加template os linux模塊,然后點擊update
完成test237主機的監控,后續根據需求添加監控模塊或自定義擴展