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前提是已经搭建lnmp或lamp环境
下面具体介绍在linux2.6.18-194.el5 中的安装过程

下载地址:http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.0.1/zabbix-2.0.1.tar.gz/download

编译安装 zabbix-2.0.1
zabbix-2.0的安装方式和以往的zabbix1.0各版本有不同的地方 ,如果遇到一些错误是可以google并加以解决的。下面是我的安装方法,如果不想多走弯路可以按照步骤step by step
准备工作
添加用户

  1. groupadd -r zabbix  
  2. uaseradd -g zabbix -M -s /sbin/nologin zabbix  
  3. export PATH=$PATH:/usr/local/webserver/mysql/bin 

初始化mysql数据库,为编译安装做准备工作

  1. mysql -e "create databese zabbix;"  
  2. mysql -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"  
  3. yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath  
  4. tar xf zabbix-1.8.9.tar.gz  
  5. cd zabbix  
  6. mysql -uroot -hlocalhost -p"123456" zabbix <database/mysql/schema.sql  
  7. mysql -uroot -hlocalhost -p"123456" zabbix <database/mysql/p_w_picpaths.sql  
  8. mysql -uroot -hlocalhost -p"123456" zabbix <database/mysql/data.sql 

查看php所安装的模块:
php -m  检查是否包括以下内容
bcmath ,mbstring ,sockets, gd ,gd PNG support ,gd JPEG support ,gd FreeType support ,libxml,
xmlwriter, xmlreader ,ctype , session ,gettext
以gettext为例 说明添加gettext模块

  1. cd /data2/software/php-5.4.4/ext/gettext/
  2. /usr/local/webserver/php/bin/phpize  
  3. ./configure –with-php-config=/usr/local/webserver/php/bin/php-config  
  4. make && make install 


会在/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/目录下生成gettext.so
编辑php.ini
 

  1. extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/" 
  2. extension = "gettext.so" 


重启nginx php-fpm 如果是apache也需重启服务

编译并安装zabbix-2.0.1

  1. ./configure --prefix=/usr/local/webserver/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/webserver/mysql/bin/mysql_config --with-net-snmp --with-libcurl  
  2. make && make install 


在/etc/services追加如下内容

  1. zabbix-agent 10050/tcp Zabbix Agent   
  2. zabbix-agent 10050/udp Zabbix Agent   
  3. zabbix-trapper 10051/tcp Zabbix Trapper   
  4. zabbix-trapper 10051/udp Zabbix Trapper  


配置server

  1. vim /usr/local/webserver/zabbix/etc/zabbix/zabbix_server.conf   
  2. DBName=zabbix 
  3. DBUser=zabbix 
  4. DBPassword=zabbix 

zabbix2.0版本默认到zabbix安装目录下的etc文件中去找server的配置文件,如果想另指配置文件位置比如/etc/zabbix 可以./configure中添加--sysconfig=/etc/zabbix
  1. cd /usr/local/webserver/zabbix/bin  
  2. ln -sv /usr/local/webserver/zabbix/bin/* /usr/bin/  
  3. ln -sv /usr/local/webserver/zabbix/sbin/* /usr/sbin/  
  4. echo "/usr/local/webserver/mysql/lib/mysql" >> /etc/ld.so.conf  
  5. ldconfig  
  6.  
  7. cd /data2/software/zabbix-2.0.1  
  8. cp misc/init.d/fedora/core/zabbix_* /etc/init.d  
  9.  

编辑/etc/init.d/zabbix_server
BASEDIR=/usr/local/webserver/zabbix (修改BASEDIR为zabbix的安装目录)
编辑/etc/init.d/zabbix_agentd

  1. BASEDIR=/usr/local/webserver/zabbix (修改BASEDIR为zabbix的安装目录)  
  2. chkconfig --add zabbix_server  
  3. chkconfig --level 35 zabbix_server on  
  4. chkconfig --add zabbix_agentd  
  5. chkconfig --level 35 zabbix_agentd on 

调整php.ini参数使zabbix更好的工作

  1. 255 max_execution_time = 300       
  2. 256 max_input_time = 300      
  3. 439 post_max_size = 16M 
  4. 663 [Date]  
  5. 664 ; Defines the default timezone used by the date functions  
  6. 665 date.timezone = Asia/Shanghai 

将zabbix网页文件cp到对应的网页目录中去
cp -r frontends/php/* /data0/htdocs/www/
chmod 777 /data0/htdocs/www/conf (在登陆网页安装配置zabbix时会将zabbix.conf.php保存在conf目录中,所以要修改conf读写权限)
nginx的配置文件可以参照下文格式:
 

  1. server  
  2.   {  
  3.     listen       80;  
  4.     server_name  www.s135.com;  
  5.     index index.html index.htm index.php;  
  6.     root  /data0/htdocs/www;  
  7.  
  8.     location ~ .*\.(php|php5)?$  
  9.     {  
  10.         root /data0/htdocs/www;  
  11.       #fastcgi_pass  unix:/tmp/php-cgi.sock;  
  12.       fastcgi_pass  127.0.0.1:9000;  
  13.         fastcgi_param  SCRIPT_FILENAME  
  14.         $document_root$fastcgi_script_name;  
  15.       fastcgi_index index.php;  
  16.       include fcgi.conf;  
  17.     }  
  18.  
  19.     log_format  wwwlogs  ' -  [] "" '  
  20.                '  "" '  
  21.                '"" ';  
  22.     access_log  /data1/logs/wwwlogs.log  wwwlogs;  
  23.   }  


apache虚拟主机配置按照相应的格式修改即可

启动服务:

  1. /etc/init.d/zabbix_agentd start  
  2. /etc/init.d/zabbix_server start  
  3. /etc/init.d/fastcgi restart  
  4. /etc/init.d/mysqld restart  
  5. /etc/init.d/snmpd restart  
  6. /etc/init.d/nginx restart 

我在启动zabbix_agentd遇到问题是无法找到libiconv.so.2文件 因为libiconv.so.2是编译安装在/usr/local目录中的
所以要建立个软连接 

  1. ln -sv /usr/local/lib/libiconv* /usr/lib/ 

64位机器的执行下面命令
  1. ln -sv /usr/local/lib/libiconv* /usr/lib64/ 
  1. [root@localhost conf]# netstat -tnlp  
  2. Active Internet connections (only servers)  
  3. Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name     
  4. tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      11681/zabbix_agentd   
  5. tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      11953/zabbix_server   
  6. tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      8485/snmpd            
  7. tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      11627/php-fpm.conf)   
  8. tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      8805/mysqld           
  9. tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      11604/nginx 

   然后可以在浏览器中输入 http://FQDN/ 安装zabbix

安装截图如下:

zabbix2.0.1安装_编译安装

zabbix2.0.1安装_lnmp_02

zabbix2.0.1安装_lnmp_03

zabbix2.0.1安装_zabbix2.0.1_04
默认登陆用户名密码是 admin/zabbix

简单安装zabbix2.0.1介绍完毕  之后的使用方法会继续更新到博客中去 请关注。。