当前位置: 首页 > news >正文

zabbix的自动发现和注册、proxy代理和SNMP监控

目录

一、zabbix自动发现与自动注册机制:

1、概念 

2、zabbix 自动发现与自动注册的部署

二、zabbix的proxy代理功能:

1、工作流程

2、安装部署

三、zabbix-snmp 监控

1、概念 

2、安装部署

四、总结:


一、zabbix自动发现与自动注册机制:

1、概念 

zabbix客户端主动的和服务端联系,将自己的地址和端口发送给服务端,实现自动添加监控主机。

客户端是主动的一方

缺点:自定义网段中主机数量太多,登记耗时会很久,而且这个自动发现机制不是很稳定

2、zabbix 自动发现与自动注册的部署

//zabbix 自动发现(对于 agent2 是被动模式)

zabbix server 主动的去发现所有的客户端,然后将客户端的信息登记在服务端上。

缺点是如果定义的网段中的主机数量多,zabbix server 登记耗时较久,且压力会较大。

时间同步:

yum install ntpdate -y

ntpdate ntp.aliyun.com

//设置 zabbix 的下载源,安装 zabbix-agent2

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

cd /etc/yum.repos.d

sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum clean all && yum makecache

yum install -y zabbix-agent2

1.确保客户端上的 zabbix-agent2 服务状态正常

systemctl is-active zabbix-agent2.service

active

2.在 Web 页面删除原有的客户端主机

点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

3.在服务端和客户端上配置 hosts 解析

vim /etc/hosts

20.0.0.45 test1

20.0.0.46 test2

4.在 Web 页面配置自动发现

点击左边菜单栏【配置】中的【自动发现】,点击【创建发现规则】

【名称】设置成 mynetwork

【IP范围】设置成 192.168.10.1-254

【更新间隔】设置成 30s

【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname

【设备唯一性准则】选择 IP地址

【主机名称】选择 DNS名称

【可见的名称】选择 主机名称

勾选 【已启用】,点击 【更新】

点击左边菜单栏【配置】中的【动作】,上方菜单选择 【发现动作】

勾选 【Auto discovery. Linux servers.】,点击 【启用】

点击左边菜单栏【配置】中的【主机】刷新,等待一段时间后即可刷新出自动发现的客户端主机

zabbix 自动注册(对于 agent2 是主动模式)

zabbix agent2 会主动上报自己的信息,发给 zabbix server。

缺点是可能因为配置文件配置错误或者网络不通等原因导致 zabbix agent2 可能找不到 zabbix server。

vim /etc/hosts

192.168.233.10 zbx-server

192.168.233.30 zbx-agent01

2.修改 zabbix-agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf

......

HostnameItem=system.hostname #139行,取消注释

egrep -v "^#|^$" /etc/zabbix/zabbix_agent2.conf

PidFile=/var/run/zabbix/zabbix_agent2.pid

LogFile=/var/log/zabbix/zabbix_agent2.log

LogFileSize=0

Server=192.168.10.22

ServerActive=192.168.10.22

Hostname=zbx-agent01

HostnameItem=system.hostname

Include=/etc/zabbix/zabbix_agent2.d/*.conf

ControlSocket=/tmp/agent.sock

点击左边菜单栏【配置】中的【主机】刷新,等待一段时间后即可刷新出自动发现的客户端主机

可在服务端查看 zabbix 日志

tail -f /var/log/zabbix/zabbix_server.log

......

  6601:20210922:225044.115 enabling Zabbix agent checks on host "zbx-agent01": host became available

添加自动发现:

默认就行

看日志,zabbix日志,看有没有自动添加

自动发现不了就改名

三个一致:

配置文件136行 名称 web页面主机名称 和主机名称要一致

二、zabbix的proxy代理功能:

代理功能的核心:代替服务端收集客户端的数据,然后把数据传送给服务端。

1、工作流程

2、安装部署

客户端:20.0.0.44  20.0.0.46

代理服务器:20.0.0.21

服务端:20.0.0.45

部署 zabbix 代理服务器

分布式监控的作用:

●分担 server 的集中式压力

●解决多机房之间的网络延时问题

agent --> proxy --> server

systemctl disable --now firewalld

setenforce 0

hostnamectl set-hostname zbx-proxy

//设置 zabbix 的下载源,按照 zabbix-proxy

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

cd /etc/yum.repos.d

sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum install -y zabbix-proxy-mysql zabbix-get

#安装 Zabbix 代理(zabbix-proxy-mysql)和 Zabbix 客户端工具(zabbix-get)

安装 zabbix 所需的数据库

yum install -y mariadb-server mariadb

systemctl enable --now mariadb

mysql_secure_installation         #初始化数据库,并设置密码,如123456

//添加数据库用户,以及 zabbix 所需的数据库信息

mysql -u root -p123456

CREATE DATABASE zabbix_proxy character set utf8 collate utf8_bin;

GRANT all ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';

flush privileges;

//导入数据库信息

rpm -ql zabbix-proxy-mysql #查询 sql 文件的位置

zcat /usr/share/doc/zabbix-proxy-mysql-5.0.40/schema.sql.gz | mysql -uroot -p123456 zabbix_proxy

//修改 zabbix-proxy 配置文件

vim /etc/zabbix/zabbix_proxy.conf

Server=192.168.233.10 #30行,指定 zabbix 服务端的 IP 地址

Hostname=zbx-proxy #49行,指定当前 zabbix 代理服务器的主机名

DBPassword=zabbix #196行,指定当前数据库 zabbix 用户的密码

//启动 zabbix-proxy

systemctl start zabbix-proxy

systemctl enable zabbix-proxy

//在所有主机上配置 hosts 解析

vim /etc/hosts

20.0.0.45 test1

20.0.0.46 test2

20.0.0.44 test3

20.0.0.21 zbx-proxy

在 Web 页面配置 agent 代理

点击左边菜单栏【配置】中的【动作】,勾选自动注册规则,点击 禁用

点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

点击左边菜单栏【管理】中的【agent代理程序】,点击【创建代理】

【agent代理程序名称】设置为 zbx-proxy

【系统代理程序模式】选择 主动式

【代理地址】设置为 192.168.233.40

点击 【添加】

配置 agent 使用 proxy

1.在客户端修改 agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf

......

Server=192.168.233.40 #80行,指定 zabbix 代理服务器的 IP 地址

ServerActive=192.168.233.40 #120行,指定 zabbix 代理服务器的 IP 地址

2.在 Web 页面配置

点击左边菜单栏【配置】中的【主机】,点击【创建主机】

【主机名称】设置成 zbx-agent01

【可见的名称】设置成 zbx-agent01

【群组】选择 Linux server

【Interfaces】的【IP地址】设置成 192.168.233.30

【由agent代理程序监测】选择 zbx-proxy

再点击上方菜单栏【模板】

【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent

点击 【添加】

3.分别在客户端和代理服务器上重启服务

systemctl restart zabbix-agent2

systemctl restart zabbix-proxy

点击左边菜单栏【配置】中的【主机】刷新,查看客户端主机监控状态正常

在服务端查看日志

tail -f /var/log/zabbix/zabbix_proxy.log

三、zabbix-snmp 监控

1、概念 

SNMP,简单网络管理协议

SNMP(Simple Network Management Protocol)是一种用于监控和管理网络设备的标准协议。

设备监控: SNMP允许网络管理员监控网络上的各种设备,如路由器、交换机、服务器和打印机等。

通过SNMP,管理员可以获取有关设备状态、性能和运行状况的信息。

性能管理: SNMP提供了一种机制,使管理员能够监控网络设备的性能指标,如带宽利用率、CPU利用率、内存利用率等。

这有助于管理员了解网络的负载和性能状况,从而更好地规划和优化网络资源。

故障诊断: SNMP使管理员能够实时监控网络设备的状态,包括连接状态、错误率等。

当设备发生故障或问题时,SNMP可以提供有关问题的警报和信息,帮助管理员更快地进行故障诊断和修复。

配置管理: SNMP可以用于配置网络设备,例如修改路由表、更改设备设置等。

这使得管理员能够通过网络远程管理设备,而无需直接物理接触设备。

安全管理: SNMP提供了安全功能,包括基于社区字符串的简单身份验证。

这有助于确保只有授权的用户可以访问和管理网络设备,从而提高网络的安全性。

总体而言,SNMP是一种用于监控、管理和维护网络设备的标准协议

2、安装部署

1.服务端安装 snmp 监控程序

yum install -y net-snmp net-snmp-utils

2.修改 snmp 的配置文件,并启动服务

vim /etc/snmp/snmpd.conf

......

view    systemview    included   .1 #57行,添加此配置

#可以监控所有的snmp协议树

systemctl start snmpd

3.使用 snmp 命令测试

snmpwalk -v 2c -c public 127.0.0.1 sysname

SNMPv2-MIB::sysName.0 = STRING: zbx-server

-------------------------------------------------------

–v 1|2c|3:指定SNMP协议版本

–c:指定共同体字符串

sysname:为 snmp 的 key

-------------------------------------------------------

4.在 Web 页面配置 snmp 方式监控

点击左边菜单栏【配置】中的【主机】,点击 Zabbix server

【接口】点击【添加】选择 SNMP ,端口设置成 161

点击上方菜单栏【模板】,【链接的模板】中的所有 agent 模板选择取消链接并清理

再在【Link new templates】中搜索 Linux SNMP,选择 Template OS Linux SNMP

点击 【更新】,等待一段时间后 Zabbix server 的可用性就变成了 SNMP 监控方式。

四、总结:

zabbix:就是监控服务程序,网络设备,书记的软件。但是不能很好的监控容器的运行。

市面上zabbix是一款成熟的监控软件,有所有一切的模版脚本,docker和k8s容器化运行的yaml文件

zabbix的组成部分:

zabbix server(收集和监控)

zabbix agent(客户端,发送数据到服务端)

zabbix proxy(代理服务器,代理服务器也要安装数据库,保存客户端的数据,然后再发送给服务端(代收器))

zabbix的配置:
先有主机,再有模版,模版当中设置应用集,模版当中设置应用集,再应用集中配置监控项,在监控项之后配置触发器,最后配置图形(可选项)

相关文章:

zabbix的自动发现和注册、proxy代理和SNMP监控

目录 一、zabbix自动发现与自动注册机制: 1、概念 2、zabbix 自动发现与自动注册的部署 二、zabbix的proxy代理功能: 1、工作流程 2、安装部署 三、zabbix-snmp 监控 1、概念 2、安装部署 四、总结: 一、zabbix自动发现与自动注册…...

以Hub为中心节点的网络技术探析

在计算机网络中,Hub是一个重要的组成部分,它作为中心节点,连接着各个站点,实现数据的传输和通信。本文将对以Hub为中心节点的网络进行深入的技术探析。 首先,我们需要了解什么是Hub。在网络术语中,Hub通常…...

百度推送收录工具-免费的各大搜索引擎推送工具

在互联网时代,网站收录是网站建设的重要一环。百度推送工具作为一种提高网站收录速度的方式备受关注。在这个信息爆炸的时代,对于网站管理员和站长们来说,了解并使用一些百度推送工具是非常重要的。本文将重点分享百度批量域名推送工具和百度…...

物流实时数仓ODS层——Mysql到Kafka

目录 1.采集流程 2.项目架构 3.resources目录下的log4j.properties文件 4.依赖 5.ODS层——OdsApp 6.环境入口类——CreateEnvUtil 7.kafka工具类——KafkaUtil 8.启动集群项目 这一层要从Mysql读取数据,分为事实数据和维度数据,将不同类型的数据…...

奇迹mu 架设过程中可能会出现的问题及解决办法

通常我们在架设奇迹的时候,可能会遇见这种问题那种问题,很多用户都不知道该如何解决,今天我们就来系统的说明一下一些常见的问题,帮助遇见这些问题的用户理清一个架设的思路,更清楚的判断问题出在哪里,该如…...

IDC MarketScape2023年分布式数据库报告:OceanBase位列“领导者”类别,产品能力突出

12 月 1 日,全球领先的IT市场研究和咨询公司 IDC 发布《IDC MarketScape:中国分布式关系型数据库2023年厂商评估》(Document number:# CHC50734323)。报告认为,头部厂商的优势正在扩大,OceanBase 位列“领导者”类别。…...

Docker创建mqtt容器mosquitto

#1.创建映射到主机的配置文件/bwss/agent/docker/mosquitto_public/config/mosquitto.conf 内容为: listener 51883 0.0.0.0 # 0.0.0.0 allow_anonymous false persistence false persistence_location /mosquitto/data password_file /mosquitto/config/passwd …...

运维知识点-SQLServer/mssql

SQLServer/mssql Microsoft structed query language常见注入提权 技术点:0x00 打点前提 0x01 上线CS0x02 提权0x03 转场msf0x04 抓取Hash0x05 清理痕迹 Microsoft structed query language 常见注入 基于联合查询注入 order by 判断列数(对应数据类型…...

Reactor实战,创建一个简单的单线程Reactor(理解了就相当于理解了多线程的Reactor)

单线程Reactor package org.example.utils.echo.single;import java.io.IOException; import java.net.InetSocketAddress; import java.nio.channels.*; import java.util.Iterator; import java.util.Set;public class EchoServerReactor implements Runnable{Selector sele…...

NoSQL大数据存储技术测试题(参考答案)

目录 1.绪论 2.NoSQL数据库的基本原理 4.HBase的基本原理与使用 5.HBase高级原理 7.MongoDB 8.其他NoSQL数据库 1.绪论 总分: 14.0 10分 单项选择题 4分 判断题 教师评语: 一 单项选择题(10分) 1、NoSQL一词表示的含义是()。&#xf…...

Python查看文件列表

os.listdir 是 Python 的一个内置函数,用于列出指定目录中的所有文件和子目录。它接受一个字符串参数,即要列出内容的目录的路径。 列出当前工作目录中的所有文件和子目录 files_and_dirs os.listdir() print(files_and_dirs) 列出指定目录中的所…...

INA219电流感应芯片_程序代码

详细跳转借鉴链接INA219例程此处进行总结 简单介绍一下 INA219: 1、 输入脚电压可以从 0V~26V,INA219 采用 3.3V/5V 供电. 2、 能够检测电流,电压和功率,INA219 内置基准器和乘法器使之能够直接以 A 为单位 读出电流值。 3、 16 位可编程地…...

FlinkSql-Temporal Joins-Lookup Join

说明 在 Flink SQL 中,Temporal Joins 是一种常见的数据关联操作,特别适用于处理包含时间维度的数据。Lookup Join 是 Temporal Joins 的一种类型,它允许将流数据与维表数据进行关联。使用场景如下: 实时维度关联: 当…...

STM32之定时器

目录 1、定时器介绍 1.定时器工作原理 2.定时器的分类 3.通用定时器主要功能介绍 4.定时器计数模式 5.定时器时钟源 6.定时器溢出时间计算公式 2、定时器中断的实验 codeMX的配置 代码编写 1.使用到的HAL库函数 1.中断回调函数需要我们重写 2. 在中断模式下启动TIM…...

Canvas鼠标画线

鼠标按下开始画线,鼠标移动根据鼠标的轨迹去画,鼠标抬起停止画线 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…...

Docker 安装部署 Sentinel Dashboard

1、下载 jar 包 官方 jar 包下载地址&#xff1a;https://github.com/alibaba/Sentinel/releases 或者点击 链接 直接跳转到下载页 进入链接下载你需要的版本 下载完毕&#xff08;我这里统一放在一个sentinel目录内&#xff09; 2、编写 Dockerfile 文件&#xff08;这里我不…...

第21章网络通信

Internet 提供了大量有用的信息&#xff0c;很少有人能在接触过Internet后拒绝它的诱惑。计算机网络实现了多台计算机间的互联&#xff0c;使得它们彼此之间能够进行数据交流。网络应用程序就是在已连接的不同计算机上运行的程序&#xff0c;这些程序借助于网络协议&#xff0c…...

一、运行时数据区域

根据 《Java 虚拟机规范》的规定&#xff0c;Java 虚拟机所管理的内存将会包括以下截个运行时数据区域&#xff0c;如图所示。 1、程序计数器 程序计数器是一块较小的内存空间&#xff0c;它可以看做是当前线程所执行的字节码的行号指示器。在 Java 虚拟机的概念模型里&#x…...

OCR原理解析

目录 1.概述 2.应用场景 3.发展历史 4.基于传统算法的OCR技术原理 4.1 图像预处理 4.1.1 灰度化 4.1.2 二值化 4.1.3 去噪 4.1.4 倾斜检测与校正 4.1.4.2 轮廓矫正 4.1.5 透视矫正 4.2 版面分析 4.2.1 连通域检测文本 4.2.2 MSER检测文本 4.3 字符切割 4.3.1 连…...

使用com组件编辑word

一个普通的窗体应用&#xff0c;6个button using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; u…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候&#xff0c;遇到了一些问题&#xff0c;记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...