3ewsd 发表于 2012-10-26 09:19:08

zabbix2.0.3安装配置

监控服务器: Hostname: station3.example.com   IP: 192.168.1.3   OS: CentOS5.7 32bit
一、yum安装LAMP
1.1安装主程序
# yum -y install httpd php mysql mysql-server php-mysql
1.2安装apache扩展
# yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
1.3安装php扩展
# yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath
1.4安装mysql扩展
# yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
1.5编译的apache加载php
# vim httpd.conf
增加391 DirectoryIndex index.php index.html index.html.var      #php目录索引
1.6开机启动
# service httpd start
# chkconfig httpd on
# service mysqld start
# chkconfig mysqld on
1.7设置mysql数据库root帐号密码。
# mysqladmin -u root password 'redhat'   
1.8测试apache与php、mysql的连接:
# cd /var/www/html
# vim index.php
it works!
< ?php
$link=mysql_connect('localhost','root','redhat');
if($link)
   echo "success";
else
   echo "fail";
?>
测试成功

二、Zabbix 安装
2.1yum安装zabbix需要的其他组件
# yum -y install net-snmp-devel curl-devel
2.2添加zabbix用户
# groupadd zabbix         添加zabbix组            
# useradd zabbix -g zabbix   新建zabbix用户并将其加入到zabbix组
2.3解压软件
# tar zxvf zabbix-2.0.3.tar.gz -C /usr/src
# cd /usr/src/zabbix-2.0.3
2.4为zabbix创建数据库并添加用户
# /etc/init.d/mysqld start
Starting MySQL                     
# mysql -uroot -predhat
mysql> create database zabbix character set utf8;#新建一个数据库叫zabbix
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';   
#给zabbix这个数据库授权,只允许zabbix这个用户通过本地登录,zabbix用户的密码为redhat
mysql> flush privileges;
2.5将zabbix源码包中的数据导入到新建的zabbix数据库
注:这一步是zabbix2.3与其他旧版不同的,在版本2.3里数据库的结构和名字都变了,而且导入也要严格按照顺序来。
# mysql -uzabbix -p'redhat' zabbix < /usr/src/zabbix-2.0.3/database/mysql/schema.sql      
#这个是zabbix的数据库表结构,要先导入。
# mysql -uzabbix -p'redhat' zabbix < /usr/src/zabbix-2.0.3/database/mysql/images.sql
# mysql -uzabbix -p'redhat' zabbix < /usr/src/zabbix-2.0.3/database/mysql/data.sql
2.6编译安装
# yum -y install gcc*先安装gcc库,否则编译报错找不到C编译器
# ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
*******************************
Now run 'make install'   
*******************************
# make install
2.7 为zabbix server添加端口
# vim /etc/services
添加如下信息
zabbix-agent    10050/tcp                     # Zabbix Agent
zabbix-agent    10050/udp                     # Zabbix Agent
zabbix-trapper10051/tcp                     # Zabbix Trapper
zabbix-trapper10051/udp                     # Zabbix Trapper
2.8 配置文件目录软连接
# ls /usr/local/zabbix/etc
zabbix_agent.conf    zabbix_agentd.conf    zabbix_proxy.conf    zabbix_server.conf
zabbix_agent.conf.dzabbix_agentd.conf.dzabbix_proxy.conf.dzabbix_server.conf.d
# ln -s /usr/local/zabbix/etc /etc/zabbix
2.9更改配置文件中数据库相关的用户名密码
# vim /etc/zabbix/zabbix_server.conf
修改以下三项:
DBName=zabbix
DBUser=zabbix
DBPassword=redhat
注:DBPassword 默认是被注释掉的
# vim /etc/zabbix/zabbix_agentd.conf
Hostname=station3.example.com
ServerActive=192.168.1.3:20051

2.10给zabbix服务端程序做软链接
# ll /usr/local/zabbix/bin
total 428
-rwxr-xr-x 1 root root 195326 Oct 24 13:59 zabbix_get
-rwxr-xr-x 1 root root 230852 Oct 24 13:59 zabbix_sender
# ll /usr/local/zabbix/sbin
total 5048
-rwxr-xr-x 1 root root547886 Oct 24 13:59 zabbix_agent
-rwxr-xr-x 1 root root622208 Oct 24 13:59 zabbix_agentd
-rwxr-xr-x 1 root root 1878726 Oct 24 13:59 zabbix_proxy
-rwxr-xr-x 1 root root 2097879 Oct 24 13:59 zabbix_server
# cd /usr/local/zabbix/bin/
# for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
# cd /usr/local/zabbix/sbin/
# for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
2.11添加数据库Lib文件位置到/etc/ld.so.conf中,并使其生效
# echo "/usr/local/mysql-5.1.48/lib/mysql/" >> /etc/ld.so.conf
# ldconfig
2.12拷贝相应的web程序到相关WEB服务目录下
# cp -r /usr/src/zabbix-2.0.3/frontends/php/ /var/www/html/zabbix/
# chown -R zabbix.zabbix /var/www/html/zabbix
2.13拷贝zabbix服务端和客户端启动脚本到/etc/init.d目录下.
注:这个地方存放脚本的目录结构也有变化,没有redhat这个目录,所以我cp的fedora目录里的启动脚本,具体区别可以阅读README。关键是是看zabbix_xxxx的文件结构符合redhat的Sys V结构。
# ll /usr/src/zabbix-2.0.3/misc/init.d/fedora/core5
total 8
-rwxr-xr-x 1 1005 1005 541 Oct3 22:41 zabbix_agentd
-rwxr-xr-x 1 1005 1005 543 Oct3 22:41 zabbix_server
# cp /usr/src/zabbix-2.0.3/misc/init.d/fedora/core5/zabbix_server /etc/init.d
# cp /usr/src/zabbix-2.0.3/misc/init.d/fedora/core5/zabbix_agentd /etc/init.d
2.14修改启动脚本
# vim /etc/init.d/zabbix_server
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"修改zabbix_server实际位置
# service zabbix_server start
Starting Zabbix Server:                                    
# vim /etc/init.d/zabbix_agentd
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"
# service zabbix_agentd start
Starting Zabbix Agent:                                    
# chkconfig zabbix_server on
# chkconfig zabbix_agentd on
2.15修改PHP配置文件php.ini内容
# vim /etc/php.ini
date.timezone = Asia/Shanghai
post_max_size = 32M
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
mbstring.func_overload = 2
# service httpd restart
Stopping httpd:                                          
Starting httpd:                                          
四、浏览器安装
(1)浏览器打开刚安装的zabbixhttp://192.168.1.3/zabbix






# yum -y install php-bcmath   yum安装的php直接
自己编译php,那么在编译的时候加--enable-bcmath
cd php-5.2.7/ext/bcmath
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install (make 可以得到so路径)
so路径拷贝到extension路径
vim php.ini
extension=bcmath.so
重启apache
检测php组件,全部OK才可以点击next


(3)连接zabbix数据库

(4)设置zabbix服务IP和端口,name可以忽略


如果不能保存配置文件,点击Down将php生成的文件下载到本地,然后在上传到/var/www/html/zabbix/conf下,也可以用本地记事本打开zabbix.conf.php,复制其中的内容,在 vim /var/www/html/zabbix/conf/zabbix.conf.php,将刚才复制的内容粘贴,保存退出,在点击try连接测试,出现下图的OK即可。
(5)输入用户名密码登录
默认的用户名:admin   密码:zabbix



三、排错过程
安装完成,但有过问题,zabbix server竟然不能监控自己。 即使重启服务,任然报错。not running, not monitored.
# service zabbix_server restart
#service zabbix_agentdd restart

排错思路:1. 服务2.端口   3.配置文件 4. 日志
检查对应进程都已经启动
# ps aux | grep zabbix
zabbix    42290.00.1   6016   736 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42420.00.1   6016   800 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42430.00.1   6016   608 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42440.00.1   6016   608 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42450.00.1   6016   608 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42460.00.1   6032   812 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_agentd
zabbix    42480.00.4102642484 ?      S    09:31   0:00 /usr/local/zabbix/sbin/zabbix_server
root   151270.00.1   4880   668 pts/1    R+   12:56   0:00 grep zabbix
查看对应的日志错误,默认在/tmp/zabbix-*.log
# ll /tmp | grep zabbix
-rw-rw-r-- 1 zabbix zabbix    900 Oct 25 12:55 zabbix_agentd.log
-rw-rw-r-- 1 zabbix zabbix      4 Oct 25 09:31 zabbix_agentd.pid
-rw-rw-r-- 1 zabbix zabbix 362401 Oct 25 13:30 zabbix_server.log
-rw-rw-r-- 1 zabbix zabbix      4 Oct 25 09:31 zabbix_server.pid
# tail /tmp/zabbix_server.log
4248:20121025:133318.754 connection to database 'zabbix' failed: Access denied for user 'root'@'localhost' (using password: NO)
4248:20121025:133318.755 Database is down. Reconnecting in 10 seconds.
这是未将/usr/local/zabbix/etc/zabbix.conf.php中DB参数修改,连接失败所致。
# vim /etc/zabbix/zabbix_server.conf
修改以下三项:
DBName=zabbix
DBUser=zabbix
DBPassword=redhat
# cat /tmp/zabbix_server.log
17376:20121025:143052.725 cannot send list of active checks to : host not found
是因为zabbix_agentd.conf未设置IP:Port
# vim /etc/zabbix/zabbix_agentd.conf
ServerActive=192.168.1.3:20051
在configuration-> Hosts面板中Status,启用monitored, 才能监控server。









cike0415 发表于 2013-3-14 04:39:25

我抢、我抢、我抢沙发~

lchl0388 发表于 2013-5-15 23:23:58

支持一下:lol

hujh20 发表于 2013-5-16 17:16:38

女,喜甜食,甚胖!该女有一癖好:痛恨蚂蚁,见必杀之。问其故曰:这小东西,那么爱吃甜食,腰还那么细!

yangcctv 发表于 2013-5-17 13:26:30

看帖回帖是美德!:lol

123sw 发表于 2013-5-18 09:06:47

学习了,谢谢分享、、、

dog1888 发表于 2013-5-19 05:37:11

所有刻骨铭心的爱都灵魂游离于床上的瞬间!
页: [1]
查看完整版本: zabbix2.0.3安装配置