1、zabbix-2.4.6版本源码安装
wget http://sourceforge.net/projects/zabbix/files/ZABBIX\ Latest\ Stable/2.4.6/zabbix-2.4.6.tar.gz
注意连接中的空格需要使用转义字符,不然会报错
2、安装数据库,如果没有数据库的话
yum install mysql -y
3、这里我们需要为zabbix的数据库特地穿件一个普通用户,至少官网是这么说,不要用特权用户
groupadd zabbix useradd -g zabbix zabbix
4、创建数据库(数据名、用户名和密码都是zabbix,你可以根据自己的意愿编写,赋予用户权限和标记编码)
shell>service mysql start shell>mysql -uroot -ppassqord mysql>mysql> create database zabbix character set utf8; 创建数据库 mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; 赋予zabbix用户权限,设置数据库密码 mysql>\q shell>
5、定义zabbix所要用到的数据表结构和数据
cd /zabbix-2.4.6/database/mysql/
# mysql -uzabbix -pzabbix zabbix < schema.sql # mysql -uzabbix -pzabbix zabbix < images.sql # mysql -uzabbix -pzabbix zabbix < data.sql
数据库 用户名 密码 主句哭名 导入的数据
6、编译,安装
./configure --prefix=/usr/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl make && make install
--prefix指定zabbix安装目录,--enable-server 支持zabbix服务器,--enable-agent支持zabbix代理,--enable-proxy 支持zabbix代理服务器,--with-mysql 使用MySQL客户端库可以选择指定路径mysql_config,--with-net-snmp 使用net - snmp软件包,择性地指定路径NET - SNMP配置,--with-libcurl 使用curl包。
7、安装php
yum install php*
上面的如果你想要完全体验一下源码安装的过程的话,可以根据官网上的需求的安装包,一个个源码包下下来编译安装
8、添加服务端口
vim /etc/services zabbix-agent 10050/tcp #Zabbix Agent zabbix-agent 10050/udp #Zabbix Agent zabbix-trapper 10051/tcp #Zabbix Trapper zabbix-trapper 10051/udp #Zabbix Trapper eof
正常的话一般在都包含这几项,没有 的话,手动添加把
9、修改zabbix 主配置文件
默认make install 之后在/usr/zabbix下会出现一堆文件,/etc /bin 等
vim /etc/usr/local/zabbix/etc/zabbix_server.conf LogFile=/tmp/zabbix_server.log ##日志位置,根据需求修改; PidFile=/tmp/zabbix_server.pid ##PID 所在位置 DBHost=localhost ##如果不是在本机,请修改 DBName=zabbix ##数据库名称 DBUser=zabbix ##数据库用户名 DBPassword=zabbix ##数据库密码 DBSocket=/var/lib/mysql/mysql.sock #数据库的连接文件 ,注意路径,最好自己find一下在填写,想我开始直接默认的路径结果报错server一直起不来
10、zabbix_server ,启动脚本编写
server启动脚本的位置放置
cp zabbix-2.4.6/misc/init.d/fedora/core/zabbix_server /etc/init.d 如果是做本机的测试,建议也把agentd也复制过去,对于linux版本(fedora)的选择根据自己的实际的linux版本选 chmod +x /etc/init.d/zabbix_server
vim /etc/init.d/zabbix_server BASEDIR=/usr/zabbix ##修改这个,zabbix 的安装目录 CONFILE=$BASEDIR/etc/zabbix_server.conf ##添加这一行,定义配置文件位置 #搜索start,修改启动选项,默认是去/etc 下去找配置文件的 action $"Starting $BINARY_NAME: " $FULLPATH -c $CONFILE zabbix_agentd中添加: BASEDIR=/usr/zabbix
测试服务能否正常开启
/etc/init.d/zabbix_server start /etc/init.d/zabbix_agentd start netstat -anp | grep zabbix #查看服务是否起来了
11、PHP,zabbix的前端
cd cd zabbix-2.4.6/frontends/php/ cp -a . /var/www/html/zabbix/ #这是apache的配置文件的路径,不同的系统(版本)可能会有不同 chown -R apache:apache /var/www/html/zabbix
12、php连接数据库设置
cd /var/www/html/zabbix/conf cp zabbix.conf.php.example zabbix.conf.php vim zabbix.conf.php
<?php // Zabbix GUI configuration file. global $DB; $DB["TYPE"] = 'MYSQL'; $DB["SERVER"] = 'localhost'; $DB["PORT"] = '3306'; $DB["DATABASE"] = 'zabbix'; $DB["USER"] = 'zabbix'; $DB["PASSWORD"] = 'zabbix'; // Schema name. Used for IBM DB2 and PostgreSQL. $DB["SCHEMA"] = ''; $ZBX_SERVER = 'localhost'; $ZBX_SERVER_PORT = '10051'; $ZBX_SERVER_NAME = ''; $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG; ?>
粗笔标出来的一般是必需更改的,其他的是自己情况而定
13、到这里zabbix的源码安装基本就完了,当然了后面的完善才刚开始
service zaabix_server restart service zabbix_agentd restart service httpd restart service mysqld restart
打开浏览器,http://zabbix_server_IP/zabbix
Admin/zabbix
我的几个出错的位置,希望能帮到你,欢迎小伙伴提意见
1、configure: error: Not found curl Library
yum install libcur* -y
若./configure出现错误configure: error:Invalid NET-SNMP directory - unable to find net-snmp-config,
可以通过yum install net-snmp-devel来解决。
2、关于开启zabbix服务的时候不报错,但是查询服务时候开启的时候却查不到
vim /tmp/zabbix_server.log
connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
我们首先检查我们定义的sock的路径是否正确,find查询是否真的在这个路径下