centos7-zabbix安装与使用(较全的配置)

文章目录

  • zabbix介绍
    • 一、zabbix是什么
      • 1.1 zabbix专用词汇
      • 1.2 zabbix程序组件
    • 二、zabbix的优缺点
    • 三、为什么使用zabbix
      • 3.1 zabbix可以满足的监控系统需求
    • 四、zabbix监控的生命周期
  • zabbix安装
    • 一、zabbix环境搭建
      • 1.1 安装wget
      • 1.2 关闭防火墙
      • 1.3 关闭SELinux
    • 二、安装zabbix
      • 2.1 获取zabbix下载源
      • 2.2 更换yum源
      • 2.3 清空缓存
      • 2.4 安装zabbix数据库和服务端
      • 2.5 安装CentOS的Software Collection(SCL)仓库
      • 2.6 更改zabbix-front前端源
      • 2.7 安装zabbix前端环境
      • 2.8 安装mariadb数据库
      • 2.9 初始化数据库
      • 2.10添加数据库,并添加zabbix数据库信息
      • 2.11 使用zabbix-mysql命令,导入数据库信息
      • 2.12 修改zabbix server配置文件,修改数据库密码
      • 2.13 修改zabbix的php配置文件
      • 2.14 启动zabbix相关服务
  • zabbix-agent安装部署
    • 一、agent主机初始环境
    • 二、安装ntp时间服务器
    • 三、部署zabbix-agent2
      • 3.1 配置yum源
      • 3.2安装zabbix-agent2
      • 3.3启动zabbix-agent2
      • 3.4修改agent配置文件
      • 3.5 重启zabbix-agent2
    • 四、验证agent2的联通性
      • 4.1 在服务端主动获取数据
  • zabbixWB界面配置
    • 一、web界面初始配置
    • 二、web使用界面配置
      • 2.1更改界面语言
      • 2.2 解决主机中图形乱码问题
      • 2.3 添加agent主机
      • 2.4 创建自定义key
      • 2.5 邮件报警
      • 2.6 自动添加主机监控
        • 2.6.1 自动发现
        • 2.6.2 自动注册
        • 2.6.3 配置hosts解析
        • 2.6.4 自动发现配置
        • 2.6.5 自动注册配置
      • 2.7 部署分布式zabbix-proxy
        • 2.7.1代理端配置
        • 2.7.2 web页面添加代理
        • 2.7.3 agent链接proxy


zabbix介绍

一、zabbix是什么

Zabbix是一个企业级的开源分布式监控解决方案,由Alexei Vladishev创建,并由Zabbix是一个企业级的开源分布式监控解决方案,由Alexei Vladishev创建,并由Zabbix SIA主导开发和支持。它能够监控众多网络参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康状况和完整性。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于电子邮件的警报,从而使得系统管理员可以快速定位和解决存在的问题。

1.1 zabbix专用词汇

词汇描述
zabbix server服务端、收集数据,写入数据
zabbix agent部署在被监控的机器上,是一个进程,和zabbix server进行交互,以及负责执行命令
host服务器的概念,指zabbix监控的实体,服务器,交换机等
applications应用
events事件
media发送通知的通道
remote command远程命令
template模版
item对于某一个指标的监控,称之为items,如某台服务器的内存使用情况,就是一个item监控项
trigger触发器,定义报警的逻辑,有正常,异常,未知三个状态
action当trigger符合设定值后,zabbix指定的动作,如发送邮件给运维人员,告诉报警

1.2 zabbix程序组件

zabbix_server服务端守护进程
zabbix_agentdagent守护进程
zabbix_proxy代理服务器
zabbix_database存储系统,mysql,pgsql
zabbix_webgui图形化界面
zabbix_get命令行工具,测试向agent发起数据采集请求
zabbix_sender命令行工具,测试向server发送数据
zabbix_java_gatewayjava网关

二、zabbix的优缺点

Zabbix是一个企业级的开源分布式监控解决方案,它提供自动发现服务器和网络设备的功能,同时,它还允许运维人员根据需求自定义监控项并设置报警规则。当被监控对象的状态异常时,Zabbix会通过邮件、短信等方式及时通知相关人员。

然而,Zabbix也存在一些缺点。首先,由于监控系统的特殊性质,即持续的周期性数据收集和处理,因此在高峰期,性能瓶颈问题尤为突出。具体来说,随着监控的机器数量增加,数据量也会随之增大,这会使数据库的写入成为一项瓶颈。目前,官方给出的单机上限是5000台,超过这个数量就需要引入proxy来分担压力,从而会增加成本。其次,Zabbix采集数据有pull方式,也就是server主动模式。当目标机器数量增大之后,pull任务会出现积压,进而导致数据采集的延迟。此外,对于项目二次开发,需要分析MySQL表结构,由于其表结构较为复杂,因此对开发能力有一定的要求。最后,Zabbix内置的housekeeping在执行过程中会对数据库增加压力,这就需要进行数据库优化以保持其良好运行。

三、为什么使用zabbix

Zabbix是一款优秀的开源网络监控工具,它具备诸多优点。首先,Zabbix具有强大的数据采集能力,支持可用性和性能检测,自动发现服务器和网络设备,同时支持agent、snmp、JMX、telnet等多种采集方式。其次,Zabbix同样具备良好的高可用性,其server对设备性能要求低,支持proxy分布式监控和分布式集中管理。

除此之外,Zabbix也因为其灵活性而备受好评。它可以通过自定义监控项、触发器和报警方式来适应各种复杂的监控需求。与此同时,Zabbix的扩展性也非常强,它支持与其他监控工具和第三方应用程序的集成,并且可以通过API进行自动化操作。最后,Zabbix能够处理大量的监控数据,并提供高度可扩展的架构。

然而,任何事物都存在两面性,Zabbix也不例外。尽管Zabbix是一款优秀的开源网络监控工具,但它同样存在一些缺点。例如,由于Zabbix的灵活性和可扩展性,配置过程可能比较复杂,需要耗费一定的时间和精力。再比如,zabbix的系统级别报警设置较多,如果不筛选报警邮件会比较多;自定义项目报警需要自行设置过程繁琐。因此,用户在选择使用Zabbix时,也需要根据自身的需求和技术水平来权衡。

3.1 zabbix可以满足的监控系统需求

  • 支持自定义监控脚本,提供需要输出的值即可
  • zabbix存储的数据库表结构稍有复杂但是逻辑清晰
  • zabbix存在模版的概念,可以方便的将一组监控项进行部署
  • zabbix每一个item也就是监控项,都可以看到历史记录,且web界面友好
  • zabbix有强大的trigger(触发器)定义规则,可以定义复杂的报警逻辑
  • zabbix提供了ack报警确认机制
  • zabbix支持邮件、短信、微信等告警
  • zabbix在触发告警后,可以远程执行系统命令
  • zabbix有原生的php绘图模块

四、zabbix监控的生命周期

Zabbix的监控生命周期开始于服务器的上架,并会持续到服务被下架或替换。在监控过程中,Zabbix将定期收集各项指标数据,包括硬件的信息如服务器温度、风扇转速、检查线路、服务器接口状态等。同时,Zabbix也支持灵活的时间间隔设置,可以定义多达七个灵活的时间间隔。

然而,值得注意的是,任何Zabbix版本都有其生命周期,一旦生命周期到期,Zabbix将会停止进一步的维护更新,包括blocker和严重bug修复。因此,对于使用Zabbix的企业或者个人来说,定期升级Zabbix监控解决方案到最新版本是非常必要的,以保证监控系统的稳定性和安全性。

zabbix安装

一、zabbix环境搭建

1.1 安装wget

[root@bogon ~]# yum install -y wget

1.2 关闭防火墙

[root@bogon ~]# systemctl stop firewalld
[root@bogon ~]# systemctl disable firewalld
# 列出当前系统防火墙规则
[root@bogon ~]# iptables -L

1.3 关闭SELinux

# 查看selinux状态
[root@bogon ~]# getenforce
# 关闭selinux
[root@bogon ~]# vi /etc/selinux/config
[root@bogon ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

二、安装zabbix

2.1 获取zabbix下载源

[root@bogon ~]# rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@bogon ~]# ls /etc/yum.repos.d/
CentOS-Base.repo         CentOS-fasttrack.repo  CentOS-x86_64-kernel.repo
CentOS-Base.repo.backup  CentOS-Media.repo      docker-ce.repo
CentOS-CR.repo           CentOS-Sources.repo    zabbix.repo
CentOS-Debuginfo.repo    CentOS-Vault.repo

2.2 更换yum源

sed命令是不会显示结果的

[root@bogon ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

2.3 清空缓存

[root@bogon ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base docker-ce-stable extras updates zabbix
               : zabbix-non-supported
Cleaning up list of fastest mirrors

2.4 安装zabbix数据库和服务端

[root@bogon ~]# yum install -y zabbix-server-mysql zabbix-agent -y

2.5 安装CentOS的Software Collection(SCL)仓库

SCL是一个用于在CentOS上安装和管理多个版本的软件包的工具集,它允许您在同一台服务器上运行不同版本的软件,而无需为每个版本创建单独的系统。

[root@bogon ~]# yum install -y centos-release-scl

2.6 更改zabbix-front前端源

[root@bogon ~]# cd /etc/yum.repos.d/
[root@bogon yum.repos.d]# vi zabbix.repo
[root@bogon yum.repos.d]# cat zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1

2.7 安装zabbix前端环境

# 这条命令不会改变全局环境,只是单独修改一个软件的环境,以rh开头的文件存在opt/rh下
[root@bogon /]# yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl
[root@bogon /]# ls /opt/rh
rh-php72

2.8 安装mariadb数据库

[root@bogon /]# yum install -y mariadb-server
# 设置开机自启
[root@bogon /]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@bogon /]# systemctl enable --now mariadb
# (以上两条命令都是开机自启,随意使用一条就行)

2.9 初始化数据库

[root@bogon /]# systemctl status mariadb
[root@bogon /]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
#(本次测试数据库初始化选择:空格、y、y、n、y、y)
# 进入数据库
[root@bogon /]# mysql -uroot -p

2.10添加数据库,并添加zabbix数据库信息

# 查看数据库
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
# 创建zabbix数据库,并设置编码
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
# 创建zabbix用户设置密码
MariaDB [(none)]> create user zabbix@localhost identified by 'yuan3128..';
Query OK, 0 rows affected (0.00 sec)
# 给zabbix数据库授权所有权限
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost;
Query OK, 0 rows affected (0.00 sec)
# 刷新授权表
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

2.11 使用zabbix-mysql命令,导入数据库信息

[root@bogon /]# ls /usr/share/doc/zabbix-server-mysql*/create.sql.gz
/usr/share/doc/zabbix-server-mysql-5.0.39/create.sql.gz
[root@bogon /]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password:
[root@bogon /]# mysql -uzabbix -p
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| zabbix             |
+--------------------+
2 rows in set (0.00 sec)
MariaDB [(none)]> use zabbix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [zabbix]>
# 查看表
MariaDB [zabbix]> show tables;

2.12 修改zabbix server配置文件,修改数据库密码

[root@bogon /]# vi /etc/zabbix/zabbix_server.conf
#(修改# DBPassword=yuan3128..)
DBUser=zabbix

### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=yuan3128..

2.13 修改zabbix的php配置文件

[root@bogon /]# vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
[zabbix]
user = apache
group = apache

listen = /var/opt/rh/rh-php72/run/php-fpm/zabbix.sock
listen.acl_users = apache
listen.allowed_clients = 127.0.0.1

pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 200

php_value[session.save_handler] = files
php_value[session.save_path]    = /var/opt/rh/rh-php72/lib/php/session/

php_value[max_execution_time] = 300
php_value[memory_limit] = 128M
php_value[post_max_size] = 16M
php_value[upload_max_filesize] = 2M
php_value[max_input_time] = 300
php_value[max_input_vars] = 10000
php_value[date.timezone] = Asia/Shanghai
# 查看更改的配置
[root@bogon /]# grep 'timezone' /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai

2.14 启动zabbix相关服务

[root@bogon /]# systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
[root@bogon /]# systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/rh-php72-php-fpm.service to /usr/lib/systemd/system/rh-php72-php-fpm.service.

zabbix-agent安装部署

需要新建两台全新的机器,以下命令两台机器都需要执行

一、agent主机初始环境

# 关闭防火墙
[root@bogon ~]# systemctl stop firewalld
[root@bogon ~]# systemctl disable firewalld
# 关闭selinux
[root@bogon ~]# vi /etc/selinux/config
[root@bogon ~]# cat /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

二、安装ntp时间服务器

为了确保时间正确,需要安装ntp时间服务器

[root@bogon ~]# yum install -y ntpdate
[root@bogon ~]# ntpdate -u ntp.aliyun.com
30 Nov 15:13:08 ntpdate[3765]: adjust time server 203.107.6.88 offset 0.005838 sec
[root@bogon ~]# date
20231130日 星期四 15:14:35 CST

配置时区统一配置

[root@bogon ~]# mv /etc/localtime{,.bak}
[root@bogon ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root@bogon ~]# date
20231130日 星期四 15:17:22 CST

三、部署zabbix-agent2

3.1 配置yum源

[root@bogon ~]# rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
获取https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
警告:/var/tmp/rpm-tmp.9tiBS7: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:zabbix-release-5.0-1.el7         ################################# [100%]
[root@bogon ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
[root@bogon ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base extras updates zabbix zabbix-non-supported
Cleaning up list of fastest mirrors

3.2安装zabbix-agent2

[root@bogon ~]# yum install -y zabbix-agent2

3.3启动zabbix-agent2

[root@bogon ~]# systemctl enable --now zabbix-agent2

3.4修改agent配置文件

# 查看配置主要的文件
[root@bogon ~]# grep -Ev '^#|^$' /etc/zabbix/zabbix_agent2.conf
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock
# 查看进程号
[root@bogon ~]# cat /var/run/zabbix/zabbix_agent2.pid
29379
root@bogon ~]# ps -ef|grep zabbix
zabbix    29379      1  0 15:28 ?        00:00:00 /usr/sbin/zabbix_agent2 -c /etc/zabbix/zabbix_agent2.conf
root      31598   8684  0 15:34 pts/0    00:00:00 grep --color=auto zabbix
# 修改主机名
[root@bogon ~]# hostnamectl set-hostname zbx-agent01
# 修改配置后
[root@zbx-agent01 ~]# vi /etc/zabbix/zabbix_agent2.conf
[root@zbx-agent01 ~]# grep -Ev '^#|^$' /etc/zabbix/zabbix_agent2.conf
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.1.106
ServerActive=192.168.1.106
Hostname=zbx-agent01
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock

3.5 重启zabbix-agent2

[root@zbx-agent01 ~]# systemctl restart zabbix-agent2

四、验证agent2的联通性

4.1 在服务端主动获取数据

# 服务端安装
[root@bogon ~]# yum install -y zabbix-get
# 命令检测是否链接上客户端
[root@bogon ~]# zabbix_get -s '192.168.1.107' -p 10050 -k 'agent.ping'
1
[root@bogon ~]# zabbix_get -s '192.168.1.107' -p 10050 -k 'agent.hostname'
zbx-agent01

zabbixWB界面配置

一、web界面初始配置

登录地址:192.168.1.106/zabbix
在这里插入图片描述
点击next step
在这里插入图片描述
这里没有报错,直接点击下一步
在这里插入图片描述
这里只输入密码就行,其他的不用修改,因为是在本地环境,所以不用修改
点击下一步
在这里插入图片描述
这里不作任何配置
点击下一步
在这里插入图片描述
点击下一步
在这里插入图片描述
完成!!!
在这里插入图片描述
登录用户和密码:Admin;zabbix
在这里插入图片描述

二、web使用界面配置

2.1更改界面语言

在这里插入图片描述
点击User settings进入用户文件设置
在这里插入图片描述
在这里插入图片描述
选择Language,再选择Chinese(zh_CN)将web界面改为中文语言
Theme这个选项可以选择自己喜欢的界面风格
在这里插入图片描述
上图就是更改成中文后界面

2.2 解决主机中图形乱码问题

右侧选择主机
在这里插入图片描述
然后点击图形
在这里插入图片描述
上图中可以看到有一些乱码
在这里插入图片描述
解决办法

# 安装字体
[root@bogon ~]# yum -y install wqy-microhei-fonts
[root@bogon ~]# \cp^C
[root@bogon ~]# alias
# 复制字体
[root@bogon ~]# \cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

随后在返回web界面,可以看到已经没有乱码了(有些可能需要你刷新界面)
在这里插入图片描述

2.3 添加agent主机

点击配置,选择主机
在这里插入图片描述
可以看到右上角有一个创建主机,选择点击
在这里插入图片描述
下图就是创建主机的信息
在这里插入图片描述
可以看到,这里已经添加上了这一台主机
在这里插入图片描述
然后点击这台主机名,进行模版添加
在这里插入图片描述
在这里插入图片描述
上图可以看到ZBX没有亮,刷新以下页面
在这里插入图片描述

2.4 创建自定义key

这里创建的key是只要有一台主机登录人数超过两个人就会发出报警信息
命令行配置

# 查看登录用户和人数
[root@zbx-agent01 ~]# who
root     tty1         2023-12-01 09:42
root     pts/0        2023-12-01 09:56 (192.168.1.104)
[root@zbx-agent01 ~]# who | wc -l
2
# 手动创建zabbix配置文件,用于自定义key
[root@zbx-agent01 ~]# cd /etc/zabbix/zabbix_agent2.d/
[root@zbx-agent01 zabbix_agent2.d]# vi userparameter_login.conf
[root@zbx-agent01 zabbix_agent2.d]# cat userparameter_login.conf
UserParameter=login.user,who | wc -l
[root@zbx-agent01 zabbix_agent2.d]# systemctl restart zabbix-agent2
[root@zbx-agent01 zabbix_agent2.d]# systemctl status zabbix-agent2
[root@bogon zabbix]# zabbix_get -s '192.168.1.107' -p 10050 -k 'login.user'
2

web界面配置
点击配置,选择模版
在这里插入图片描述
选择右上角的创建模版选项
在这里插入图片描述
找到刚刚创建的模版,然后点击名字
在这里插入图片描述
进入之后,选择应用集
在这里插入图片描述
点击右上角的创建应用集
在这里插入图片描述
点击添加后会回到原来的界面,选择监控项,开始创建监控项
在这里插入图片描述
点击添加后会回到原来的界面,选择触发器,开始创建触发器
在这里插入图片描述
表达式:
在这里插入图片描述
点击添加后会回到原来的界面,选择图形,开始创建图形
在这里插入图片描述
关联
在这里插入图片描述

2.5 邮件报警

点击管理,报警媒介类型
在这里插入图片描述

创建报警类型
在这里插入图片描述
(注:这个密码需要自己在163邮箱内的授权码中设置,具体设置,可以百度)
点击用户设置,报警媒介

在这里插入图片描述
添加收件人

在这里插入图片描述
点击管理,报警媒介类型,选择消息模版
在这里插入图片描述
添加模版类型
在这里插入图片描述

2.6 自动添加主机监控

# 检查客户端agent2是否处于活动状态
[root@zbx-agent01 ~]# systemctl is-active zabbix-agent2
active
# 在服务端验证连通性
[root@bogon /]# zabbix_get -s '192.168.1.105' -p 10050 -k 'agent.ping'
1
2.6.1 自动发现
  • zabbix server主动的去发现所有的客户端,然后将客户端的信息,登记在服务端的机器上
  • 缺点是zabbix—server压力会比较大,如果定义一个网段,耗时较久,且压力大
2.6.2 自动注册
  • zabbix agent2主动上报自己的信息,发送给zabbix-server
  • 缺点是agent2可能会找不到server
2.6.3 配置hosts解析
[root@zbx-agent01 ~]# hostname
zbx-agent01
[root@zbx-agent01 ~]# vi /etc/hosts
[root@zbx-agent01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6


192.168.1.109 bogon
192.168.1.105 zbx-agent01
2.6.4 自动发现配置

点击配置,自动发现
在这里插入图片描述
创建发现规则
在这里插入图片描述
点击动作,选择发现动作
在这里插入图片描述
启动动作
在这里插入图片描述
回到主机界面,等待自动发现

# 检测服务端主机添加日志
[root@bogon /]# tail -f /var/log/zabbix/zabbix_server.log
2.6.5 自动注册配置
# 修改配置
[root@zbx-agent02 ~]# vi /etc/zabbix/zabbix_agent2.conf
[root@zbx-agent02 ~]# grep -Ev '^#|^$' /etc/zabbix/zabbix_agent2.conf
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.1.109
ServerActive=192.168.1.109
Hostname=zbx-agent02
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock
# 重启agent
[root@zbx-agent02 ~]# systemctl restart zabbix-agent2
# 服务端验证通信
[root@bogon /]# zabbix_get -s '192.168.1.110' -p 10050 -k 'agent.ping'
1

点击配置,选择动作,选择自动注册动作
在这里插入图片描述
点击创建动作
在这里插入图片描述
在这里插入图片描述

# 检测客户端或服务端日志
[root@zbx-agent02 ~]# tail -f /var/log/zabbix/zabbix_agent2.log

2.7 部署分布式zabbix-proxy

注:

  • 需要关闭防火墙
  • 如有zabbix-agent2,则需要停止运行
  • 在zabbix-web界面需要关闭自动注册和自动发现
  • 需要准备三台环境,一台服务端,一台代理端,一台客户端
2.7.1代理端配置
# 代理端安装zabbix-proxy-mysql和zabbix-get
[root@zbx-agent01 ~]# yum install -y zabbix-proxy-mysql zabbix-get
# 安装mariadb数据库
[root@zbx-agent01 ~]# yum install -y mariadb-server mariadb
# 进入数据库
[root@zbx-agent01 ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
# 设置数据库编码
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
# 授权zabbix_proxy
MariaDB [(none)]> grant all privileges on zabbix_proxy.* 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)
# 查找rpm包
[root@zbx-agent01 ~]# rpm -ql zabbix-proxy-mysql
/etc/logrotate.d/zabbix-proxy
/etc/zabbix/zabbix_proxy.conf
/usr/lib/systemd/system/zabbix-proxy.service
/usr/lib/tmpfiles.d/zabbix-proxy.conf
/usr/lib/zabbix/externalscripts
/usr/sbin/zabbix_proxy_mysql
/usr/share/doc/zabbix-proxy-mysql-5.0.40
/usr/share/doc/zabbix-proxy-mysql-5.0.40/AUTHORS
/usr/share/doc/zabbix-proxy-mysql-5.0.40/COPYING
/usr/share/doc/zabbix-proxy-mysql-5.0.40/ChangeLog
/usr/share/doc/zabbix-proxy-mysql-5.0.40/NEWS
/usr/share/doc/zabbix-proxy-mysql-5.0.40/README
/usr/share/doc/zabbix-proxy-mysql-5.0.40/schema.sql.gz
/usr/share/man/man8/zabbix_proxy.8.gz
/var/log/zabbix
/var/run/zabbix
# 将/usr/share/doc/zabbix-proxy-mysql-5.0.40/schema.sql.gz导入数据库
[root@zbx-agent01 ~]# zcat /usr/share/doc/zabbix-proxy-mysql-5.0.40/schema.sql.gz |mysql -uzabbix -pzabbix zabbix_proxy
# 进入数据库
[root@zbx-agent01 ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
# 查看数据库

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| zabbix_proxy       |
+--------------------+
5 rows in set (0.00 sec)
# 选择zabbix_proxy数据库
MariaDB [(none)]> use zabbix_proxy
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [zabbix_proxy]>
# 查看数据表
MariaDB [zabbix_proxy]> show tables;
# 修改zabbix-proxy配置文件,链接数据库信息
[root@zbx-agent01 ~]# sed -i.ori '162a DBPassword=zabbix' /etc/zabbix/zabbix_proxy.conf
[root@zbx-agent01 ~]# sed -i 's#Server=127.0.0.1#Server=192.168.1.109#' /etc/zabbix/zabbix_proxy.conf
[root@zbx-agent01 ~]# sed -i 's#Hostname=Zabbix proxy#Hostname=zbx-agent01#' /etc/zabbix/zabbix_proxy.conf
# 查看zabbix_proxy.conf配置文件
[root@zbx-agent01 ~]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
Server=192.168.1.109
Hostname=zbx-agent01
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBPassword=zabbix
DBName=zabbix_proxy
DBUser=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
# 启动代理服务
[root@zbx-agent01 ~]# systemctl start zabbix-proxy
2.7.2 web页面添加代理

选择管理,点击agent代理程序
在这里插入图片描述
点击创建代理
在这里插入图片描述

2.7.3 agent链接proxy

选择配置-选择主机-创建主机
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/220360.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

234 回文链表

解题思路: \qquad 由于链表的结构特点,访问链表中的元素的时间复杂度为O(n)。相比较而言,使用数组会方便很多,实现O(1)访问。 \qquad 所以这个题,可以先遍历一遍把数值存到数组中,再使用双指针判断是否是…

12.5 作业

1, 以下是一个简单的比喻,将多态概念与生活中的实际情况相联系: 比喻:动物园的讲解员和动物表演 想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有…

Leetcode刷题笔记题解(C++):LCR 021. 删除链表的倒数第 N 个结点

思路:用双指针去遍历链表,删除left的下一个节点,注意的是n大于等于链表长度即删除第一个节点 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {…

CTF特训日记day(4-6)

来复现一下2022QWB决赛的RDP题目 这两天腰疼去了趟医院 题目要求我们攻击XRDP程序,从而达到本地提权的效果。 首先观察XRDP程序的版本信息 rootRDP:/home/rdp/Desktop# xrdp-sesman -version xrdp-sesman 0.9.18The xrdp session managerCopyright (C) 2004-2020…

supervisor管理python进程

前言 平时开发调试中使用conda环境,项目比较多环境多,而且命令繁杂,每一次启动项目都可能会因为忘记启动方式而频繁报错。现在可以通过supervisor来管理,只需要配置几个文件,就可以轻松通过简单一致的命令启动工程&…

《悲风》——川西的爱情史诗-历史风貌中的人性之旅

《悲风》——川西的爱情史诗-历史风貌中的人性之旅 《悲风》:一部穿越时空的情感史诗,展现了中国川西地区的历史风貌和深刻的人性探索。本作品以1936年秋为起点,讲述了一个关于爱情、忠诚、背叛与成长的故事。 故事主线围绕着两个青梅竹马的…

项目经理是干出来的,不是教出来的

大家好,我是老原。 有不少新手项目经理,在通过了PMP认证考试,拿到PMP证书后,对之前无序的项目管理状态感觉有了一丝通透的感觉,对接受新项目更是信心满满。 然后就有不少没有项目管理经验,且刚刚考取PMP证…

Photoshop最新版PS2024安装使用 Ver25.0.0

Photoshop,这个是长红了几十年的软件,我大概从它的3.0版本开始用,目前已迭代到25.0,但一直还在用CS4/11.0版本,一直秉持着够用即可的原则,因为不是专业的平面设计人员,能够简单PP图片就行。&…

关于队列的简单理解

1.队列(Queue) 1.1 关于队列 队列 :只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表, 队列具有先进先出 FIFO(First In First Out)的操作特性(队列是个接口); 入队列&#x…

P5 Linux 标准C库函数

目录 前言 01 标准输入、标准输出和标准错误 02 打开文件 fopen() 03 新建文件的权限 04 fclose()关闭文件 05 读文件和写文件 06 库函数 fseek 定位 6.1 lseek的使用 07 ftell()函数 前言 🎬 个人主页:ChenPi 🐻推荐专栏1: 《C_Chen…

2005-2021年地级市绿色发展注意力数据(根据政府报告文本词频统计)

2005-2021年地级市绿色发展注意力数据(根据政府报告文本词频统计) 1、时间:2005-2021年 2、指标:省、市、年份、一级指标、关键词、关键词词频、总词频 3、范围:270个地级市 4、来源:地级市政府工作报告…

最全Web前端校招面试真题合集(附答案)

历时半年,我们整理了这份市面上最全面的前端校招面试题解析大全。 包含了腾讯、字节跳动、百度、阿里、滴滴、美团、58、拼多多、360、新浪、搜狐等一线互联网公司面试被问到的题目。希望对大家参加前端校招有所帮助吧! HTML 浏览器页面有哪三层构成&…

Android MVVM+coroutine+retrofit+flow+hilt

文章目录 Android MVVMcoroutineretrofitflowhilt概述依赖注入层数据层视图层模型视图层代码下载 Android MVVMcoroutineretrofitflowhilt 概述 代码结构: 依赖注入层 数据库: Module InstallIn(SingletonComponent::class) class DBModule {Singleto…

力扣第374场周赛题解

这一场周赛的题目是比较难的一次,写了1个多小时就写了两个题目。 首先第一题: 纯水题,遍历然后进行一下判断就可以解决了。这边就不放代码了。 第二题: 这个题目,我觉得难度非常大,其实代码量也不大都是很…

C语言--每日选择题--Day36

第一题 1. 以下关于指针的说法,正确的是() A:int *const p 与 int const *p等价 B:const int *p 与 int *const p等价 C:const int *p 与 int const *p 等价 D:int *p[10] 与 int (*p)[10] 等价 答案及解析 C const 在*的左侧&…

Hadoop学习笔记(HDP)-Part.02 核心组件原理

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

Java操作Excel之 POI介绍和入门

POI是Apache 提供的一个开源的Java API,用于操作Microsoft文档格式,如Excel、Word和PowerPoint等。POI是Java中处理Microsoft文档最受欢迎的库。 截至2023/12, 最新版本时 POI 5.2.5。 JDK版本兼容 POI版本JDK版本4.0及之上版本> 1.83.…

【面试】Java最新面试题资深开发-JVM第一弹

问题一:Java中的垃圾回收机制 在Java中,垃圾回收是如何工作的,可以简要描述一下垃圾回收的算法有哪些吗? 在Java中,垃圾回收是一种自动管理内存的机制,它负责识别不再被程序引用的对象并释放其占用的内存…

有趣的代码——有故事背景的程序设计3

这篇文章再和大家分享一些有“背景”的程序设计,希望能够让大家学到知识的同时,对编程学习更感兴趣,更能在这条路上坚定地走下去。 目录 1.幻方问题 2.用函数打印九九乘法表 3.鸡兔同笼问题 4.字数统计 5.简单选择排序 1.幻方问题 幻方又…

力扣101. 对称二叉树(递归法,迭代法,层次遍历法)

题目: 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root [1,2,2,3,4,4,3] 输出:true示例 2: 输入:root [1,2,2,null,3,null,3] 输出:false 代码及详细注释&…
最新文章