zabbix介绍及应用

1.Zabbix介绍

官网:

https://www.zabbix.com

Zabbix 由 Alexei Vladishev 创建,目前由 Zabbix SIA 主导开发和支持。

Zabbix 是一个企业级的开源分布式监控解决方案。

Zabbix 是一款监控网络的众多参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康和完整性的软件。Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于电子邮件的告警,以实现对服务器问题做出快速反应。Zabbix 基于存储的数据提供出色的报告和数据可视化功能。这使得 Zabbix 成为容量规划的理想选择。

Zabbix 支持轮询和 trapping。所有 Zabbix 报告和统计数据以及配置参数都可以通过基于 Web 的前端访问。基于 Web 的前端确保可以从任何位置评估您的网络状态和服务器的健康状况。如果配置得当,不管对于拥有少量服务器的小型组织还是拥有大量服务器的大公司来讲,Zabbix 都可以在监控 IT 基础设施方面发挥重要作用。

Zabbix 是免费的。Zabbix 是在 GPL 通用公共许可证第 2 版下编写和分发的。这意味着它的源代码是免费分发的,可供公众使用。

Zabbix 主要有以下几个组件组成:

  • Zabbix Server6.4:Zabbix 服务端,是 Zabbix 的核心组件。它负责接收监控数据并触发告警,还负责将监控数据持久化到数据库中。

  • Zabbix Agent:Zabbix 客户端,部署在被监控设备上,负责采集监控数据,采集后的数据发送给 Zabbix Server 处理。Zabbix Agent 目前有两个版本:Zabbix agent 和 Zabbix agent 2。前者是 C 语言开发的,几乎支持所有的主流平台。而后者是 Go 开发的,优点包括:能有效降低 TCP 连接的数量;支持更高的并发;易于扩展。目标是替代 Zabbix agent ,目前只支持 Linux 和Windows 两个平台。

  • Zabbix Proxy:代替 Zabbix Server 接收监控数据并进行预处理,预处理后的数据批量发送给 Zabbix Server,这样可减轻 Zabbix Server 的压力。

  • Web 页面:可通过 Web 页面来管理和维护被监控设备的配置信息、查看监控数据、配置告警等。

  • 数据库:负责存储被监控设备的配置信息和监控数据。支持的数据库有:MySQL(Percona,MariaDB),Oracle,PostgreSQL,TimescaleDB for PostgreSQL,SQLite

2.安装 Zabbix Server

2.1 安装准备

安装要求:

https://www.zabbix.com/documentation/6.0/zh/manual/installation/requirements

准备工作:

  • 配置网卡,可以上网
  • 关闭防火墙
  • 关闭seLinux
  • 安装清单
    • zabbix server 6.4(编译安装)
    • zabbix agent 6.0.12(yum安装)
    • mysql 8.0.32
    • nginx 1.22.1
    • php 7.4.0

各种rpm依赖包搜索网站:

https://vault.centos.org/7.4.1708/os/x86_64/Packages/

2.2 mysql 8.0.32

上传 mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar

#创建目录
mkdir mysql-8.0.32
#解压
tar -xvf mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar -C mysql-8.0.32
#切换目录
cd mysql-8.0.32
# 忽略依赖检查强制安装
rpm -ivh mysql-community-* --force --nodeps

# 创建数据存储目录,更改所有者
mkdir -p /data/mysql
chown mysql:mysql /data/mysql

修改配置文件

#修改配置文件
vim /etc/my.cnf
######################################

[mysqld]
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
port=3306
lower_case_table_names=1
max_connections=500
innodb_force_recovery=0

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

启动服务

systemctl enable --now mysqld

# 如果有启动失败缺少依赖的情况,需要安装 libaio
# yum install libaio

修改默认密码

# 查看默认密码
cat /var/log/mysqld.log | grep password
PAlDBo09oN<b
# 用默认密码登录mysql并修改密码
mysql -uroot -p

# 在 mysql 命令行中修改密码
mysql> alter user 'root'@'localhost' identified by 'Bdqn_8888';
mysql> flush privileges;

为 zabbix 创建用户和数据库

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> create user 'zabbix'@'localhost' identified with mysql_native_password by 'Zabbix_8888';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> flush privileges;
#其它
#先创建用户
mysql> CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Bdqn_8888';

#再授予权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

2.3 nginx 1.22.1

上传 nginx-1.22.1-1.el7.ngx.x86_64.rpm 、 pcre2-10.23-2.el7.x86_64.rpm

# 安装 pcre2
rpm -ivh pcre2-10.23-2.el7.x86_64.rpm

# 安装 nginx
rpm -Uvh nginx-1.22.1-1.el7.ngx.x86_64.rpm

配置 nginx

# 站点根
mkdir -p /data/web
# 备份配置文件
mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
# 修改配置文件
vim /etc/nginx/conf.d/zabbix.conf

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

server {
   
  listen 80;
  server_name localhost;
  root /data/web;
  location / {
   
    index index.php index.html index.htm;
  }
  location ~ .php$ {
   
    #root /data/web;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
}

##################
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值