企业级监控系统Zabbix

文章目录

  • Zabbix介绍
    • Zabbix架构
      • Zabbix server
      • Zabbix agent
      • Zabbix proxy
  • Zabbix Server的安装
  • Zabbix Agent的安装
    • 监控主机流程
    • zabbix_get
    • 自定义模板和监控项
      • 实战用户登录数监控
        • 1.指定监控项命令
        • 2.重启Agent服务
        • 3.在Server上创建监控项
        • 4.测试监控项
        • 5.查看监控项图形
  • 触发器
    • 定义触发器
  • 故障自愈
    • 实现故障自愈的步骤
      • 1.Agent开启远程命令功能
      • 2.授权zabbix用户管理权限
      • 3.创建触发器动作
  • Zabbix主动与被动模式
    • 被动模式
    • 主动模式
      • 主动模式实现步骤
        • 1.Agent端修改zabbix_agent2.conf配置
        • 2.Server端修改主动式监控项
  • 监控Java程序
    • 开启JMX监控
    • 部署Java gateway
    • zabbix_server.conf指定Java gateway
    • 在zabbix server中指定java服务的ip和端口
  • Zabbix分布式实现Proxy
    • Zabbix Server 和 Zabbix Proxy区别
    • 在Zabbix Server上添加代理Proxies
    • 配置主动模式的proxy
      • 1.修改zabbix_proxy.conf
      • 2.修改Agent为主动模式的Zabbix Proxy
    • 配置被动模式的proxy
      • 1.修改zabbix_proxy.conf
      • 2.修改Agent为被动模式的Zabbix Proxy
  • Zabbix自动注册
    • 1.修改Zabbix agent配置
    • 2.在Zabbix Server上配置动作
  • Zabbix优化
    • Zabbix高可用

Zabbix介绍

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。功能强大,成熟可靠,使用者众多。

官方网站: https://www.zabbix.com/

为什么需要监控
现在摄像头遍布大街小巷,包括汽车上的行车记录仪,当发生了什么事故时你可能第一直觉就是“调监控”来了解事故的前因后果。监控面前事实胜于雄辩!

在运维行业也是“无监控,不运维”,监控俗称“第三只眼”。没有监控,什么基础运维,业务运维都是“瞎子”,你不能实时掌握服务器的各种资源和你搭建的服务的各种使用数据指标。没有数据监控你就可能成为背锅侠。

监控功能1.在需要的时刻,提前预警即将出现的问题,避免故障发生;2.实时监控系统和业务,当出问题之后,通过发出告警,提醒相关人员,快速找到问题的根源从而及时处理问题;3.可以实现网站,应用或者服务器的故障自愈,保证高可用性;4.以图形或易于观察的方式呈现当前以及过往的状态,便于分析和预测系统发展趋势。

监控什么

硬件监控:通过远程控制卡: DeLL的iDRAC,HP的ILO和IBM的IMM等使用IPMI来完成物理设备的监控工作。通常必须要监控包括温度、硬盘故障等路由器,交换机(端口,光衰,日志),打印机等系统监控:cpu,内存,硬盘使用率,硬盘IO,系统负载,进程数服务监控:nginx, apache, php-fpm, mysql, memcache, redis, tomcat, JVM, TCP连接数等性能监控:网站性能,服务器性能,数据库性能,存储性能日志监控:系统会产生系统日志,应用程序会有应用的访问日志、错误日志,服务有运行日志等,可以使用ELK来进行日志监控安全监控:用户登录数,passwd文件变化,本地所有文件改动Nginx+Lua编写一个WAF通过kibana可以图形化的展示不同的攻击类型的统计。网络监控:IP端口,URL,DB,ping包,IDC带宽网络流量,网络流出流出速率,网络入流量,网络出流量.网络使用率,SMTP.POP3

Zabbix架构

zabbix中文使用手册:https://www.zabbix.com/documentation/6.0/zh/manual
在这里插入图片描述

Zabbix server

Zabbix server 是整个 Zabbix 软件的核心程序。

Zabbix Server负责执行数据的主动轮询和被动获取,计算触发器条件,向用户发送通知。它是Zabbix Agent 和 Proxy 报告系统可用性和完整性数据的核心组件。Server自身可以通过简单服务远程检查网络服务(如Web服务器和邮件服务器)。

Zabbix Server是所有配置、统计和操作数据的中央存储中心,也是Zabbix监控系统的告警中心。在监控的系统中出现任何异常,将发出通知给管理员。

基本的 Zabbix Server 的功能分解成为三个不同的组件。他们是:Zabbix server、Web前端和数据库。

Zabbix agent

Zabbix agent 部署在被监控目标上,以主动监控本地资源和应用程序(硬盘、内存、处理器统计信息等)。

Zabbix agent 收集本地的操作信息并将数据报告给 Zabbix server 用于进一步处理。一旦出现异常 (例如硬盘空间已满或者有崩溃的服务进程),Zabbix server 会主动警告管理员指定机器上的异常。

Zabbix agents 的极高效率缘于它可以利用本地系统调用来完成统计数据的采集。

Zabbix proxy

zabbix作为一个分布式监控系统(分布式监控解决方案),支持通过代理(proxy)收集zabbix agent的监控数据,然后由zabbix proxy再把数据发送给zabbix server,也就是zabbix proxy可以代替zabbix server收集监控数据,然后把数据汇报给zabbix server,所以zabbix proxy可以在一定程度上分担了zabbixserver的数据收集压力,从而降低了数据的采集时间、也相应的增加了zabbix server的监控能力。

部署Zabbix proxy 是可选的,但可能非常有利于分担单个 Zabbix server 的负载。 如果由代理采集数据,则 Zabbix server 上会减少 CPU 和磁盘 I/O 的开销。

Zabbix proxy 是无需本地管理员即可集中监控远程位置、分支机构和网络的理想解决方案。

Zabbix proxy 需要使用独立的数据库。

Zabbix Server的安装

ZabbixLTS(长期支持)版本没有任何额外的或隐藏的消费成本。Zabbix是一个100%开源软件,每个人都可以下载使用。

Zabbix LTS特点:1.支持期限更长,例如:为潜在的安全问题及bug迭代更新2.令人期待的高质量更新以及全新的功能点3.快速更新,可适用于多变的复杂环境4.在版本升级方面,更容易规划管理

官方安装帮助文档:https://www.zabbix.com/download

安装脚本

#!/bin/bash
# 
#********************************************************************
#Author:            wangxiaochun
#Date:              2022-06-22
#FileName:          install_zabbix5.0_for_ubuntu20.04.sh
#URL:               http://www.wangxiaochun.com
#Description:       The test script
#Copyright (C):     2022 All rights reserved
#********************************************************************
wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb
dpkg -i zabbix-release_5.0-1+focal_all.deb
sed -i.bak 's#http://repo.zabbix.com#https://mirror.tuna.tsinghua.edu.cn/zabbix#' /etc/apt/sources.list.d/zabbix.list
apt update
apt -y  install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent2
apt -y install mysql-server
cat << EOF | mysql
create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by '123456';
grant all privileges on zabbix.* to zabbix@localhost;
EOFzcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p123456  zabbixsed -i.bak '/# DBPassword/a DBPassword=123456' /etc/zabbix/zabbix_server.conf
sed -i.bak '/^server/a\        listen 80;\n        server_name     zabbix.lei.org;' /etc/zabbix/nginx.confsed -i.bak '/date.timezone/c php_value[date.timezone] = Asia/Shanghai' /etc/zabbix/php-fpm.confsystemctl disable --now apache2systemctl restart  zabbix-server zabbix-agent2 nginx php7.4-fpmsystemctl enable   zabbix-server

安装完成后直接使用脚本里的域名打开zabbix
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
zabbix首页
在这里插入图片描述
登录时遇到了问题,就是我windows的ip被拒绝访问我ubuntu192.168.10.148的zabbix的mysql,于是我设置了允许了mysql的用户和ip

update user set host = '%' where user = 'root';
update user set host = '%' where user = 'zabbix';
#将数据库里面的“user”表里面“host”的“localhost”改为“%”。“%”是允许所有远程都允许远程连接连接,

在这里插入图片描述

授权法:将zabbix用户权限改为:ALL PRIVILEGES,前面的是用户名,后面的是密码。
GRANT ALL PRIVILEGES ON . TO ‘zabbix’@‘%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO 'zabbix'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.01 sec)mysql> FLUSH PRIVILEGES;   #刷新权限
Query OK, 0 rows affected (0.00 sec)

Zabbix Agent的安装

Zabbix Agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web 访问数据库在前端进行展现和绘图。

Zabbix Agent安装脚本

#!/bin/bash
#
#********************************************************************
#Author:            wangxiaochun
#Date:              2021-01-06
#FileName:          install_zabbix_agent2_5.0.sh
#URL:               http://www.wangxiaochun.com
#Description:       The test script
#Copyright (C):     2021 All rights reserved
#********************************************************************ZABBIX_SERVER=zabbix.lei.org
ZABBIX_VER=5.0
URL="https://mirror.tuna.tsinghua.edu.cn/zabbix". /etc/os-releasecolor () {RES_COL=60MOVE_TO_COL="echo -en \\033[${RES_COL}G"SETCOLOR_SUCCESS="echo -en \\033[1;32m"SETCOLOR_FAILURE="echo -en \\033[1;31m"SETCOLOR_WARNING="echo -en \\033[1;33m"SETCOLOR_NORMAL="echo -en \E[0m"echo -n "$1" && $MOVE_TO_COLecho -n "["if [ $2 = "success" -o $2 = "0" ] ;then${SETCOLOR_SUCCESS}echo -n $"  OK  "    elif [ $2 = "failure" -o $2 = "1"  ] ;then ${SETCOLOR_FAILURE}echo -n $"FAILED"else${SETCOLOR_WARNING}echo -n $"WARNING"fi${SETCOLOR_NORMAL}echo -n "]"echo 
}install_zabbix_agent2() {if [ $ID = "centos" -o $ID = "rocky" ];thenVERSION_ID=`echo $VERSION_ID|awk -F. '{print $1}'` rpm -Uvh $URL/zabbix/${ZABBIX_VER}/rhel/${VERSION_ID}/x86_64/zabbix-release-${ZABBIX_VER}-1.el${VERSION_ID}.noarch.rpmif [ $? -eq 0 ];thencolor "YUM仓库准备完成" 0elsecolor "YUM仓库配置失败,退出" 1exitfised -i 's#repo.zabbix.com#mirror.tuna.tsinghua.edu.cn/zabbix#' /etc/yum.repos.d/zabbix.repoyum -y install zabbix-agent2else wget $URL/zabbix/${ZABBIX_VER}/ubuntu/pool/main/z/zabbix-release/zabbix-release_${ZABBIX_VER}-1+bionic_all.debif [ $? -eq 0 ];thencolor "APT仓库准备完成" 0elsecolor "APT仓库配置失败,退出" 1exitfidpkg -i zabbix-release_${ZABBIX_VER}-1+bionic_all.debsed -i 's#repo.zabbix.com#mirror.tuna.tsinghua.edu.cn/zabbix#'   /etc/apt/sources.list.d/zabbix.listapt updateapt -y install zabbix-agent2fi
}config_zabbix_agent2 (){ sed -i -e "/^Server=127.0.0.1/c Server=$ZABBIX_SERVER"  -e "/^Hostname=Zabbix server/c Hostname=`hostname -I`"  /etc/zabbix/zabbix_agent2.conf
}start_zabbix_agent2 () {systemctl enable zabbix-agent2.servicesystemctl restart zabbix-agent2.servicesystemctl is-active zabbix-agent2.serviceif [ $?  -eq 0 ];then  echo "-------------------------------------------------------------------"color "Zabbix Agent 安装完成!" 0elsecolor "Zabbix Agent 安装失败" 1exitfi
}install_zabbix_agent2
config_zabbix_agent2
start_zabbix_agent2

执行以上脚本可完成安装
在这里插入图片描述
将zabbix agent纳入zabbix server的管理中,在server页面中"创建主机"
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
初学就先使用agent的监控模板
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

监控主机流程

1 安装agent,指定Zabbix Server地址;
2 在Zabbix Server 添加被监控的主机;
3 修改内置的模板,为了实验环境更快地采集数据,将模板中所有监控项的时间间隔修改为10s;
4 在被监控的主机关联模板(内置了很多的监控项) Template OS Linux by Zabbix agent   --适合LinuxTemplate OS Windows by Zabbix agent --适合windows
5 Web 查看数据和图形

zabbix_get

利用zabbix_get工具可以测试Zabbix Agent是否正常

zabbix_get需要安装
在这里插入图片描述

zabbix_get -s 192.168.10.152 -k agent.ping

在这里插入图片描述

自定义模板和监控项

自定义监控项流程:1.在Agent上创建监控项名称2.在Agent的配置文件中指定获取监控项的命令3.在Server上创建自定义的监控项4.在Server上关联到被监控的Agent主机上创建自定义监控项后可将自定义监控项创建模板1.在Server上创建模板2.将自定义的监控项加入至模板3.将模板关联至被监控主机

vim /etc/zabbix/zabbix_agent2.conf在这里插入图片描述

实战用户登录数监控

自定义一个获取xshell用户登录数的监控项

1.指定监控项命令

在agent上的/etc/zabbix/zabbix_agent2.d下创建user_login_count.conf文件

UserParameter=user.login.count,who|wc -l

在这里插入图片描述

2.重启Agent服务

agent配置完自定义监控项后需要重启agent服务,否则server识别不了agent的自定义监控项
在这里插入图片描述

3.在Server上创建监控项

在这里插入图片描述
在这里插入图片描述

4.测试监控项

在这里插入图片描述

5.查看监控项图形

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

触发器

触发器是条件的定义,一个触发器是根据一个监控项的返回值将之对比预先设置的阈值,当监控项返回了不符合预定义的值范围后,;就进行触发下一步操作的警戒线,一般要对创建的监控项设置触发器以及触发方式和值的大小

可以在指定主机上创建触发器,只是针对指定主机有效

也可以在指定模板上创建触发器,则使用此模板的所有主机都有效,一个模板中可以有多触发器触发器中使用的表达式是非常灵活的。你可以使用它们去创建关于监控统计的复杂逻辑测试。

官方帮助手册:https://www.zabbix.com/documentation/5.0/zh/manual/config/triggers/expression

Zabbix支持下列6种触发器的严重程度:
在这里插入图片描述
在这里插入图片描述

定义触发器

触发器表达式

{<server>:<key>.<function>(<parameter>)}<operator><constant>

触发器表达式常用函数
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

故障自愈

当zabbix服务监控到指定的监控项异常时,可以通过指定的操作使故障自动恢复

我有一个监听80端口的触发器,当80端口down掉之后,就触发报警
在这里插入图片描述
我停掉了152的nginx服务,此时就触发了报警机制
在这里插入图片描述
我还开启了报警器,一旦报警就有一段刺耳的铃声
在这里插入图片描述

实现故障自愈的步骤

以nginx服务为例,当nginx服务停止时,自动重启服务,实现故障自愈功能

1.Agent开启远程命令功能

在这里插入图片描述

2.授权zabbix用户管理权限

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.创建触发器动作

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

添加动作的操作
在这里插入图片描述

故障已经自愈了
在这里插入图片描述

Zabbix主动与被动模式

Zabbix有两种工作模式:主动和被动模式
无论是模式还是被动模式,都是站在zabbix agent角度来说的工作模式
在这里插入图片描述

主动和被动模式1.被动模式: Server向Agent请求获取监控项的数据,Agent返回数据。此为默认模式,如果有100个监控项,则需要100次交互2.主动模式:Agent请求Server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy,如有100个监控项,只需要1次交互即可

被动模式

被动模式是指zabbix agent被动的接受zabbix server(或者Zabbix Proxy)周期性发送过来的数据收集指令

被动模式工作形式1.zabbix server发送什么指令那么zabbix agent就收集什么数据,2.zabbix server什么时候发送指令,zabbix agent就什么时候采集,3.zabbix server不发送指令,zabbix agent就一直不响应,所以zabbixagent也不用关心其监控项和数据采集周期间隔时间。被动模式优点1.被动模式的优点就是配置简单,安装后即可使用,因此也成为zabbix的默认工作模式,被动模式缺点1.被动模式的最大问题就是会加大zabbix server的负载,在数百甚至数千台服务器的环境下会导致zabbix server需要轮训向每个zabbix agent发送数据采集指令,2.如果zabbix server负载过高还会导致不能及时获取到最新数据3.被动模式因为性能的原因,一台Zabbix Server一般只能监控500台以下的主机,更多的主机建议使用主动模式

主动模式

主动模式是由每个zabbix agent打开本机的随机端口,主动向Zabbix Server (或者Zabbix Proxy)的10051端口发起tcp连接请求。

主动模式工作形式1.主动模式下必须在zabbix agent配置文件中指定zabbix server的IP或者主机名(必须可以被解析为IP地址)2.在连接到zabbix server之前zabbix agent是不知道自己要采集那些数据以及间隔多久采集一次数据的,3.在连接到zabbix server以后获取到自己的监控项和数据采集间隔周期时间,然后再根据监控项采集数据并返回给zabbix server主动模式的优点主动模式下不再需要zabbix serve向zabbix agent发起连接请求,因此主动模式在一定程度上可减轻zabbix server打开的本地随机端口和进程数,在一定程度就减轻了zabbix server的压力。经过优化后可以轻松监控2000台,甚至5000以上的主机以下场景下生产推荐使用主动模式1.Zabbix Server 出现性能瓶颈,监控队列出现大量延迟的监控项,告警不及时·2.监控主机超过500台以上

主动模式实现步骤

1.Agent端修改zabbix_agent2.conf配置

zabbix Agent默认是被动模式,需要修改zabbix_agent2.conf配置才能支持主动模式,配置由一下三项

server=<zabbix server>          #被动模式指向zabbix server的IP或FQDN ,默认模式
serverActive=<zabbix server>    #主动模式指向zabbix server的IP或FQDN
Hostname=<当前主机IP>            #当前主机的IP,此项必须和zabbix server中设置的主机名称相同

将ServerActive的127.0.0.1改为我的server服务器的地址192.168.10.148
在这里插入图片描述

2.Server端修改主动式监控项

2.1添加主机,名称=Hostname和客户端相同
2.2关联模板,包括的监控项是主动模式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

监控Java程序

开启JMX监控

在tomcat的catalina.sh脚本中添加如下配置

CATALINA_OPTS="$CATALINA__OPTS
-Dcom.sun.management.jmxremote                      #启用远程监控JMX
-Djava.rmi.server.hostname=<JAVA主机IP>              #是tomcat主机的IP地址,不是zabbix服务器地址
-Dcom.sun.management.jmxremote.port=xXXXX           #默认启动的MX端口号
-Dcom.sun.management.jmxremote.authenticate=false   #不使用用户名密码
-Dcom.sun.management.jmxremote.ssl=false"           #不使用ssl认证
CATALINA_OPTS="$CATALINA__OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.10.153 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

在这里插入图片描述
vim /usr/local/tomcat/bin/catalina.sh
在这里插入图片描述
配置完后重启tomcat,可以看到12345端口已正常放开
在这里插入图片描述使用windows的jconsole连接是否成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cmdline-jmxclient-0.10.3.jar 是一个开源jar包,在zabbix中常用于测试的个工具,可以用来测试 jmx
是否配置正确。在监控方面还可以对Tomcat各种属性进行监控。下面使用java客户端cmdline-
jmxclient进行测试

wget https://github.com/qiueer/zabbix/blob/master/Tomcat/cmdline-jmxclient-0.10.3.jar

在这里插入图片描述
获取堆内存状况

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.10.153:12345 java.lang:type=Memory NonHeapMemoryUsage

在这里插入图片描述

部署Java gateway

在这里插入图片描述
在这里插入图片描述

apt install zabbix-java-gateway

在这里插入图片描述

zabbix_server.conf指定Java gateway

vim zabbix_server.conf

JavaGateway=127.0.0.1
StartJavaPollers=1

在这里插入图片描述

在这里插入图片描述

在zabbix server中指定java服务的ip和端口

配置主机192.168.10.153:12345
在这里插入图片描述
配置主机的监控模板
Template App Generic Java JMX模板监控项
在这里插入图片描述
在这里插入图片描述

Template App Appache Tomcat JMX模板监控项
在这里插入图片描述
在这里插入图片描述
配置完后着急看数据的话可以重启服务,此时我们可以看到153主机JMX的可用性已经绿了。
在这里插入图片描述
JMX监控数据
在这里插入图片描述

Zabbix分布式实现Proxy

官方帮助手册: https://www.zabbix.com/documentation/5.0/zh/manual/distributed_monitoring

Zabbix proxy 使用场景:1.监控远程区域设备,尤其是多机房和多个云环境时监控网络不稳定区域,避免跨网段监控的告警不及时2.当需要监控设备众多时,使用它来减轻Zabbix Server的压力3.简化分布式监控的维护,无需各位创建Zabbix Server,统一管理策略

在这里插入图片描述

Zabbix Server 和 Zabbix Proxy区别

Zabbix proxy功能1.Zabbix proxy数据库必须和server数据库分开,否则Zabbix server数据库会被破坏。2.zabbix proxy是一个数据收集器,它不计算触发器、不处理事件、不发送报警。

在这里插入图片描述

在Zabbix Server上添加代理Proxies

Zabbix Proxy安装完成后,需要Zabbix Server的上配置Proxies
在这里插入图片描述
在这里插入图片描述

配置主动模式的proxy

1.修改zabbix_proxy.conf

[root@zabbix-proxy-active ~]#grep '^[^#]'/etc/zabbix/zabbix_proxy.conf
ProxyMode=O                      #主动模式为0,被动模式为1,默认为0即主动模式
server=10.0.0.100                #指向zabbix server
Hostname=zabbix-proxy-active     #此名称必须和后面web管理页的agent代理程序名称相同
DBHost=localhost                 #MySQL服务器地址
DBName=zabbix_proxy_active       #MysQL数据库名
DBUser=proxy                     #连接MySQL的用户
DBPassword=123456                #连接MySQL的用户密码

2.修改Agent为主动模式的Zabbix Proxy

[root@centos8 ~]#grep '^[^#]’/apps/zabbix_agent/etc/zabbix_agent2.conf
server=10.0.0.100,10.0.0.101  #指向zabbix server(可选)和zabbix Proxy(必选)
serverActive=10.0.0.101       #指向zabbix Proxy

配置被动模式的proxy

1.修改zabbix_proxy.conf

[root@zabbix-proxy-passive ~]#grep '^[^#]'/apps/zabbix_proxy/etc/zabbix_proxy.conf
ProxyMode=1                           #被动模式为1
server=10.0.0.100                     #指向zabbix server的地址
Hostname=zabbix-proxy-passvie-magedu
LogFi1e=/tmp/zabbix_proxy. 1og
DBHost=loca1host                      #指定MySQL的地址
DBName=zabbix_proxy_passive           #指定MySQL数据库名称
DBUser=proxy                          #指定MysQL的用户
DBPassword=123456                     #指定MysQL的用户密码

2.修改Agent为被动模式的Zabbix Proxy

[root@centos8 ~]#grep '^[^#]' /etc/zabbix/zabbix_agent2.conf
server=10.0.0.100,10.0.0.102    #必须指向Proxy代理地址,否则proxy无法监控,zabbix server地址则是可选项
#ServerActive=10.0.0.100        #注释此行
Hostname=10.0.0.104
Timeout=30

Zabbix自动注册

之前都是手动将主机一台一台的添加到Zabbix中进行监控,很是繁琐,可以利用自动发现和自动注册功能,自动添加被监控的主机。

利用Zabbix的自动注册功能,实现添加主机的自动化,可以大幅减少运维的工作量,减少Zabbix Server的资源消耗
此方式和自动发现不同,是由Active agent主动发起请求zabbix server将这些agent加到主机里。

注意:Agent必须使用主动模式才支持自动注册

自动注册由于比自动发现效率更好,Zabbix Server资源消耗更少,更适合大规模及云环境IP地址不固定的场景使用

1.修改Zabbix agent配置

[root@centos8 ~]#vim /etc/zabbix /zabbix_agentd.conf
server=zabbix.wang.org
serverActive=zabbix.wang.org
Hostname=web-10.0.0.18            #指定主机名,如果不指定,则服务器将使用agent的系统主机名#HostnameItem=system.hostname     #指定主机名
HostMetadata=123456               #HostMetadataItem=system.uname

2.在Zabbix Server上配置动作

配置自动注册动作
在这里插入图片描述
创建动作
在这里插入图片描述
添加主机链接模板
在这里插入图片描述

Zabbix优化

如果主机和监控项众多,Zabbix Server有可能会出现的性能问题,主要表现如下:1.Web操作很卡,容易出现502错误2.监控图形中图层断裂3.监控告警不及时

可以查看队列了解Zabbix性能状态管理–队列
在这里插入图片描述

优化方法1.数据库:写多读少,数据采集比较频繁,可以考虑PostgreSQL;2.使用主动模式,减轻Zabbix Server压力;3.如果需要监控远程主机,使用Zabbix Proxy删除无用监控项,建议使用自定义的模板和监控项;4.适当增加监控项的取值间隔,减少历史数据保存周期,此工作由housekeeper进程定时清理5.针对zabbix历史数据和趋势图的数据表,进行周期性分表保存6.对Zabbix Server进程调优,发现性能瓶颈的进程,加大它的进程数量7.对Zabbix Server缓存调优,发现哪种缓存的剩余内存少,就加大它的缓存值

Zabbix高可用

在前面的部署架构中,Zabbix Server和MySQL都有只有一台主机,存在单点问题可以使用Keepalived 实现Zabbix Server的高可用

基础架构为LAMP或LNMP环境,采用keepalived实现zabbix服务器高可用,保证主服务器或者Httpd宕掉后能切换到从服务器

MySQL数据库做主主同步,保证两边服务器数据的一致性,实现数据库的高可用。

官方Zabbix6.0给出了高可用解决方案
https://www.zabbix.com/documentation/6.0/zh/manual/concepts/server/ha#implementa

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

外泌体相关基因肝癌临床模型预测——2-3分纯生信文章复现——4.预后相关外泌体基因确定单因素cox回归(2)

内容如下&#xff1a; 1.外泌体和肝癌TCGA数据下载 2.数据格式整理 3.差异表达基因筛选 4.预后相关外泌体基因确定 5.拷贝数变异及突变图谱 6.外泌体基因功能注释 7.LASSO回归筛选外泌体预后模型 8.预后模型验证 9.预后模型鲁棒性分析 10.独立预后因素分析及与临床的…

香橙派 AIpro 根据心情生成专属音乐

香橙派 AIpro 根据心情生成专属音乐 一、OrangePi AI pro 开发版参数介绍1.1 接口简介1.2 OrangePi AI pro 的Linux系统功能适配情况1.3 开发板开机1.4 远程连接到 OrangePi AIpro 二、开发环境搭建2.1 创建环境、代码部署文件夹2.2 安装 miniconda2.3 为 miniconda 更新国内源…

生态系统NPP及碳源、碳汇模拟技术教程

原文链接&#xff1a;生态系统NPP及碳源、碳汇模拟技术教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247608293&idx3&sn2604c5c4e061b4f15bb8aa81cf6dadd1&chksmfa826602cdf5ef145c4d170bed2e803cd71266626d6a6818c167e8af0da93557c1288da21a71&a…

【综合能源】计及碳捕集电厂低碳特性及需求响应的综合能源系统多时间尺度调度模型

目录 1 主要内容 2 部分程序 3 实现效果 4 下载链接 1 主要内容 本程序是对《计及碳捕集电厂低碳特性的含风电电力系统源-荷多时间尺度调度方法》方法复现&#xff0c;非完全复现&#xff0c;只做了日前日内部分&#xff0c;并在上述基础上改进升级为电热综合电源微网系统&…

vue+openlayers之几何图形交互绘制基础与实践

文章目录 1.实现效果2.实现步骤3.示例页面代码3.基本几何图形绘制的关键代码 1.实现效果 绘制点、线、多边形、圆、正方形、长方形 2.实现步骤 引用openlayers开发库。加载天地图wmts瓦片地图。在页面上添加几何图形绘制的功能按钮&#xff0c;使用下拉列表&#xff08;sel…

基于JavaScript、puppeteer的爬虫

前期准备: npm puppeteer import puppeteer from puppeteer; puppeteer文档 第一步&#xff1a;启动浏览器&#xff0c;跳转到需要爬取的页面 const browser await puppeteer.launch({ headless: false });const page await browser.newPage();await page.goto(url, { w…

【目标检测实验系列】YOLOv5模型改进:引入轻量化多维动态卷积ODConv,减少计算量的同时保持精度稳定或略微上涨!(内含源代码,超详细改进代码流程)

1. 文章主要内容 本篇博客主要涉及轻量化多维动态卷积ODConv&#xff0c;融合到YOLOv5模型中&#xff0c;减少计算量的同时保持精度稳定或略微上涨。&#xff08;通读本篇博客需要7分钟左右的时间&#xff09;。 2. 介绍 ODconv沿着空间、输入通道、输出通道以及卷积核空间的核…

领导被我的花式console.log吸引了!直接写入公司公共库!

背景简介 这几天代码评审,领导无意中看到了我本地代码的控制台,被我花里胡哨的console打印内容吸引了! 老板看见后,说我这东西有意思,花里胡哨的,他喜欢! 但是随即又问我,这么花里胡哨的东西,上生产会影响性能吧?我自信的说:不会,代码内有判断的,只有开发环境会…

14270-02G 同轴连接器

型号简介 14270-02G是Southwest Microwave的2.4 mm 同轴连接器。这款连接器连接器采用不锈钢、铍铜合金、黄铜合金和 ULTEM 1000 等高质量材料&#xff0c;可能具有更好的耐腐蚀性、导电性和机械强度。金镀层可以提供更低的接触电阻和更好的耐腐蚀性。 型号特点 电缆的中心导体…

健康课程知识培训小程序网站如何学员教务管理

医学专业学生或是从业医生、护士等都需要不断学习巩固自己的技术和拓宽知识面&#xff0c;除了主要学习来源外&#xff0c;培训机构课程需求也是提升自身实力的方法&#xff0c;市场中也存在不少医药健康内容培训机构或是医院内部员工培训等。 运用雨科平台搭建医药健康内容培…

前端八股文 说一下盒模型

网页中任何一个元素都可以视为一个盒子&#xff0c;由里到外&#xff0c;盒模型包括外边界&#xff08;margin&#xff09;、边框&#xff08;border&#xff09;、内边界&#xff08;padding&#xff09;和内容&#xff08;content&#xff09;。 盒模型基本分为3种&#xff1…

k8s离线安装安装skywalking9.4

目录 概述资源下载Skywalking功能介绍成果速览实践rbacoapoap-svcuiui-svc 结束 概述 k8s 离线安装安装 skywalking9.4 版本&#xff0c;环境&#xff1a;k8s版本为&#xff1a;1.27.x 、spring boot 2.7.x spring cloud &#xff1a;2021.0.5 、spring.cloud.alibab&#xff1…

智慧消防视频监控烟火识别方案,筑牢安全防线

一、方案背景 在现代化城市中&#xff0c;各类小型场所&#xff08;简称“九小场所”&#xff09;如小餐馆、小商店、小网吧等遍布大街小巷&#xff0c;为市民生活提供了极大的便利。然而&#xff0c;由于这些场所往往规模较小、人员流动性大、消防安全意识相对薄弱&#xff0…

vue配置sql规则

vue配置sql规则 实现效果组件完整代码父组件 前端页面实现动态配置sql条件&#xff0c;将JSON结构给到后端&#xff0c;后端进行sql组装。 这里涉及的分组后端在组装时用括号将这块规则括起来就行&#xff0c;分组的sql连接符&#xff08;并且/或者&#xff09;取组里的第一个。…

【Linux】Linux常用指令合集精讲,一篇让你彻底掌握(万字真言)

文章目录 一、文件与目录操作1.1 ls - 列出目录内容1.2 cd - 切换目录1.3 pwd - 显示当前目录1.4 mkdir - 创建目录1.5 rmdir - 删除空目录1.6 rm - 删除文件或目录1.7 cp - 复制文件或目录1.8 mv - 移动或重命名文件或目录1.9 touch - 创建空文件或更新文件时间戳 二、文件内容…

Vue 详情实战涉及从项目初始化到功能实现、测试及部署的整个过程

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

《操作系统真象还原》学习笔记:第2章——编写MBR主引导记录

2.1 计算机的启动过程 载入内存&#xff1a; &#xff08;1&#xff09; 程序被加载器&#xff08;软件或硬件&#xff09;加载到内存某个区域 &#xff08;2&#xff09;CPU 的 cs:ip 寄存器被指向这个程序的起始地址 2.2 软件接力第一棒&#xff0c;BIOS 2.2.1 实模式下的…

Jenkins 使用 Publish over SSH进行远程访问

Publish over SSH 是 Jenkins 的一个插件,可以让你通过 SSH 将构建产物分发到远程服务器。以下是如何开启 Publish over SSH 的步骤: 一、安装 Publish over SSH 插件 在 Jenkins 中,进入 "Manage Jenkins" > "Manage Plugins"。选择 "Availab…

怎么用AI合成PPT?这5款风靡全球的AIPPT软件一定要知道!

当下我们已进入信息过载的时代&#xff0c;每天有无数的信息试图争夺我们的注意力&#xff0c;与此同时&#xff0c;我们也需要向别人展示和呈现信息&#xff0c;这就要求我们能够以最低的成本&#xff0c;在短时间内引起对方的注意&#xff0c;这其中最常用到的工具非PPT莫属。…

简易电阻、电容和电感测量仪-FPGA

通过VHDL语言编写程序用于设计电阻、电容和电感测量仪&#xff0c;通过使用试验箱进行验证是否设计正确&#xff0c;资料获取到咸&#x1f41f;&#xff1a;xy591215295250 \\\或者联系wechat 号&#xff1a;comprehensivable 设计并制作--台数字显示的电阻、电容和电感参数测试…