作为一款优秀的监控软件,zabbix不但在故障发生时给予警报,并且还可以产生相关的图表,可以分析网络流量、CUP负载等状况。
1、下载并解压以及yum相关环境
-
yum install net-snmp-devel php-bcmath #视实际情况系统环境,如果后面欠缺某些库,可以再次yum
-
wget http://superb-dca2.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.5/zabbix-2.0.5.tar.gz
-
tar xvf zabbix-2.0.5.tar.gz
-
cd zabbix-2.0.5
2、创建并导入数据库
确保安装好数据库(这里以mysql为例,zabbix支持mysql/DB2/oracle/postgresql/sqlite3等),导入数据库(可以给zabbix分配一个独立的mysql账号
-
#登录mysql后
-
grant all on zabbix.* to zabbix@127.0.0.1 identified by 'zabbix123';
-
#在shell下执行,zabbix为刚刚分配的mysql用户
-
mysql -uzabbix -p -h127.0.0.1 -e 'create database zabbix character set utf8'
-
mysql -uzabbix -p -h127.0.0.1 zabbix < database/mysql/schema.sql
-
mysql -uzabbix -p -h127.0.0.1 zabbix < database/mysql/images.sql
-
mysql -uzabbix -p -h127.0.0.1 zabbix < database/mysql/data.sql
3、编译安装zabbix
-
# --enable-server 为编译服务端
-
#--enable-agent 为编译客户商朝
-
#--with-mysql=/usr/local/mysql/bin/mysql_config 为提供mysql环境信息给zabbix
-
./configure --prefix=/usr/local/zabbix \
-
--enable-server \
-
--with-mysql=/usr/local/mysql/bin/mysql_config \
-
--with-net-snmp --with-libcurl --enable-agent
-
make install
4、修改配置
vi /usr/local/zabbix/etc/zabbix_server.conf
以下为需要修改的数据库信息(注意不要有重复的,以免引起冲突)
-
DBHost=127.0.0.1
-
DBName=zabbix
-
DBUser=zabbix
-
DBPassword=zabbix123
-
DBPort=3306 #如果数据库是用sock文件的方式,这里可以是sock文件的路径。
zabbix提供的启动脚本是在安装文件的misc/init.d/目录下,但2.0.5并没有提供redhat(centOS)的版本。。。挺奇怪,这里我是用旧版的启动脚本。
zabbix_server.txt
下载zabbix_server.txt文件,并且改名为zabbix_server,复制到/etc/init.d目录下,并给予可执行权限chmod +x /etc/init.d/zabbix_server
如果上面都按照我的安装步骤,默认不用修改zabbix_server文件了,否则需要修改BASEDIR PIDFILE 这两项。
到这里,zabbix的服务端已经安装好。开启zabbix服务端
service zabbix_server start
如果有error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
/etc/init.d/zabbix_server start: zabbix_server could not be started报错,是因为找不到mysql库,执行 ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18 即可。
5、配置zabbix的WEB服务,
cp -aR frontends/php/ /www/zabbix/
chown www:www /www/zabbix/
打开php.ini文件,找到date.timezone这一行,把时区设置为亚洲/上海,并且这三项至少要设置为:
-
date.timezone ='Asia/Shanghai'
-
-
post_max_size = 16M
-
max_execution_time = 300
-
max_input_time = 300
配置nginx(这里是nginx+php-fpm的方式)
打开/usr/local/nginx/config/nginx.conf,加入一个新的server项
-
server {
-
listen 80;
-
server_name zabbix.test.com;
-
# allow 192.168.1.1; #可以限制哪些IP可以访问
-
# allow 192.168.1.2;
-
# deny all;
-
root /data/www/zabbix/;
-
location / {
-
index index.html index.htm index.php;
-
}
-
location ~ \.php$ {
-
fastcgi_pass 127.0.0.1:9000;
-
fastcgi_index index.php;
-
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
-
include fastcgi_params;
-
}
-
}
如果是用apache,可以这样
-
<VirtualHost *:80>
-
DocumentRoot "/www/zabbix/"
-
ServerName zabbix.test.com
-
<Directory />
-
Order allow,deny
-
Allow from all
-
# Order deny,Allow
-
# Allow from 192.168.1.1 192.168.1.2
-
# Deny from all
-
</Directory>
-
</VirtualHost>
配置好之后,重启nginx或者httpd,打开zabbix.test.com(域名自己定义,有效的就可以),便可以看到安装页面。
按next一步步下去便可。如果提示不支持某
php模块,假如php是rpm安装,直接yum即可,如果php是源代码安装,需要进去PHP安装文件目录,然后
-
cd ext/xxx #选择进入需要安装的模块目录
-
/usr/local/php/bin/phpize
-
./configure --with-php-config=/usr/local/php/bin/php-config
-
make && make install
-
#之后会提示so文件在哪个目录,打开php.ini文件,加入一行,重启php-fpm即可。
-
extension = "xxx.so"
WEB端安装完成之后,通过WEB页面登录zabbix,默认管理员账号密码为 admin zabbix
6、客户端安装。
上面的安装已经包含客户端安装,如果在其它服务器上安装客户端。只需要进入zabbix安装目录
-
./configure --prefix=/usr/local/zabbix --enable-agent
-
make install
vi /usr/local/zabbix/etc/zabbix_agentd.conf
修改Server=server_ip为对应的zabbix_server服务器IP。
zabbix_agent.txt
下载zabbix_agent.txt文件,改名为zabbix_agent,移到/etc/init.d/目录下并给予可执行权限chmod +x /etc/init.d/zabbix_agent
启动zabbix客户端服务 service zabbix_agent start
阅读(1152) | 评论(0) | 转发(0) |