1、什么是zabbix:

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

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

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

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等。

功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上;

2、zabbix系统架构:

数据采集——数据分析——数据存储——展示、告警;


9.4、安装zabbix(1)_mysql


9.4、安装zabbix(1)_mysql_02

本章使用的是zabbix-agent的被动模式;

3、zabbix版本的选择:

​ https://www.zabbix.com/life_cycle_and_release_policy​

半年更新一次(支持6个月)、一年半更新一个大版本为稳定版(支持5年);

4、zabbix4.0软件要求:

​ https://www.zabbix.com/documentation/4.0/manual/installation/requirements​

5、时间同步:

crontab -e
*/5 * * * * /usr/sbin/ntpdate ntp.aliyun.com $>/dev/null

6、zabbix服务器设置:

服务器的主机名

节点

ip地址

master-node1

控制节点

172.16.1.90

slave-node1

从节点

172.16.1.91



7、控制节点安装:

(1)安装zabbix4.0的源:

rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

(2)由于国内较慢,更改为阿里的 zabbix yum 源:

vim /etc/yum.repos.d/zabbix.repo

[zabbix]

name=Zabbix Official Repository - $basearch

baseurl=http://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/$basearch/

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591


[zabbix-non-supported]

name=Zabbix Official Repository non-supported - $basearch

baseurl=http://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX

gpgcheck=1

(3)验证yum源的有效性:

yum list | grep zabbix

yum repolist enabled

(4)安装支持 mysql 的 zabbix-server 服务:

yum install zabbix-server-mysql -y

(5)安装支持 mysql 的 zabbix-web 前端服务:

yum install zabbix-web-mysql -y

(6)安装数据库:

1)安装:

yum install -y mariadb-server

2)查看版本:

mysql -V

mysql Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1

3)启动mariadb并加入到开机自启中:

systemctl start mariadb.service

systemctl enable mariadb.service

4)查看端口号:

netstat -tunlp | grep mysqld

3306

5)初始化mariadb:

mysql_secure_installation

6)创建 zabbix-server、zabbix-web 服务需要连接的库:

mysql -uroot -p123456

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

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@"172.16.1.%" identified by "123456";

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;

Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> quit;

Bye

7)初始化 zabbix 数据库:

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uroot -p123456 zabbix

#验证数据是否导入成功:

mysql -uroot -p123456 -e "use zabbix;show tables"

(7)配置 zabbix-server:

1)修改 zabbix-server 连接数据库的配置文件(部分修改):

vim /etc/zabbix/zabbix_server.conf

ListenPort=10051

DBHost=172.16.1.90

DBName=zabbix

DBUser=zabbix

DBPassword=123456

DBPort=3306

ListenIP=172.16.1.90

Timeout=30

2)启动 zabbix-server 服务并加入到开机自启动:

systemctl start zabbix-server.service

systemctl enable zabbix-server.service

3)查看 zabbix-server 的端口号:

[root@controller-node1 ~]# netstat -tunlp | grep zabbix_server

tcp 0 0 172.16.1.90:10051 0.0.0.0:* LISTEN 2193/zabbix_server

(8)apache配置:

说明:httpd服务是在安装zabbix-web-mysql服务中被当做依赖包被安装;

1)修改ServerName:

vim /etc/httpd/conf/httpd.conf +95

ServerName 127.0.0.1:80

2)启动httpd服务并加入到开机自启动:

systemctl start httpd

systemctl enable httpd

3)查看httpd的端口号:

[root@controller-node1 ~]# netstat -tunlp | grep httpd

tcp6 0 0 :::80 :::* LISTEN 2283/httpd

(9)使用 zabbix-web 服务的web界面配置zabbix-web服务:

1)修改时区:

vim /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai

systemctl restart httpd

2)打开web配置界面:

​ http://172.16.1.90/zabbix/setup.php​


9.4、安装zabbix(1)_数据库_03

3)配置数据库:


9.4、安装zabbix(1)_vim_04

4)zabbix-server信息配置:


9.4、安装zabbix(1)_数据库_05

5)配置总结:


9.4、安装zabbix(1)_mysql_06

6)配置完成:


9.4、安装zabbix(1)_mysql_07

7)补充说明:

#在分离数据库时需要修改的文件;

[root@controller-node1 ~]# cat /etc/zabbix/web/zabbix.conf.php

<?php

// Zabbix GUI configuration file.

global $DB;


$DB['TYPE'] = 'MYSQL';

$DB['SERVER'] = '172.16.1.90';

$DB['PORT'] = '0';

$DB['DATABASE'] = 'zabbix';

$DB['USER'] = 'zabbix';

$DB['PASSWORD'] = '123456';


// Schema name. Used for IBM DB2 and PostgreSQL.

$DB['SCHEMA'] = '';


$ZBX_SERVER = '172.16.1.90';

$ZBX_SERVER_PORT = '10051';

$ZBX_SERVER_NAME = 'Zabbix server';


$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

(10)在zabbix-server上安装zabbix-agent:

1)下载zabbix-agent并安装:

mkdir -p /tools/

cd /tools/

wget https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.0-2.el7.x86_64.rpm

rpm -ivh zabbix-agent-4.0.0-2.el7.x86_64.rpm

2)配置zabbix-agent配置文件(部分修改):

vim /etc/zabbix/zabbix_agentd.conf

Server=172.16.1.90

###################################################################

#允许访问zabbix-agent服务器的ip地址,默认127.0.0.1;

#Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com

###################################################################

ListenPort=10050

#监听的端口,默认;

ListenIP=172.16.1.90

#监听的ip地址,默认0.0.0.0;

StartAgents=3

#在被动模式下,此参数用于设置控制监听进程可启用的子进程的数量,若监控项较多且采集很频繁,建议加大此数值,默认值为3;

Timeout=30

#zabbix-agent取值超时,默认3s;

3)启动zabbix-agent并加入到开机自启动:

systemctl start zabbix-agent.service

systemctl enable zabbix-agent.service

4)查看端口号:

[root@controller-node1 tools]# netstat -tunlp | grep zabbix_agentd

tcp 0 0 172.16.1.90:10050 0.0.0.0:* LISTEN 3713/zabbix_agentd

(11)登录:

1)http://172.16.1.90/zabbix:


9.4、安装zabbix(1)_vim_08

说明:该用户密码是数据库中的用户名和密码;

2)登录后的界面:


9.4、安装zabbix(1)_mysql_09

说明:当前监控是在zabbix-server安装后就自动添加的;

(12)调整zabbix-web页面显示为简体中文:


9.4、安装zabbix(1)_数据库_10

(13)解决zabbix-web中文乱码的问题:

1)查看zabbix-web链接的字体:

[root@controller-node1 ~]# ls -l /etc/alternatives/zabbix-web-font

lrwxrwxrwx 1 root root 38 6月 16 12:59 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/dejavu/DejaVuSans.ttf

2)在windows中找到需要的字体格式后上传到"/usr/share/fonts/dejavu/"目录下:

#在windows中查找需要的字体:


9.4、安装zabbix(1)_数据库_11

#将字体上传到"/usr/share/fonts/dejavu/"目录下:

[root@controller-node1 ~]# cd /usr/share/fonts/dejavu/

[root@controller-node1 dejavu]# rz -y

3)对旧的字体备份后进行替换:

#备份旧的字体:

[root@controller-node1 dejavu]# cp -a DejaVuSans.ttf DejaVuSans.ttf.bak

#替换字体:

[root@controller-node1 dejavu]# \mv simkai.ttf DejaVuSans.ttf

说明:替换好字体后不需要重启zabbix-web服务;