1. 配置lnmp环境

首先配置Nginx+mysql+php-fpm的系统环境,具体配置见另一篇文章

2. 编译安装zabbix

2.1 下载并解压zabbix

可以到zabbix官网下载zabbix3.2的最新版本,大版本安装方式基本相同,这里以zabbix3.2.5为例。

tar -xvf zabbix-3.2.5.tar.gz -C /usr/local
mv /usr/local/zabbix-3.2.5 /usr/local/zabbix

添加zabbix用户

useradd -s /sbin/nologin -M zabbix
chown -R zabbix.zabbix /usr/local/zabbix

创建zabbix的log目录,方便查找问题

mkdir -pv /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix

创建pid文件目录

mkdir -pv /var/run/zabbix
chown zabbix.zabbix /var/run/zabbix


2.2 编译安装zabbix-server和zabbix-agent

先安装一些依赖包:

yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel 
yum -y install fping unixODBC OpenIPMI

编译安装zabbix-server和zabbix-agent

cd /usr/local/zabbix
./configure --prefix=/usr/local/zabbix-server --enable-server  --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2

编译安装没有问题之后:

make
make insatll

2.3 初始化相关

编译安装好之后,要进行一些初始化操作。

2.3.1 初始化数据库

使用root用户登录数据库,进入mysql命令行模式

mysql>  create database zabbix character set utf8;
mysql>  grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';  
#这里是为了测试方便,密码设置的比较简单,生产环境中密码必须要复杂

把3个sql导入到数据库中,一定要注意顺序:

cd /usr/local/zabbix/database/mysql/
mysql -uzabbix -h192.168.102.130 -p zabbix < schema.sql 
mysql -uzabbix -h192.168.102.130 -p zabbix < images.sql 
mysql -uzabbix -h192.168.102.130 -p zabbix < data.sql

2.3.2 设置conf文件

编译安装之后,在/usr/local目录下生成了一个zabbix-server的目录,zabbix-server的配置文件和zabbix-get,zabbix-sender命令都在这个目录下。

zabbix安装中文包 zabbix编译安装_html

cd /usr/local/zabbix-server/etc
vim  zabbix_server.conf

下面配置zabbix_server.conf文件,主要是下面几项:

LogFile=/var/log/zabbix/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
#注意,上面的两个文件夹zabbix一定要有权限,否则zabbix-server会启动不起来
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306

配置zabbix_agnet.conf文件,如下:

LogFile=/var/log/zabbix/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server

2.3.3 配置zabbix-server和zabbix-agnet服务

在/usr/local/zabbix-server/sbin目录下有两个命令,我们可以使用它们直接启动zabbix-server和zabbix-agent

/usr/local/zabbix-server/sbin/zabbix_server
/usr/local/zabbix-server/sbin/zabbix_agentd

可以使用命令查看相应的端口是否已经监听。

zabbix安装中文包 zabbix编译安装_php_02

上面的命令启动服务还可以,但是关闭的话比较麻烦,还是使用service相对方便一些。下面介绍如何配置这两个服务,使用service来管理。

配置zabbix-server服务:

ln -sv /usr/local/zabbix-server/sbin/zabbix_server /usr/local/sbin/zabbix_server
ln -sv /usr/local/zabbix/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix-server

zabbix安装中文包 zabbix编译安装_zabbix安装中文包_03

 配置zabbix-agent服务:

ln -sv /usr/local/zabbix-server/sbin/zabbix_agentd /usr/local/sbin/zabbix_agentd
ln -sv /usr/local/zabbix/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix-agent

zabbix安装中文包 zabbix编译安装_mysql_04

 看到上面的截图说明配置成功了。

2.4 配置web界面

2.4.1 配置zabbix-web文件

将zabbix-web相关的文件复制到/var/www/html目录下

cd /usr/local/zabbix/frontends
cp -R php /var/www/html/zabbix
#/var/www/html是nginx的主目录

2.4.2 配置zabbix-web界面

service nginx restart
service php-fpm start

使用浏览器输入地址直接访问,可以看到如下界面:

zabbix安装中文包 zabbix编译安装_mysql_05

第二步:检测php相关的配置,如果有不符合的一定要修改,然后重启php-fpm,刷新页面即可。

zabbix安装中文包 zabbix编译安装_mysql_06

第三步:配置数据库连接

zabbix安装中文包 zabbix编译安装_mysql_07

第四步:配置连接zabbix-server

如果是分布式部署的,zabbix-web和zabbix-server不在一台主机上,这个地址一定要配置好。

zabbix安装中文包 zabbix编译安装_zabbix安装中文包_08

第五步:确认配置

zabbix安装中文包 zabbix编译安装_php_09

第六步:将配置写入到文件中

应该会出现如下界面:

zabbix安装中文包 zabbix编译安装_php_10

这个不用着急,因为zabbix用户没有对/var/www/html/zabbix的操作权限。我们把配置文件下载下来,自己编辑就行了。

zabbix安装中文包 zabbix编译安装_zabbix安装中文包_11

# vim /var/www/html/zabbix/conf/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 = 'zabbix server';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

编辑好之后保存即可。然后按F5刷新界面,可以看到安装成功了。

可以看到如下

zabbix安装中文包 zabbix编译安装_mysql_12

然后进入到登录界面,如下:

zabbix安装中文包 zabbix编译安装_php_13

默认的登录账户密码为:admin/zabbix。登陆进去后,看到如下界面:

zabbix安装中文包 zabbix编译安装_mysql_14

2.4.3 配置中文界面

zabbix默认的是英文界面,我们也可以设置中文界面,如下:

zabbix安装中文包 zabbix编译安装_zabbix安装中文包_15

 

zabbix安装中文包 zabbix编译安装_mysql_16

 

zabbix安装中文包 zabbix编译安装_zabbix安装中文包_17

可以看到已经变成中文了。

但是中文显示,在显示图形的时候还有一些乱码的问题,如下:

zabbix安装中文包 zabbix编译安装_html_18

下面解决乱码的问题,我们需要下载一个中文支持补丁包,替换掉原来的字体包。

wget http://down1.chinaunix.net/distfiles/ttf-arphic-uming_0.0.20050501-1.tar.gz
tar xf /root/ttf-arphic-uming_0.0.20050501-1.tar.gz
#将原来的语言包进行备份
mv /var/www/html/zabbix/fonts/DejaVuSans.ttf /root
#替换为新的语言包
mv /root/ttf-arphic-uming-0.0.20050501/uming.ttf /var/www/html/zabbix/fonts/DejaVuSans.ttf
#重启nginx
service nginx restart

刷新一下界面,如下:

zabbix安装中文包 zabbix编译安装_html_19

 可以看到,乱码已经没有了。