分布式应用:Zabbix代理服务器与SNMP监控

news2024/9/25 19:25:25

目录

一、理论

1.分布式监控

 2.Zabbix代理服务器部署

3.配置 agent 使用 proxy

4.设置 Zabbix-SNMP 监控

二、实验

1.Zabbix代理服务器部署

2.配置 agent 使用 proxy

3.设置 Zabbix-SNMP 监控

三、总结


一、理论

1.分布式监控

(1)作用:
分担 server 的集中式压力
解决多机房之间的网络延时问题

 2.Zabbix代理服务器部署

(1)关闭防火墙、修改主机名

systemctl disable --now firewalld
setenforce 0
hostnamectl set-hostname zbx-proxy

(2)设置 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

(3)安装 zabbix 所需的数据库

yum install -y mariadb-server mariadb
 
systemctl enable --now mariadb
 
mysql_secure_installation         #初始化数据库,并设置密码,如 abc123

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

mysql -u root -pabc123
 
CREATE DATABASE zabbix_proxy character set utf8 collate utf8_bin;
GRANT all ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
flush privileges;

(5)导入数据库信息

rpm -ql zabbix-proxy-mysql 		#查询 sql 文件的位置
 
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.36/schema.sql.gz | mysql -uroot -pabc123 zabbix_proxy

(6)修改 zabbix-proxy 配置文件

vim /etc/zabbix/zabbix_proxy.conf
Server=192.168.204.214			#30行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-proxy					#49行,指定当前 zabbix 代理服务器的主机名
DBPassword=zabbix					#196行,指定当前数据库 zabbix 用户的密码

(7)启动 zabbix-proxy

systemctl start zabbix-proxy
systemctl enable zabbix-proxy

(8)在所有主机上配置 hosts 解析

192.168.204.214 zbx-server
192.168.204.215 zbx-agent01
192.168.204.216 zbx-proxy

(9) 在 Web 页面配置 agent 代理

点击左边菜单栏【配置】中的【动作】,勾选自动注册规则,点击 禁用
点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

​
点击左边菜单栏【管理】中的【agent代理程序】,点击【创建代理】
【agent代理程序名称】设置为 zbx-proxy
【系统代理程序模式】选择 主动式
【代理地址】设置为 192.168.204.216
点击 【添加】

3.配置 agent 使用 proxy

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

vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.204.216			#80行,指定 zabbix 代理服务器的 IP 地址
ServerActive=192.168.204.216		#120行,指定 zabbix 代理服务器的 IP 地址

(2) 在 Web 页面配置

点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】设置成 zbx-agent01
【可见的名称】设置成 zbx-agent01
【群组】选择 Linux server
【Interfaces】的【IP地址】设置成 192.168.204.215
【由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

4.设置 Zabbix-SNMP 监控

(1) 服务端安装 snmp 监控程序

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

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

vim /etc/snmp/snmpd.conf
......
view    systemview    included   .1				#57行,添加此配置
 
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
【Interfaces】点击【添加】选择 SNMP ,端口设置成 161
点击上方菜单栏【模板】,【链接的模板】中的所有 agent 模板选择取消链接并清理
再在【Link new templates】中搜索 Linux SNMP,选择 Template OS Linux SNMP
点击 【更新】,等待一段时间后 Zabbix server	的可用性就变成了 SNMP 监控方式。

二、实验

1.Zabbix代理服务器部署

(1)关闭防火墙、修改主机名

 

 

(2)设置 zabbix 的下载源,安装 zabbix-proxy

 

(3)安装 zabbix 所需的数据库

 

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

 

  

 

(5)导入数据库信息

 

 

(6)修改 zabbix-proxy 配置文件

 

 

 

(7)启动 zabbix-proxy

 

(8)在所有主机上配置 hosts 解析

 

 

 

  (9) 在 Web 页面配置 agent 代理

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

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

 

 

 

2.配置 agent 使用 proxy

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

指定 zabbix 代理服务器的 IP 地址

 指定 zabbix 代理服务器的 IP 地址

 

(2) 在 Web 页面配置

 

 

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

 

 

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

 

3.设置 Zabbix-SNMP 监控

(1) 服务端安装 snmp 监控程序

 

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

 

(3)使用 snmp 命令测试

 

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

 

 取消链接并清理

 SNMP已启动

 

三、总结

分布式监控作用:
分担 server 的集中式压力
解决多机房之间的网络延时问题

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

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

相关文章

基于Java开发的企业级数字化采购系统

一、项目介绍 一款全源码可二开,可基于云部署、私有部署的企业级数字化采购管理系统,供应商全生命周期管控,公开询价管理,招标,定标,评审,生成订单,送货,收货全流程管理…

Linux 上安装部署Nacos

标题:在Linux上安装和部署Nacos Nacos是一个开源的分布式服务发现和配置管理平台,它可以帮助开发人员实现微服务架构中的服务注册、发现和动态配置管理。 步骤1:准备工作 在开始安装Nacos之前,确保您已经具备以下条件&#xff1…

VS通过TCPIP与visionpro通讯

效果图 服务器端 visionpro配置服务器端,配置端口号、需要发送的数据等 客户端 vs编写代码接收数据 主要是复制的例程,到时候编写的时候可以借鉴。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Dat…

使用 `nmcli` 在 CentOS 8 上添加永久路由

CentOS 8 使用 NetworkManager 作为默认的网络管理工具,因此我们可以使用 nmcli 工具来实现相同的目标。使用 nmcli 可以更加直观地管理路由,并且更符合 CentOS 8 的默认网络管理方式。 以下是使用 nmcli 在 CentOS 8 上添加永久路由的步骤:…

类加载机制——双亲委派机制

类加载器分类 类加载器 类加载器(英文:ClassLoader)负责加载 .class 字节码文件,.class 字节码文件在文件开头有特定的文件标识。ClassLoader 只负责 .class 字节码文件的加载,至于它是否可以运行,则由 E…

【论文阅读】基于深度学习的时序异常检测——TimesNet

系列文章链接 参考数据集讲解:数据基础:多维时序数据集简介 论文一:2022 Anomaly Transformer:异常分数预测 论文二:2022 TransAD:异常分数预测 论文三:2023 TimesNet:基于卷积的多任…

《乡村振兴战略下传统村落文化旅游设计》浙江新华书店已售罄!

《乡村振兴战略下传统村落文化旅游设计》浙江新华书店已售罄!

CTF Stegano练习之隐写初探

今天要介绍的是CTF练习中的Stegano隐写题型 。做隐写题的时候,工具是很重要的,接下来介绍一些工具。 1、TrID TrID是一款根据文件二进制数据特征进行判断的文件类型识别工具。虽然也有类似的文件类型识别工具,但是大多数都是使用硬编码的识…

11个点告诉你 如何用Docker+jenkins 运行 python 自动化

一、实现思路 在 Linux 服务器安装 docker 创建 jenkins 容器 根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境) 运行新的 python 容器,执行 jenkins 从仓库中拉下来的自动化项目 执行完成之后删除容器 二、环境准备 Linux 服务器一台(我的是 C…

面向数据科学家和分析师的统计基础

推荐:使用 NSDT场景编辑器助你快速搭建可编辑的3D应用场景 “统计学是科学的语法。 卡尔皮尔逊 统计学在数据科学和数据分析中的重要性不容低估。统计提供了查找结构和提供更深入数据见解的工具和方法。统计学和数学都喜欢事实,讨厌猜测。了解这两个重要…

网络安全(黑客)零基础入门

导语 什么是 Web 安全?我又该如何入门学习它呢?学习过程中又应注意哪些问题呢?... 或许你的心中有着这样的疑问、不过别着急,本文会为你一一解答这些问题。 正文 定义 Web 安全,顾名思义便是由保障 Web 应用能够持续…

微信私域更好玩了

之前分享过,“小绿书”“公众号文章转音频”等内测中或悄悄已升级的功能。 其实,微信还在内测很多新功能,只是没公开 今天,小编又发现新升级 就是『附近』功能 增加了一个本地生活的入口,这里面是短视频和图文 展示…

IoTDB 1.x 开启外部访问

对于部署的IoTDB数据库,如果需要局域网内其他设备进行访问的处理。 1、防火墙开放端口 无论windows还是liunx都需要你将6667默认的端口加入防火墙中,否则肯定是无法访问端口 2、修改配置文件 对conf/iotdb-datanode.properties文件中的 修改为本机的…

Oracle DB 安全性 : TDE HSM TCPS Wallet Imperva

• 配置口令文件以使用区分大小写的口令 • 对表空间进行加密 • 配置对网络服务的细粒度访问 TCPS 安全口令支持 Oracle Database 11g中的口令: • 区分大小写 • 包含更多的字符 • 使用更安全的散列算法 • 在散列算法中使用salt 用户名仍是Oracle 标识…

Python入门02

0目录 1.容器操作(序列操作) 2.函数 3.模块 1.容器操作(序列操作) 列表的基本操作 定义一个列表[] 访问列表(打印或者通过下标和索引) 新增元素 Append(在末尾) 指定位置新增元素 Insert 删除&…

【算法篇C++实现】算法的时间、空间复杂度

文章目录 🚀一、算法的概念🚀二、算法的特征1.可行性2.确定性3.有穷性4.输入5.输出 🚀三、算法的评价1.正确性2.可读性3.健壮性 🚀四、算法的复杂度⛳(一)时间复杂度1、时间复杂度的概念2、大O的渐进表示法…

多线程案例(4)-线程池

文章目录 多线程案例四四、线程池 大家好,我是晓星航。今天为大家带来的是 多线程案例-线程池 相关的讲解!😀 多线程案例四 四、线程池 线程池是什么 虽然创建线程 / 销毁线程 的开销 想象这么一个场景: 在学校附近新开了一家…

MyBatis查询数据库之四(动态SQL -- if、trim、where、set、foreach 标签)

目录 动态SQL 一、 标签 二、标签 三、标签 四、标签 五、标签 动态SQL 动态 SQL 是 MyBatis 的强大特性之一,使用动态 SQL 并非一件易事,但借助可用于任何 SQL 映射语句中的强大的动态 SQL 语言,MyBatis 显著地提升了这一特性的易用性。…

【脚踢数据结构】链表(2)

(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,Linux基础,ARM开发板,软件配置等领域博主🌍快上🚘,一起学习,让我们成为一个强大的攻城狮!送给自己和读者的一句鸡汤🤔&…

Effective Java笔记(29)优先考虑泛型

一般来说 ,将集合声 明参数化,以及使用 JDK 所提供的泛型方法,这些都不太困难 。编写自己的泛型会比较困难一些,但是值得花些时间去学习如何编写 。 以简单的(玩具)堆校实现为例 : // Object -…