Zabbix自动注册服务器及部署代理服务器

文章目录

  • 一.zabbix自动注册
  • [二.部署 zabbix 代理服务器](#二.部署 zabbix 代理服务器)
  • [三.设置 zabbix-snmp 监控](#三.设置 zabbix-snmp 监控)
    • [1.服务端安装 snmp 监控程序](#1.服务端安装 snmp 监控程序)
    • [2.修改 snmp 的配置文件,并启动服务](#2.修改 snmp 的配置文件,并启动服务)
    • [3.使用 snmp 命令测试](#3.使用 snmp 命令测试)
    • [4.在 Web 页面配置 snmp 方式监控](#4.在 Web 页面配置 snmp 方式监控)

一.zabbix自动注册

1.什么是自动注册

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

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

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

2.环境准备

具体安装服务端及客户端请参考:https://blog.csdn.net/Katie_ff/article/details/132171211?spm=1001.2014.3001.5501

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

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

3.zabbix客户端配置

复制代码
vim /etc/hosts
192.168.198.17 zbx-server
192.168.198.18 zbx-agent01

#修改 zabbix-agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
......
#139行,取消注释即可保存退出
HostnameItem=system.hostname		

#过滤出客户端配置文件不以#开头且不是空行的内容,内容展示如下
[root@zbx-agent01 yum.repos.d]# 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.198.17
ServerActive=192.168.198.17
Hostname=zbx-agent01
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock

4.在 Web 页面配置自动注册

点击左边菜单栏【配置】中的【动作】,上方菜单选择 【Autoregistration actions】,点击【创建动作】

【名称】设置成 Auto registration

点击 【添加】,【类型】选择 主机名称,【操作者】选择 包含,【值】设置成 zbx-agent01

点击上方菜单栏【操作】,点击【添加】,【操作类型】选择 添加主机,点击 【add】

再点击【添加】,【操作类型】选择 添加到主机群组,【主机群组】选择 Linux servers,点击 【add】

再点击【添加】,【操作类型】选择 与模板关联,【模板】搜索 Linux,选择 Template OS Linux by Zabbix agent,点击 【add】

点击下方的【添加】







5.验证自动注册

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

复制代码
服务端:
tail -f /var/log/zabbix/zabbix_server.log
#实时查看server日志

二.部署 zabbix 代理服务器

1.分布式监控的作用:

(1)分担 server 的集中式压力

(2)解决多机房之间的网络延时问题

agent --> proxy --> server

2.环境部署

在原有zabbix server和zabbix agent2上再添加一台代理服务器

主机名 服务 IP地址
zbx-server zabbix-server 192.168.198.17
zbx-agent01 zabbix-agent2 192.168.198.18
zbx-proxy zabbix-proxy 198.168.198.14

3.代理服务器配置

复制代码
#关闭防火墙selinux并修改主机名刷新
systemctl disable --now firewalld
setenforce 0
hostnamectl set-hostname zbx-proxy
su

#设置 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 所需的数据库
yum install -y mariadb-server mariadb

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

#添加数据库用户,以及 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;

#导入数据库信息
#查询 sql 文件的位置
rpm -ql zabbix-proxy-mysql 		

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

#修改 zabbix-proxy 配置文件
vim /etc/zabbix/zabbix_proxy.conf
Server=192.168.10.22				#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
192.168.198.17 zbx-server
192.168.198.18 zbx-agent01
192.168.198.14 zbx-proxy

4.客户端配置

配置 agent 使用 proxy

客户端本身配置文件中服务器地址配置是zabbix server的地址,需要改为代理服务器的地址。

复制代码
#在客户端修改 agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.198.14			#80行,指定 zabbix 代理服务器的 IP 地址
ServerActive=192.168.198.14		#120行,指定 zabbix 代理服务器的 IP 地址

5.web页面配置

5.1 删除原来配置

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

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


5.2 添加代理

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

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

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

【代理地址】设置为 192.168.10.13

点击 【添加】


5.3 创建主机

在 Web 页面配置

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

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

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

【群组】选择 Linux server

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

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


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

复制代码
#客户端:
systemctl restart zabbix-agent2
#代理服务器
systemctl restart zabbix-proxy

5.5 验证结果

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

复制代码
在服务端查看日志
tail -f /var/log/zabbix/zabbix_proxy.log

三.设置 zabbix-snmp 监控

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----------------------------------------------------

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

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

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

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

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

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

:指定共同体字符串

sysname:为 snmp 的 key




等待一段时间后 Zabbix server 的可用性就变成了 SNMP 监控方式。

此处红色是:

Timeout while connecting to "127.0.0.1:161".

连接至"127.0.0.1:161"的过程中超时了。这个IP地址是回环地址,通常用于本地主机的测试和调试。端口号161通常用于Simple Network Management Protocol (SNMP)。超时可能有以下几个原因:

本地服务未运行或未正确配置:请确保SNMP服务已经启动,并检查配置是否正确。可以通过命令行或者服务管理工具来启动和管理SNMP服务。

防火墙设置:防火墙可能会阻止与该地址和端口的连接。请检查防火墙设置,确保相应的端口可以通信。

网络连接问题:超时可能是由于网络故障或连接中断引起的。请检查网络连接,并确保本地主机与目标主机之间的通信没有问题。

此处是本地服务器未运行的原因

案列学习

https://www.cnblogs.com/yanjieli/p/16045759.html

https://blog.csdn.net/qq_45392321/article/details/123147765

相关推荐
小嵌同学21 分钟前
Linux 内核中的 Per-CPU 机制详解
linux·运维·arm开发·嵌入式
云飞云共享云桌面26 分钟前
自动化设备厂 10 人研发团队,如何共用一台服务器做 SolidWorks 建模?
运维·服务器·网络·3d·自动化·制造
筝筝ba1 小时前
Configure IP Address Via Different User Roles And Verify(1)
服务器
QH139292318801 小时前
NVIDIA H200 H300服务器
运维·服务器·开发语言·网络·信息与通信
xixiaoyunya1 小时前
中小微企业轻量组网方案的技术选型与实践:从传统专线到软定义隧道的成本与效能分析
服务器·php·apache
Hello-FPGA1 小时前
嵌入式LINUX 设备 ip配置后怎么保存才能掉电不消失?
linux·运维·服务器
奥莱维1 小时前
KNX酒店方案_KNX专用线与高端酒店技术逻辑
java·服务器·前端·数据库
工业一体机老司机2 小时前
Linux工业一体机自启动服务配置:systemd服务单元编写与开机优化实战
java·linux·服务器
zhixingheyi_tian2 小时前
Linux 之 ssh
linux·服务器·ssh
艾伦_耶格宇2 小时前
【DOCKER容器实战】-2MySQL
运维·docker·容器