发布于 2014-08-18 14:19:13 | 3318 次阅读 | 评论: 0 | 来源: 网友投递
Zabbix 分布式系统监视系统
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
本文讲解的是zabbix分布式系统监视软件Zabbix的安装和配置方法,zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。感兴趣的同学参考下.
Zabbix简介:
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案
Zabbix是一个开源分布式监控平台,包含诸多监控功能,用于构建一个符合企业级的监控解决方案。软件由开源社区提供开发和维护,遵循GPL协议,可以自由传播和使用,但开发团队提供收费的技术支持服务。
官方网站: http://ww.zabbix.com
1 安装前提:
OS: Centos 5.6
软件依赖: $ yum install curl* net-snmp* mysql-server mysql*
2 创建用户:
$ groupadd zabbix $ useradd -g zabbix -m zabbix
2 解压缩:tar xvf zabbix-1.8.6.tar
3 创建数据库:
$mysql -uroot -p
$myslq> create database zabbix character utf8;
$mysql> show databases;
$mysql> quit;
$ cd zabbix-1.8.6
$ cat create/schema/mysql.sql | mysql -uroot -p[PASSWORD] zabbix
$ cat create/data/data.sql | mysql -uroot -p[PASSWORD] zabbix
$ cat create/data/images_mysql.sql | mysql -uroot -p[PASSWORD] zabbix
4 安装必要配件
##编译配置
$ ./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/opt/zabbix
##编译安装
$ make && make install
1. 开启服务端口
$grep zabbix /etc/services
如果以上内容没有出现, 请手动添加到文件中
2. 编辑配置文件
$ mkdir /etc/zabbix
$ cp -r misc/conf/* /etc/zabbix/
修改服务器配置文件
$ vim /etc/zabbix/zabbix_server.conf
编辑行: DBPassword=【数据库的登录密码】
修改client配置文件
$ vim /etc/zabbix/zabbix_agent.conf
编辑行: server=【服务器IP】
3. 配置 UI
$ cp -r frontends/php /var/www/html/zabbix
4. 配置PHP
$ vim /etc/php.ini
修改如下参数为:
$ yum install php-mbstring php-gd*
5. 重启服务
$ server httpd restart
1. 使用浏览器打开地址: http://[Server-IP]/zabbix
可能会出现白屏幕,查看/var/log/httpd/error_log文件,发现如下错误:
Call to undefined function bcscale() in /var/www/html/zabbix/include/defines.inc.php on line 797
是php缺少一个数学库: $ yum install php-bcmath
OK!
2. 在配置第三项时候, 出现:
这个配置前提要求,出现Fail的表示该项目不可用或不达标,需要修改。方法如下:
$ vim /etc/php.ini
修改此项目: max_input_time = 600 ; Maximum amount of time each script may spend parsing request data
$ yum install php-gd php-mbstring
$ /etc/init.d/httpd restart
打开浏览器, 使用 "Retry" 按钮刷新, 界面变为:
如果你还有Fail项目,可根据项目内容(黑体字),修改/etc/php.ini文件,或者安装相应的包
点击 "Next >> ", 进入第四步,请输入密码,然后点击 "Test connection" (注意默认不需要修改其他,只要填入密码就好)
一路Next
到第七步:
点击 “Save configuation file", 将下载的文件zabbix.conf.php, 拷贝到服务器的目录/var/www/html/zabbix/conf/zabbix.conf.php去
然后点击" Retry" 就不会有Fail了。
点击“Finish" 完成安装
3. 初始登录用户:
username: Admin
password: zabbix
4. 配置启动项:
(在编译安装目录下)
$ pwd
/root/zabbix-1.8.6
$ cp misc/init.d/redhat/zabbix_server_ctl /etc/init.d/zabbix_server
$ cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/zabbix_agentd
在编译配置中如果 --prefix=不是文档中所描述的, 需要在上面两个文件中改动项目“BASEDIR=“为你设置的新安装目录。
5. 开机自启动
6. 启动
$ service zabbix_server start
$ service zabbix_server restart
$ ps aux | grep zabbix
为空,表示有错误
7. 无法启动的原因和错误排除方法
错误信息所在的日志文件在:
tail -f /tmp/zabbix_server.log
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
错误信息: zabbix 无法登录到数据库
[root@server ~]# tail -f /tmp/zabbix_server.log
13233:20110910:054124.337 SNMP monitoring: YES
13233:20110910:054124.337 IPMI monitoring: NO
13233:20110910:054124.337 WEB monitoring: YES
13233:20110910:054124.337 Jabber notifications: NO
13233:20110910:054124.337 Ez Texting notifications: YES
13233:20110910:054124.337 ODBC: NO
13233:20110910:054124.337 SSH2 support: NO
13233:20110910:054124.337 IPv6 support: NO
13233:20110910:054124.337 ******************************
13233:20110910:054124.340 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'root'@'localhost' (using password: NO)
解决办法:
编辑配置文件: $ vim /etc/zabbix/zabbix_server.conf
修改 DB项目中的“DBName=", "DBPassword="等项目,是否设置正确或者去掉了注释。
然后重启服务: $ service zabbix_server restart
OK
主界面如下:
8. 设置需要监控的服务器
首先需要下载安装包,由于Zabbix 在不同的操作系统上需要不同的安装包,应此首先需要去官方网站下载相应的安装包.
下载安装文件到需要监控的LINUX服务器,然后
$ tar -zxvf zabbix_agents_1.8.linux2_6.i386.tar.gz
$ mkdir /etc/zabbix
登录到主服务器,将配置文件复制到需要监控的服务器上
$ scp /etc/zabbix/zabbix_agentd.conf root@host:/etc/zabbix/
登录到受监控的服务器节点,修改配置文件,参考如下:
Hostname=本机主机名
Server=Zabbix服务器IP
运行:
$ /usr/local/zabbix/sbin/zabbix-agentd –c /etc/zabbix/zabbix_agentd.conf &
可以使用命令查看是否运行:
$ ps aux | grep zabbix-agentd
查看日志:
$ tail -f /tmp/zabbix_agentd.log
Windows 主机的监控使用如下配置:
Windows下解压客户端包到c:,下载修改好的zabbix_agentd.conf文件也放到c:,打开cmd命令行,执行 C:>zabbix_agentd –install
安装后会在系统服务里添加一个zabbix_agentd服务,会自动开机运行
如果需要将客户端和配置文件放在其他目录,请执行
C:>DIR/zabbix_agentd –c DIR/zabbix_agentd.conf –install
启动agentd服务
C:>zabbix_agentd –start
或是通过管理->服务找到zabbix_agentd来启动
测试:
$ netstat -lnt ##出现10050, 10051说明系统服务已经启动
$ /usr/share/zabbix/bin/zabbix_get -s 192.168.1.182 -p 10050 -k "net.if.in[eth0,bytes]" ## 出现数字,说明网络服务已经畅通
Linux 程序安装要注意版本诉求,在此案中,zabbix使用1.8.5为好,OS使用centos5.6或类似版本,主要是PHP版本要合适,由于zabbix 调用了php-bcmath模块,而这个模块需要和PHP版本合并,罪行的PHP版本无法匹配PHP—BCMATH,会造成安装无法进行,需要降低PHP 版本。 这个在实践中需要注意。
其次推荐使用zabbix的RPM包,加YUM工具配合安装,对于zabbix的依赖关系较为好处理(zabbix需要很多第三方工具)。