cheun 发表于 2015-11-23 12:47:39

linux 安装zabbix监控工具

  一、zabbix安装环境
  zabbix的安装配置是个较繁杂的过程,它是基于lamp或lnmp,只不过之前装的lamp架构可能无法满足zabbix的需求,比如某些php的扩展,所以我建议重装php。
  1、查看linux的版本信息
  # lsb_release -a
LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.3 (Final)
Release:      6.3
Codename:       Final

  2、mysql的版本信息
  mysql> select version();
+------------------+
| version()      |
+------------------+
| 5.6.10-debug-log |
+------------------+
1 row in set (0.00 sec)

  3、PHP版本信息
  # php -v

  PHP 5.3.27 (cli) (built: Nov 18 2013 10:08:05)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies

  4、Apache版本信息
  # /usr/local/apache2/bin/httpd -v
Server version: Apache/2.2.23 (Unix)
Server built:   Oct 28 2013 02:38:35

  二、zabbix服务端的安装
  1、下载zabbix的源码包并解压
  wgethttp://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.0/zabbix-2.2.0.tar.gz
  # tar xf zabbix-2.2.0.tar.gz -C /usr/src/

  # cd zabbix-2.2.0/
  2、建立相应的用户组与用户

  # groupadd -r zabbix
# useradd -g zabbix -s /sbin/nologin zabbix

  3、登录mysql ,创建zabbix用户并授权
  # mysql -u root -p******
Welcome to the MySQL monitor.Commands end with ; or \g.
Your MySQL connection id is 4773
Server version: 5.6.10-debug-log Source distribution
…………

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  mysql> create database zabbix;    ###新建zabbix数据库
Query OK, 1 row affected (0.01 sec)

mysql> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';   ###创建zabbix用户
Query OK, 0 rows affected (0.16 sec)

mysql> flush privileges;                      #刷新授权表及时生效
Query OK, 0 rows affected (0.00 sec)
  4、导入zabbix自带的几个sql脚本

  # cd /usr/src/zabbix-2.2.0/

  # cd database/
# ls
ibm_db2      Makefile.inoracle      sqlite3
Makefile.ammysql      postgresql
# cd mysql/
# ls
data.sqlimages.sqlschema.sql
# mysql -u root -p123456 zabbix < schema.sql
# mysql -u root -p123456 zabbix < images.sql
# mysql -u root -p123456 zabbix < data.sql

  5、安装几个需要的软件包
  # yum install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath-y

  6、查看php的所有的modules,看是否包括了安装zabbix所需要的bcmath ,mbstring ,sockets, gd ,gd PNG support ,gd JPEG support ,gd FreeType support ,libxml,xmlwriter, xmlreader ,ctype , session ,gettext这些模块
  # php -m       ###查看已经支持的php模块

  
bz2
Core
ctype
curl
date
dom
ereg
fileinfo
filter
ftp
gd
hash
iconv
json
ldap
libxml
mbstring
mysql
mysqli
openssl
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
SQLite
sqlite3
standard
tokenizer
  xml
xmlreader
xmlwriter
zip
zlib

  我的php模块还少几个,所以我打补丁补全
  安装gettext 模块
  # cd /usr/src/php-5.3.27/ext/gettext/
  # phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

  # ./configure --with-php-config=/usr/local/bin/php-config

  # make

  # make install
Installing shared extensions:   /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

  # ls modules/
gettext.so

  修改php的配置文件php.ini,添加扩展模块
  # vi /usr/local/lib/php.ini

  extension=gettext.so          ###增加 这一行

  bcmath模块安装
  # phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

  # ./configure --with-php-config=/usr/local/bin/php-config

  # make

  # make install

  Installing shared extensions:   /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

  # ls modules/
bcmath.so

  修改php的配置文件php.ini,添加扩展模块
  # vi /usr/local/lib/php.ini

  extension= bcmath.so         ###增加 这一行
  sockets模块安装
# cd sockets/
  # phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

  # ./configure --with-php-config=/usr/local/bin/php-config

  # make

  # make install
Installing shared extensions:   /usr/local/lib/php/extensions/no-debug-non-zts-20090626/
Installing header files:          /usr/local/include/php/

  # ls modules/
sockets.so
  修改php的配置文件php.ini,添加扩展模块
  # vi /usr/local/lib/php.ini

  extension=sockets.so         ###增加 这一行
  扩展安装完成后重启apache
  # /etc/init.d/apache restart

  查看php模块发现目前已经出现了三个模块
  7、安装、配置zabbix
  # cd /usr/src/zabbix-2.2.0/

  # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl

# make
  # make install

  修改/etc/services,添加下面几行
  zabbix-agent    10050/tcp               #zabbix agent
zabbix-agent    10050/udp               #zabbix agent
zabbix-trapper10051/tcp               #zabbix trapper
zabbix-trapper10051/udp               #zabbix trapper
修改zabbix的配置文件
  # vi /usr/local/zabbix/etc/zabbix_server.conf

  # cat /usr/local/zabbix/etc/zabbix_server.conf | grep -v ^# | grep -v ^$
LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

  DBSocket=/var/run/mysqld/mysql5.socket

  做几个软连接
  # ln -s /usr/local/zabbix/bin/* /usr/bin/
# ln -s /usr/local/zabbix/sbin/* /usr/sbin/

  # cd /usr/src/zabbix-2.2.0/

  # cp /usr/src/zabbix-2.2.0/misc/init.d/fedora/core/* /etc/init.d/

  

  # vi /etc/init.d/zabbix_server

  BASEDIR=/usr/local/zabbix ##########修改这行

  # vi /etc/init.d/zabbix_agentd

  BASEDIR=/usr/local/zabbix   ##########修改这行

  

  # cp /usr/src/zabbix-2.2.0/frontends /var/www/zabbix/-r

  # chown daemon.daemon /var/www/ -R

  # chown 777 /var/www/zabbix/conf

  

  8、新建虚拟主机
  # cd /usr/local/apache2/conf/extra/
# vi httpd-vhosts.conf

  

  修改apache的主配置文件,开启8008端口
  # vi /usr/local/apache2/conf/httpd.conf

  #Listen 12.34.56.78:80
Listen 80
Listen 8008

  然后重启apache的服务
  # /etc/init.d/apache restart

  # lsof -i:8008
COMMANDPID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   1814   root    8wIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2887 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2888 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2889 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2890 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2891 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)
httpd   2892 daemon    8uIPv6 107091      0t0TCP *:8008 (LISTEN)

  

  9、启动zabbix服务
  # /etc/init.d/zabbix_agentd start
Starting zabbix_agentd:                                    
  # /etc/init.d/zabbix_server start
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
                                                         

  解决方法
  # locate libmysqlclient.so.18
/usr/local/mysql/lib/libmysqlclient.so.18
/usr/local/mysql/lib/libmysqlclient.so.18.0.0
/usr/src/mysql-5.6.10/libmysql/libmysqlclient.so.18
/usr/src/mysql-5.6.10/libmysql/libmysqlclient.so.18.0.0

  # echo &quot;/usr/local/mysql/lib&quot; >> /etc/ld.so.conf

  # ldconfig

  # /etc/init.d/zabbix_server start
Starting zabbix_server:                                    

  # /etc/init.d/snmpd restart
Stopping snmpd:                                          
Starting snmpd:                                          

  # /etc/init.d/mysql5 restart
Shutting down MySQL..                                    
Starting MySQL...                                          

  # /etc/init.d/apache restart


三、页面配置zabbix
  1、打开浏览器访问页面http://127.0.0.1:8008
  

  2、zabbix检查zabbix的php环境
  

  可以看到php的配置有些问题,所以需要改php的配置文件
  # vi /usr/local/lib/php.ini

  将对应的配置文件改成zabbix所需要的参数值
  memory_limit = 128M

  max_execution_time = 300

  max_input_time = 300

  date.timezone =Asia/Shanghai

  重启apache服务
  # /etc/init.d/apache restart

  3、然后再次刷新浏览器页面,重新查看php的环境,然后下一步
  

  

  4、填写对应的数据库信息,然后next
  

  

  5、zabbix的ip、端口以及主机名的设置
  

  

  6、配置信息预览
  

  

  7、安装
  

  8、登录 默认用户名admin密码zabbix
  

  9、登录的页面信息
  

  10、发现有个错误
  

  然后查证后是iptables的问题,所以建议先关闭iptables
  四、linux zaibbix客户端的安装
  1、下载客户端软件
  # wget http://www.zabbix.com/downloads/2.2.0/zabbix_agents_2.2.0.linux2_6.amd64.tar.gz

  下载时候需要注意查看客户机的内核信息,从官网选择相应的软件包
  2、客户端的相关设置
  # tar xf zabbix_agents_2.2.0.linux2_6.amd64.tar.gz    ###解压

  # mkdir /etc/zabbix/                        

  # mv bin/zabbix_get /usr/bin/   

  # mv bin/zabbix_sender /usr/bin/

  # mv sbin/zabbix_agent /usr/bin/

  # mv sbin/zabbix_agentd /usr/bin/

  # cd conf/
# mv zabbix_agentd.conf /etc/zabbix/

  3、修改zabbix_agentd.conf
  Hostname=zabbix-client1       ###这里的hostname要与客户端的hostname一致,而且与监控主机中的名字一致!!

  ServerActive=192.168.254.153    ####zabbixserver的ip

  Server=192.168.254.153####zabbixserver的ip
  # groupadd -r zabbix
# useradd -g zabbix -s /sbin/nologin zabbix
4、启动客户端进程
  

  # zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf    ####指定配置文件启动

  # ps -ef | grep zabbix      ####查看是否启动
zabbix    1474   10 17:20 ?      00:00:00 zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
zabbix    147514740 17:20 ?      00:00:00 zabbix_agentd: collector          
zabbix    147614740 17:20 ?      00:00:00 zabbix_agentd: listener #1
zabbix    147714740 17:20 ?      00:00:00 zabbix_agentd: listener #2
zabbix    147814740 17:20 ?      00:00:00 zabbix_agentd: listener #3
zabbix    147914740 17:20 ?      00:00:00 zabbix_agentd: active checks #1    
root      148813740 17:28 pts/0    00:00:00 grep zabbix

  

  # lsof -i:10050    #####查看开启侦听的端口
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
zabbix_ag 9106 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)
zabbix_ag 9107 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)
zabbix_ag 9108 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)
zabbix_ag 9109 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)
zabbix_ag 9110 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)
zabbix_ag 9111 zabbix    4uIPv4 277432      0t0TCP *:zabbix-agent (LISTEN)

  5、配置 server页面
  Configuration-----> Hosts   ------->Create host
  

  

  
  From:http://blog.iyunv.com/avilifans/article/details/16800307

  
页: [1]
查看完整版本: linux 安装zabbix监控工具