笔者在浩瀚的网络海洋中安装测试了,netxms,cacti,zabbix三款系统监控软件。将在博文里详细介绍zabbix的安装,部署和配置。系统监控很多方法都可以实现,譬如号称屎上奇葩的SCOM,比如各硬件厂商推出各种收费的服务,都可以对硬件,系统进行监控。开源的监控软件也是很多,有一二十种,基本上都是基于agent,snmp协议。在选择上,选取一款自己使用舒服的工具,为我等所用。
概述: zabbix官方网站:http://www.zabbix.com,支持中文,基于C/S采集数据,基于B/S展示和配置,其配置环境是LAMP(Linux+Apache+Mysql+PHP)。可以监控Windows,Unix,Linux,Mysql,Oracle,支持SNMP的网络设备。
1、安装Linux (笔者写了两篇博文,介绍安装centos 6.0的步骤:http://2801578.blog.51cto.com/2791578/784764;http://2801578.blog.51cto.com/2791578/784758)
2、保证主机能够连接Internet(笔者使用的是vmware虚拟机,网络类型选择NAT,设置其网络)
3、服务器环境准备
4、数据库准备
提示键入原密码,回车
#exit
从www.zabbix.com,下载zabbix的源文件,加压缩tar文件:
#tar zxvf zabbix-1.8.10.tar.gz
#cd zabbix-1.8.10
# cat ./create/schema/mysql.sql |mysql -uroot -proot zabbix
# cat ./create/data/data.sql |mysql -uroot -proot zabbix
# cat ./create/data/images_mysql.sql |mysql -uroot -proot zabbix
5、编译安装
注意前边yum没有完整安装,编译时会出现问题,zabbix安装不上
# ./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix
#make
#make install
6、配置
#grep zabbix /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
# mkdir -p /etc/zabbix
# cp –r ./misc/conf/* /etc/zabbix
# chown -R zabbix:zabbix /etc/zabbix
# vi /etc/zabbix/zabbix_server.conf
#vi /etc/zabbix/zabbix_agentd.conf
# cd frontends/
# cp -rf php /var/www/html/
# cd /var/www/html
# mv php zabbix
# chown -R zabbix:zabbix zabbix
7、修改php相关参数
# vi /etc/php.ini
max_execution_time = 300
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
重启apache
#service httpd restart
启动浏览器,地址栏输入:“http://主机ip/zabbix” ,setup1:
setup2:
setup3:看到报错,修改php.ini
# vi /etc/php.ini
max_input_time = 600
重启阿帕奇
#service httpd restart
retry
setup4:填写数据库密码
setup5:(Next)
setup6:
setup7:按提示下载配置文件到Server的/var/www/html/zabbix/conf下,名字一定要是zabbix.conf.php
setup8:install sucessful
配置完成后,出现登陆界面,默认的用户为:admin,密码为:zabbix
8、启动Server
安装完成后的server程序在/usr/local/zabbix/sbin/目录下,可以直接启动
#/usr/local/zabbix/sbin/zabbix_server
为了便于启停Server,我们做一些小配置
复制控制程序
# cp ./misc/init.d/redhat/zabbix_* /etc/init.d/
修改配置目录,将如下两个文件中的BASEDIR=改为/usr/local/zabbix, 下面两个配置中的bin改为sbin,ZABBIX_AGENTD,ZABBIX_SUCKERD
# vi /etc/init.d/zabbix_server_ctl
# vi /etc/init.d/zabbix_agentd_ctl
加入开机启动
# echo '/etc/init.d/zabbix_server_ctl start &' >>/etc/rc
# echo '/etc/init.d/zabbix_agentd_ctl start &' >>/etc/rc
创建快键方式
# ln -s /etc/init.d/zabbix_server_ctl /usr/bin/zabbix_server_ctl
# ln -s /etc/init.d/zabbix_agentd_ctl /usr/bin/zabbix_agentd_ctl
启动Server和Agentd(可以通过start stop restart来操作)
# zabbix_agentd_ctl start
# zabbix_server_ctl start
检查启动是否正常,查看进程是否起来,分server和agentd
#ps –ef|grep zabbix
如果进程没起来,可以查看对应的日志错误,默认在/tmp/zabbix-*.log
至此Zabbix Server的安装已完成
9、配置Agent
Zabbix需要在被监控的host上安装agent,在zabbix官网上下载相应平台的agent包到各被监控端,按如下方式在被监控上运行agent。(注:官网上下载的agent包里没有运行agentd所必须的配置文件,可以从zabbix server上拷贝一份zabbix_agentd.conf,这个conf文件是所有平台都通用的)
Linux、UX:
Linux、UX上的agent是编译好了的,不用安装
#cd /usr/local/zabbix
#tar zxvf zabbix_agents_1.8.linux2_6.i386.tar.gz
取一份server上的zabbix_agnetd.conf到本地,然后按说明修改,一般我们只需修改如下3个参数:
Hostname=本机名
Server=Zabbix Server IP
LogFile=本机agentd日志保存文件
修改完成后,运行agentd
#/usr/local/zabbix/sbin/zabbix-agentd –c /usr/local/zabbix/zabbix_agentd.conf
#ps –ef|grep zabbix_agentd
如果进程没起来,可查看agentd.log日志来排查问题。(注:启动时建议用全路径,否则可能会出错)
加入开机运行
#echo ‘/usr/local/zabbix/sbin/zabbix-agentd –c /usr/local/zabbix/zabbix_agentd.conf &
‘ >>/etc/rc