Zabbix简介

Zabbix 软件能够监控众多网络参数和服务器的健康度、完整性。Zabbix 使用灵活的告警机制,允许用户为几乎任何事件配置基于邮件的告警。这样用户可以快速响应服务器问题。Zabbix 基于存储的数据提供出色的报表和数据可视化功能。

zabbix优点:

  • 支持自动发现服务器和网络设备;
  • 分布式的监控体系和集中式的WEB管理;
  • 支持主动监控和被动监控模式;
  • 基于SNMP、IPMI接口方式、Agent方式;
  • 基于WEB的管理方法,支持自由的自定义事件和邮件、短信发送;
  • 高水平的业务视图监控资源,支持日志审计,资产管理等功能;

zabbix原理

zabbix核心组件

  • Server
    Zabbix server 是 Zabbix软件的核心组件,agent 向其报告可用性、系统完整性信息和统计信息。server也是存储所有配置信息、统计信息和操作信息的核心存储库。

  • Agent
    Zabbix agent 部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix server。

  • 数据库
    所有配置信息以及 Zabbix 采集到的数据都被存储在数据库中。

  • Web 界面
    为了从任何地方和任何平台轻松访问 Zabbix ,我们提供了基于 web 的界面。该界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 运行在同一台物理机器上。

  • Proxy
    Zabbix proxy 可以代替 Zabbix server采集性能和可用性数据。Zabbix proxy在Zabbix的部署是可选部分;但是proxy的部署可以很好的分担单个Zabbix server的负载。

部署zabbix

关闭防火墙、沙盒

# 关闭防火墙并禁止开机自启
systemctl stop firewalld
systemctl disable firewalld
# 临时关闭沙盒
setenforce 0

配置阿里云镜像源

yum -y install epel-release
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
yum update

安装LNMP

#编译安装nginx
# 安装所需依赖包
yum -y install gcc gcc-c++ autoconf automake make epel-release pcre-devel zlib-devel openssl-devel

# 创建nginx用户
useradd -s /sbin/nologin -M nginx

# 下载nginx源码包
wget http://nginx.org/download/nginx-1.18.0.tar.gz

# 解压nginx包
tar -zxvf nginx-1.18.0.tar.gz

# 编译安装nginx
cd nginx-1.18.0/

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx && make && make install

# 路径优化
ln -s /usr/local/nginx/sbin/* /usr/local/sbin/

#安装mariadb、PHP
yum -y install mariadb mariadb-server mariadb-devel php php-fpm php-devel php-mysql

配置mariadb数据库

# 启动mariadb并加入开机自启
systemctl start mariadb
systemctl enable mariadb

# 修改数据库密码
mysqladmin -uroot -p password "123.com"
Enter password:

# 创建数据库并授权
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]>  grant all on zabbix.* to "zabbix"@localhost identified by "zabbix";
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

导入zabbix数据

yum -y install zabbix40-dbfiles-mysql

# 查询包文件安装路径
rpm -ql zabbix40-dbfiles-mysql 
/usr/share/licenses/zabbix40-dbfiles-mysql-4.0.17
/usr/share/licenses/zabbix40-dbfiles-mysql-4.0.17/COPYING
/usr/share/zabbix-mysql
/usr/share/zabbix-mysql/Makefile
/usr/share/zabbix-mysql/Makefile.am
/usr/share/zabbix-mysql/Makefile.in
/usr/share/zabbix-mysql/data.sql
/usr/share/zabbix-mysql/images.sql
/usr/share/zabbix-mysql/schema.sql

# 导入数据
mysql -uzabbix -pzabbix zabbix < /usr/share/zabbix-mysql/schema.sql 
mysql -uzabbix -pzabbix zabbix < /usr/share/zabbix-mysql/images.sql 
mysql -uzabbix -pzabbix zabbix < /usr/share/zabbix-mysql/data.sql

安装zabbix前端软件包

yum -y install zabbix40-web zabbix40-web-mysql

修改nginx配置文件

vim //usr/local/nginx/conf/nginx.conf

        location / {
            root   /usr/share/zabbix;
            index  index.php index.html index.htm;
        }

        location ~ \.php$ {
            root           /usr/share/zabbix;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_buffer_size 4k;
            fastcgi_buffers 32 4k;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

启动nginx、php

# 启动nginx
nginx

# 启动php并加入开机自启
systemctl start php-fpm
systemctl enable php-fpm

安装zabbix-server

yum -y install zabbix40-server zabbix40-server-mysql

# 修改zabbix-server配置文件
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
启动zabbix-server

# 启动zabbix-server并加入开机自启
systemctl start zabbix-server
systemctl enable zabbix-server-mysql.service

安装zabbix-agent

yum -y install zabbix40-agent

# 启动zabbix-agent并加入开机自启
systemctl start zabbix-agent
systemctl enable zabbix-agent

访问localhost_ip,配置zabbix安装向导

  • 点击下一步会出现如下报错

解决办法

# 修改php配置
vim /etc/php.ini

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai

# 重启php
systemctl restart php-fpm

刷新网页(已解决)







zabbix_web9.png

设置中文字体



修改为中文字体后会出现字体乱码

解决zabbix中文字体乱码

1、复制windows中的字体到zabbix字体目录(以楷体为例:simkai.ttf)

  • windows字体路径:C:\Windows\Fonts\
  • zabbix字体路径:/usr/share/zabbix/assets/fonts/

2、修改默认字体指向

[root@localhost fonts]# vim /usr/share/zabbix/include/defines.inc.php

# 把所有的graphfont改为simkai
define('ZBX_GRAPH_FONT_NAME',           'simkai'); // font file name
define('ZBX_FONT_NAME', 'simkai');

刷新网页(已解决)

Last modification:October 21st, 2020 at 04:37 pm
如果觉得我的文章对你有用,请随意赞赏