一、zabbix简介(摘自百度百科)
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix由2部分构成,zabbix server与可选组件zabbix agent。zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系统之上。zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(trapping方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。
zabbix的主要特点:
- 安装与配置简单,学习成本低
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能等等
Zabbix主要功能:
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
二.安装Zabbix
zabbix的使用需要配合WEB已经MySQL和PHP
为了方便搭建,这里我们使用YUM搭建LAMP环境
yum install httpd* mysql* php* -y
chkconfig httpd on
chkconfig mysqld on
chkconfig php on
service httpd start
service mysqld start
service php-fpm start</pre>
安装zabbix所需的组件
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
下载zabbix
http://www.zabbix.com/download.php
这里我们选择最新的 2.4.3 的源码包进行编译安装
解压编译
tar xvf zabbix-2.4.3.tar.gz -C /usr/src/ # cd /usr/src/zabbix-2.4.3/
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl
make && make install</pre>
创建zabbix数据库
# mysql -uroot -p
(默认密码为空,强烈建议修改root密码)
mysql> create database zabbix default charset utf8;
mysql> grant all on zabbix.* to 'zabbix'@'%'
-> identified by 'zabbix' ;
mysql> flush privileges;
mysql> exit
#cd /usr/src/zabbix-2.4.3/database/mysql
# mysql -uroot -p zabbix<schema.sql
# mysql -uroot -p zabbix<images.sql
# mysql -uroot -p zabbix<data.sql
添加zabbix服务端口号
# cat >>/etc/services <<EOF
> zabbix-agent 10050/tcp Zabbix Agent
> zabbix-agent 10050/tcp Zabbix Agent
> zabbix-agent 10050/tcp Zabbix Agent
> zabbix-trapper 10051/udp Zabbix Trapper
> EOF
拷贝启动脚本
# cp /usr/src/zabbix-2.4.3/misc/init.d/fedora/core5/zabbix_* /etc/init.d/
# chmod +x /etc/init.d/zabbix_*
修改启动命令脚本
# vim /etc/init.d/zabbix_server
ZABBIX_BIN="/usr/local/sbin/zabbix_server" <--原来的
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server" <--修改后
保存退出
# vim /etc/init.d/zabbix_agentd
ZABBIX_BIN="/usr/local/sbin/zabbix_agentd" <--原来的
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd" <--修改后
保存退出
修改连接数据库的用户名和密码
# vim /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
拷贝zabbix WEB文件到http根目录
# cp frontends/php/ /var/www/html/ -r
进入浏览器安装zabbix,在浏览器输入localhost
Next下一步
配置检查,可能有的机器会提示Faild。不用急,只需要根据提示把/etc/php.ini 中对应的参数改成其指定的值就可以了。然后重启httpd,php-fpm,在进行一次配置检查就会通过了。
#vim /etc/php.ini
date_default_timezone_set(”Asia/Shanghai”)
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
这里我们使用之前创建的zabbix用户,密码也是zabbix,其他默认就好
下一步,下一步
这里提示无法在该目录创建对应文件。我们可以选择Download下载然后上传到指定位置。在执行Retry即可通过
Finish
创建zabbix用户并启动zabbix_server和zabbix_agent
# useradd zabbix -M -s /sbin/nologin
# /etc/init.d/zabbix_server start
Starting Zabbix Server: [ OK ]
# /etc/init.d/zabbix_agentd start
Starting Zabbix Agent: [ OK
至此zabbix的服务搭建就已经完成。
默认的用户名admin
密码zabbix。
如果启动报错
Starting Zabbix Server: /usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory