Zabbix 服务端的安装过程

一、Zabbix简介

Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

Zabbix由2部分构成,zabbix server与可选组件zabbix agent。

Zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,可以运行在众多平台上。

 

二、基础组件安装

 

zabbix的安装需要LAMP环境。

# yum install php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp   net-snmp-devel perl-DBI

# yum install httpd mariadb*

 

三、数据库配置

#systemctl start mariadb.service

# mysql -u root -p

Enter password:                  ##输入MySQL密码,默认为空

MariaDB [(none)]> create database zabbix character set utf8;

##创建数据库zabbix,并且数据库编码使用utf8

MariaDB [(none)]> insert into mysql.user(Host,User,Password) values(‘localhost’,’zabbix’,password(‘zabbix’));    ##新建账户zabbix,密码zabbix

MariaDB [(none)]>  flush privileges;      ##刷新系统授权

MariaDB [(none)]> grant all on zabbix.* to ‘zabbix’@’127.0.0.1’ identified by ‘zabbix’ with grant option;            ##允许账户能从本机连接至数据库zabbix

MariaDB [(none)]>  flush privileges;

 

四、zabbix的安装和配置

①下载并进行编译安装

# wgethttp://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.1/zabbix-3.0.1.tar.gz

# tar -zxvf zabbix-3.0.1.tar.gz

# cd zabbix-3.0.1

 

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

–prefix—-> 指定zabbix安装目录

–enable-server—-> 支持zabbix服务器
–enable-agent—-> 支持zabbix代理
–enable-proxy—-> 支持zabbix代理服务器

–with-libcurl—-> 使用curl包

–with-net-snmp—-> 使用net-snmp软件包,选择性地指定路径NET-SNMP配置

–with-mysql=/usr/bin/mysql_config 使用MySQL客户端库可以选择指定路径mysql_config
注:如出现configure: error: MySQL library not found错误,是因为缺少mariadb-devel该软件         包,yum install mariadb-devel进行安装

# make

# make install

 

 

 

②导入数据库

# mysql -u root -p

MariaDB [(none)]> use zabbix;

MariaDB [zabbix]> source /root/zabbix-3.0.1/database/mysql/schema.sql

MariaDB [zabbix]> source /root/zabbix-3.0.1/database/mysql/data.sql

MariaDB [zabbix]> source /root/zabbix-3.0.1/database/mysql/images.sql

MariaDB [zabbix]> quit

注:导入请按以上顺序导入,否则会出现错误情况。

 

 

③添加服务器对应的端口(可省略)

[root@localhost ~]# cat /etc/services |grep zabbix

zabbix-agent    10050/tcp               # Zabbix Agent      //客户端

zabbix-agent    10050/udp               # Zabbix Agent

zabbix-trapper  10051/tcp               # Zabbix Trapper    //服务端

zabbix-trapper  10051/udp               # Zabbix Trapper

注意需要先 添加用户:

groupadd zabbix #创建用户组zabbix

useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中

 

④拷贝相关的配置文件到/etc下并进行相关配置修改

[root@localhost ~]# mkdir -p /etc/zabbix

[root@localhost ~]# cp -r zabbix-2.4.5/conf/* /etc/zabbix/

[root@localhost ~]# chown -R zabbix:zabbix /etc/zabbix

[root@localhost ~]#ln -s /usr/local/zabbix/etc /etc/zabbix/

[root@localhost ~]# ln -s /usr/local/zabbix/bin/* /usr/bin/

[root@localhost ~]# ln -s /usr/local/zabbix/sbin/* /usr/sbin/

a).修改zabbix_server.conf

[root@localhost ~]# vi /etc/zabbix/zabbix_server.conf

 

修改后如下: vi /usr/local/zabbix/etc/zabbix_server.conf

[root@localhost etc]# cat /usr/local/zabbix/etc/zabbix_server.conf|grep -n ^[^#]

12:ListenPort=10051

38:LogFile=/tmp/zabbix_server.log

77:DBHost=localhost

87:DBName=zabbix

103:DBUser=zabbix

111:DBPassword=zabbix

297:ListenIP=0.0.0.0

447:AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts#zabbix运行脚本存放目录

 

b).修改zabbix_agentd.conf

[root@localhost ~]# vi /usr/local/zabbix/etc/zabbix_agentd.conf

 

修改后如下:

[root@localhost ~]# cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep -n ^[^#]

11:PidFile=/tmp/zabbix_agentd.pid            ##进程PID

21:LogFile=/tmp/zabbix_agentd.log            ##日志保存位置

59:EnableRemoteCommands=1                 ##允许执行远程命令

81:Server=127.0.0.1                  ##agent端的ip

122:ServerActive=127.0.0.1

133:Hostname=Zabbix server          ##必须与zabbix创建的hostname相同

252:Include=/usr/local/etc/zabbix_agentd.conf.d/

265:UnsafeUserParameters=1            ##启动自定义key

 

 

五、修改PHP相关参数

# vi /etc/php.ini

384 max_execution_time = 300

394 max_input_time = 300

405 memory_limit = 128M

800 upload_max_filesize = 2M

878 date.timezone = Asia/Shanghai

672 post_max_size = 28M

 

六、配置web站点

# cd zabbix-2.4.5/

# cp -r frontends/php /var/www/html/zabbix

 

②修改httpd.conf的参数

# vi /etc/httpd/conf/httpd.conf

163 <IfModule dir_module>

164     DirectoryIndex index.html index.php

165 </IfModule>

 

③关闭SELinux:

a、临时关闭(不用重启机器):

# setenforce 0                       ##设置SELinux 成为permissive模式  (关闭SELinux)

# setenforce 1                       ##设置SELinux 成为enforcing模式     (开启SELinux)

 

 

b、修改配置文件需要重启机器:

# vi /etc/selinux/config

将SELINUX=enforcing 改为SELINUX=disabled

需重启机器

 

七、安装web界面

#systemctl start httpd.service  #启动apache

在浏览器中输入http://zabbixserveip/zabbix进入zabbix的web配置页面=====》

 

这里出现权限报错,将配置文件下载下来保存到/var/www/html/zabbix/conf/zabbix.conf.php文件中。如果手动写入配置文件之后如果还报错,可以忽略,将浏览器关闭并重新打开连接即可。登录账号admin,登录密码zabbix:

vim /var/www/html/zabbix/conf/zabbix.conf.php    //手动写入配置
———————————————————->
<?php
// Zabbix GUI configuration file.
global $DB;

$DB[‘TYPE’]    = ‘MYSQL’;
$DB[‘SERVER’]  = ‘192.168.19.66’;
$DB[‘PORT’]    = ‘0’;
$DB[‘DATABASE’] = ‘zabbix’;
$DB[‘USER’]    = ‘zabbix’;
$DB[‘PASSWORD’] = ‘123456’;

// Schema name. Used for IBM DB2 and PostgreSQL.
$DB[‘SCHEMA’] = ”;

$ZBX_SERVER      = ‘192.168.19.74’;
$ZBX_SERVER_PORT = ‘10051’;
$ZBX_SERVER_NAME = ”;

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
?>

 

 

 

 

中文支持:

zabbix实际是有中文语言的,我们可以通过修改web端源文件来开启中文语言。

修改你的 locales . inc . php 这个文件

‘zh_CN’ => [‘name’ => _(‘Chinese (zh_CN)’), ‘display’ => true], #也就是把false改为true

然后点击zabbix监控网页端右上角人头头像修改为中文语言即可。

更换语言后,图形会出现乱码,我们做如下修改即可。

修改你的defines.inc.php 这个文件

#修改第93

define(‘ZBX_FONT_NAME’, ‘msyh’);

#修改第45行改为

define(‘ZBX_GRAPH_FONT_NAME’, ‘msyh’)

然后下载微软雅黑字体,改名为msyh传入/home/www/zabbix/fonts 目录下即可。

解决zabbix 乱码方法

 

找到本地c:\windoes\Fonts\simkai.ttf(楷体)上传到服务器zabbix网站目录fonts目录下

 

修改 zabbix.php 配置文件

 

# cd /var/www/html/zabbix/  #我的zabbix 安装目录

#sed -i ‘s/DejaVuSans/simkai/g’ ./include/defines.inc.php

 

查看zabbix 乱码处理结果

 

Leave a Reply

Your email address will not be published. Required fields are marked *