一、Zabbix简介
1.1 Zabbix简介
Zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。官方网站:http://www.zabbix.com官方文档:http://www.zabbix.com/documentation/2.0/manual/quickstart。Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。
Zabbix运行条件:
Server:Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下,对硬件要求低。
Agent:目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows。
SNMP:支持各类常见的网络设备
1.2 Zabbix功能
具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制) 支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server提供通用接口,可以自己开发完善各类监控。
1.3 优劣势
优点:开源,无软件成本投入;Server对设备性能要求低(实际测试环境:虚拟机CentOS5,2GCPU 1G内存,
监控5台设备,CPU使用率基本保持在10%以下,内存剩余400M以上);支持设备多;支持分布式
集中管理;开放式接口,扩展性强。
缺点:中文资料较少。
二、Zabbix配置文件说明
2.1 Server:指安装zabbix服务的服务器(以下简称服务器端),是最重要的部份,主要安装在linux系统上
(支持多种操作系统),采用mysql存储监控数据并使用apache+php的方式呈现。
2.2 Agent:指安装在被监控设备上的zabbix代理(以下简称代理),被监控设备上的数据由代理收集后
统一上传到服务器端由服务器端收集、整理并呈现。
2.3 SNMP:也是agent的一种,指支持SNMP协议的设备(也可以是服务器),通过设定SNMP的参数将相关
监控数 据传送至服务器端(大部份的交换机、防火墙等网络设备都支持SNMP协议)。
2.4 IPMI: Agent的另一种方式,主要应用于设备的物理性能监控,例如设备的温度、风扇的转速等。
三、安装zabbix所需的组件
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd
php-xml php-bcmath php-mysql mysql-devel libdbi-dbd-mysql
mysql php httpd
四、zabbix安装
4.1zabbix安装
4.1.1 #tar -xvzf zabbix-2.4.5.tar.gz 或
#tar -xvjf zabbix-2..4.5.tar.bz2
4.1.2 #cd /zabbix-2.4.5
4.1.3 #groupadd zabbix
#useradd zabiix -g zabbix
4.1.4 #mysql -uroot -p /***建立数据库,赋予权限***/
4.1.4.1 mysql>create database zabbix default character set utf8;
4.1.4.2 mysql>grant all on zabbix.* to 'zabbix'@'localhost' identified by "newpassword";
4.1.4.3 mysql>flush privileges;
4.1.4.4 mysql>exit;
4.1.5 #cd /zabbix-2.4.5 /***导入数据表***/
4.1.5.1 #mysql -uzabbix -p zabbix< database/mysql/schema.sql
4.1.5.2 #mysql -uzabbix -p zabbix< database/mysql/images.sql
4.1.5.3 #mysql -uzabbix -p zabbix< database/mysql/data.sql
4.1.6 编译安装
4.1.6.1 #./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openimpi --with-ssh2 --enable-static
4.1.6.2 #make && make install
4.2 复制运行脚本
4.2.1 #cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/
4.2.2 #chmod +x /etc/init.d/zabbix_server
4.2.3 #cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
4.2.4 #chmod +x /etc/init.d/zabbix_agentd
4.3 更改zabbix_server/agentd参数
4.3.1 vim /etc/init.d/zabbix_server
#chkconfig -95.5
4.3.2 vim /etc/init.d/zabbix_agentd
#chkconfig -95.5
4.4 修改目录zabbix_server/agentd 位置(默认不改)
4.4.1 vim /etc/init.d/zabbix_server
progdir="/usr/local/zabbix/sbin/"
4.4.2 vim /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"
4.5 设为开机自启动
chkconfig --add zabbix_server
chkconfig --add zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on
4.6 vim /var/www/html/aa.php目录下建php
<?php
phpinfo();
?>
4.7 复制网页文件到apache自定义目录
4.7.1 #cp -r frontends/php/ /var/www/html/zabbix/
4.7.2 #chown -R apache:apache /var/www/html/zabbix/
4.8 打开localhost(IP地址)/zabbix进行页面安装
4.8.1 用户名/密码为默认:admin/zabbix
4.8.2 按照提示配置相关项目
4.8.3 按提示修改php.ini
vim /etc/php.ini
data.timezone=“Asia/shanghai”
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
4.9 php.ini配置完,重启apache服务器
service httpd restart
4.10 查看zabbix状态
#ps -ef |grep zabbix
4.11 开启 zabbix服务组件
service zabbix_server start
service zabbix_agentd start
4.12 #cd /var/www/html/zabbix/conf 安装目录
#chown -R 1000:1000 zabbix.conf.php 权限给php
#ll 查看
至此zabbix软件安装结束
五 、配置zabbix
5.1 zabbix服务器端修改连接的数据库的用户名和密码
vim /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBUDBPassword=******
5.2 cd /var/www/html/zabbix/config/conf 安装目录下更改
vim zabbix_server.conf 用户名密码
vim zabbix-agengd.conf 用户名密码
5.3 客户端配置zabbix_agentd.conf 文件
vim zabbix_agentd.conf
Server=127.0.0.1 此处添加服务端的 ip,如服务器不为本机,则需要填写远端 zabbix的ip地址
ServerActive=127.0.0.1 此处修改为服务端的 ip
/tmp/zabbix_agentd.log 修改日志路径
UnsafeUserParameters=0 默认是不启用自定义脚本功能的,要自定义 key,需开启,
设置为1
Include=/etc/zabbix/zabbix_agentd.conf.d/ 自定义的agentd配置文件可以写在这个目录下
具体如下:
LogFile=/var/log/zabbix/zabbix_agentd.log
EnableRemoteCommands=0
Server=127.0.0.1,192.168.1.89
StartAgents=8
ServerActive=192.168.1.89:10051
Hostname=nat.kx1d.com
Timeout=30
Include=/etc/zabbix/zabbix_agentd.conf.d/
UnsafeUserParameters=1
注:工作模式:Server 是采用被动工作模式,允许访问的 ip 地址,server 端要获取数据,
当然得允 许 server 端了
ServerActive 是采用主动工作模式,将数据上传到哪台服务器,需要填写
server 的端口,默认是 10051
语法是 ip1,ip2 可以填写多个 server 端,中间用逗号隔开
5.4 vim /etc/services
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent
zabbix-trapper 10051/tcp #Zabbix Trapper
zabbix-trapper 10051/udp #Zabbix Trapper
5.5 开启 zabbix服务组件
service zabbix_server start
service zabbix_agentd start
5.6 在zabbix的服务端执行下面的命令测试与客户端是否联通
# /usr/local/zabbix/bin/zabbix_get -s 192.168.1.160(客户端IP) -p10050 -k
本文转自 wdy198622 51CTO博客,原文链接:http://blog.51cto.com/weimouren/1716829