zabbix是一个C/S结构的监控系统,server端侦听在10051端口,客户端 侦听在10050端口,用户界面使用php开发,数据存储在MySQL里面;官方网站:http://www.zabbix.com/ ZABBIX由Alexei Vladishev编写,目前由ZABBIX SIA积极开发和维护; ZABBIX是一个企业级的开源分布式监控解决方案; ZABBIX是一款用于监控众多服务器的健康完整状态的软件,采用了灵活的预警通知机制,比如它允许用户设定通过email示警任何网络活动,从而使得服 务器的问题能够被迅速反映出来; ZABBIX具备出色的报告和数据可视化功能所有的数据存储的在数据库中,这使得ZABBIX具备很好的规划的能力; ZABBIX支持投票和陷阱(polling and trapping);通过参数配置,所有ZABBIX报告和统计资料都可以通过基于Web的前端访问到; 通过正确的配置,您可以从任何地点评估您的服务器状态,这一点无论对于小企业还是大企业都是非常重要的; ZABBIX是免费的,遵循GPL公共许可证第二版,这意味着其源代码是免费地分发提供给广大公众,并可以从ZABBIX公司获得商业支持; ZABBIX的功能: 自动发现服务器和网络设备; 分布式监控网络,集中式管理; 支持polling和trapping机制; 服务器端支持Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X系统; 高性能本地代理(客户端软件支持Linux ,Solaris, HP-UX, AIX,Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000,Windows 2003, Windows XP, Windows Vista系统); 无代理监控; 有安全的用户认证功能; 可灵活地分配用户权限; 基于web的接口; 可灵活地预定网络事件并使用邮件通知; 高等级的资源监控; 日志审计功能; 1:zabbix服务器端的编译安装 [root@server3 tarbag]# wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8.1/zabbix-1.8.1.tar.gz?use_mirror=nchc [root@server3 tarbag]# tar -zxvf zabbix-1.8.1.tar.gz -C ../software/ [root@server3 tarbag]# cd ../software/zabbix-1.8.1/ [root@server3 zabbix-1.8.1]# yum -y install net-snmp-devel [root@server3 zabbix-1.8.1]# useradd zabbix [root@server3 zabbix-1.8.1]# cd create/schema/ [root@server3 schema]# scp mysql.sql root@192.168.122.1:/root //将数据文件scp传到数据库服务器上 [root@server3 schema]# scp ../data/data.sql root@192.168.122.1:/root [root@server3 schema]# scp ../data/images_mysql.sql root@192.168.122.1:/root 开始编译 [root@server3 zabbix-1.8.1]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl [root@server3 zabbix-1.8.1]# make install [root@server3 zabbix-1.8.1]# mkdir /etc/zabbix [root@server3 zabbix-1.8.1]# cp misc/conf/* /etc/zabbix/ [root@server3 zabbix-1.8.1]# ls /etc/zabbix/ zabbix_agent.conf zabbix_agentd.win.conf zabbix_server.conf zabbix_agentd.conf zabbix_proxy.conf [root@server3 ~]# grep -v '^#' /etc/zabbix/zabbix_server.conf |uniq //修改配置文件如下,定义数据库主机地址和用户名及密码 LogFile=/tmp/zabbix_server.log DBHost=192.168.122.1 DBName=zabbix DBUser=zabbix DBPassword=123456 [root@server3 ~]# cp /usr/local/src/software/zabbix-1.8.1/misc/init.d/redhat/zabbix_* /etc/init.d/ [root@server3 ~]# cp -rp /usr/local/src/software/zabbix-1.8.1/frontends/php/ /www/ //将php目录通过Apache发布出去 [root@server3 ~]# tail -5 /etc/services # Local services zabbix-agent 10050/tcp Zabbix Agent zabbix-agent 10050/udp Zabbix Agent zabbix-trapper 10051/tcp Zabbix Trapper zabbix-trapper 10051/udp 数据库主机方面,导入数据库: [root@jsb-ylw-5024 ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.0.77 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> create database zabbix character set utf8; //创建utf8格式的数据库zabbix Query OK, 1 row affected (0.02 sec) mysql> grant all privileges on zabbix.* to 'zabbix'@'%' identified by '123456'; //创建zabbix用户并赋权限 Query OK, 0 rows affected (0.05 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) [root@jsb-ylw-5024 ~]# cat mysql.sql |mysql -uzabbix -p123456 zabbix //导入数据表 [root@jsb-ylw-5024 ~]# cat data.sql |mysql -uzabbix -p123456 zabbix [root@jsb-ylw-5024 ~]# cat images_mysql.sql |mysql -uzabbix -p123456 zabbix [root@server3 ~]# /usr/local/zabbix/sbin/zabbix_server //启动zabbix服务器进程 [root@server3 ~]# netstat -ntpl |grep zab tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 16671/zabbix_server 2:浏览器方面的安装配置,zabbix完全依赖于LAMP结构,编译PHP的时候除了添加MySQL的扩展外,还需要如下扩展: Php BC math:编译php的时候加上--enable-bcmath Php mb string:编译php的时候加上--enable-mbstring Php GD:编译的时候加上--with-gd 登录,默认用户名:Admin 密码:zabbix 3:客户端的配置,这里我的客户端使用64位系统 [root@jsb-ylw-5024 ~]# cd /usr/local/src/tarbag/ [root@jsb-ylw-5024 tarbag]# wget http://www.zabbix.com/downloads/1.8/zabbix_agents_1.8.linux2_6.x64.tar.gz [root@jsb-ylw-5024 tarbag]# tar -zxvf zabbix_agents_1.8.linux2_6.i386.tar.gz -C /usr/local/ [root@jsb-ylw-5024 tarbag]# cd [root@jsb-ylw-5024 ~]# mv /usr/local/zabbix-1.8/ /usr/local/zabbix [root@jsb-ylw-5024 ~]# tail -2 /etc/services zabbix_agent 10050/tcp zabbix_trap 10051/tcp [root@jsb-ylw-5024 ~]# mkdir /etc/zabbix 把服务器下的/etc/zabbix/zabbix_agentd.conf传到agentd客户端的/etc/zabbix下 [root@server3 ~]# scp /etc/zabbix/zabbix_agentd.conf root@192.168.122.1:/etc/zabbix/ root@192.168.122.1's password: zabbix_agentd.conf 100% 5105 5.0KB/s 00:00 [root@jsb-ylw-5024 ~]# grep -v '^#' /etc/zabbix/zabbix_agentd.conf |uniq LogFile=/tmp/zabbix_agentd.log Server=192.168.122.30 Hostname=test [root@jsb-ylw-5024 ~]# useradd -s /sbin/nologin -d /dev/null zabbix [root@jsb-ylw-5024 ~]# /usr/local/zabbix/sbin/zabbix_agentd //启动客户端进程 [root@jsb-ylw-5024 ~]# netstat -ntpl |grep zab tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 2314/zabbix_agentd 4:服务器端测试 [root@server3 ~]# /usr/local/zabbix/bin/zabbix_get -s192.168.122.1 -p10050 -k"system.cpu.load[all,avg1]" 2.280000 更多详细信息可以参考官方文档: http://www.zabbix.com/documentation/1.8/start (责任编辑:IT) |