Zabbix 的使用

news2024/9/23 15:30:08

Zabbix 的使用

  • 一、添加 zabbix 客户端主机
    • 1.1 环境准备
    • 1.2 服务端和客户端都配置时间同步
    • 1.3 服务端和客户端都设置 hosts 解析
    • 1.4 设置 zabbix 的下载源,安装 zabbix-agent2
    • 1.5 修改 agent2 配置文件
    • 1.6 启动 zabbix-agent2
    • 1.7 在服务端验证 zabbix-agent2 的连通性
      • 1.7.1 常用的键值
    • 1.8 在 Web 页面中添加 agent 主机
    • 1.9 监控模板下载地址
  • 二、自定义监控内容
    • 2.1 在客户端创建自定义 key
    • 2.2 在 Web 页面创建自定义监控项模板
    • 2.3 测试邮件报警
  • 三、zabbix 自动发现与自动注册
    • 3.1 zabbix 自动发现(对于 agent2 是被动模式)
    • 2.2 zabbix 自动注册(对于 agent2 是主动模式)

一、添加 zabbix 客户端主机

1.1 环境准备

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

在这里插入图片描述

1.2 服务端和客户端都配置时间同步

yum install -y ntpdate
ntpdate -u ntp.aliyun.com

在这里插入图片描述

1.3 服务端和客户端都设置 hosts 解析

cat > /etc/hosts << EOF
192.168.80.20 zbx-server
192.168.80.30 zbx-agent01
EOF

在这里插入图片描述

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

rpm -ivh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm
sed -i 's#https://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum install -y zabbix-agent2

在这里插入图片描述

1.5 修改 agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.80.20			#80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.80.20		#133行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-agent01			#144行,指定当前 zabbix 客户端的主机名

在这里插入图片描述

在这里插入图片描述

1.6 启动 zabbix-agent2

systemctl start zabbix-agent2
systemctl enable zabbix-agent2

netstat -natp | grep zabbix
tcp6       0      0 :::10050                :::*                    LISTEN      43654/zabbix_agent2 

在这里插入图片描述

1.7 在服务端验证 zabbix-agent2 的连通性

yum install -y zabbix-get				#安装 zabbix 主动获取数据的命令

zabbix_get -s '192.168.80.30' -p 10050 -k 'agent.ping'
1

zabbix_get -s '192.168.80.30' -p 10050 -k 'system.hostname'
zbx-agent01

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

1.7.1 常用的键值

agent.ping												#服务端与客户端是否连通,返回1表示可达,返回非表示不可达
system.hostname											#系统主机名
agent.hostname											#客户端主机名
net.if.in[if,<mode>]									#网络接口进入的流量统计,if表示网卡名称,带<>的参数表示可以省略
net.if.out[if,<mode>]									#网络接口流出的流量统计
proc.num[<name>,<user>,<state>,<cmdline>,<zone>]		#进程数
net.tcp.port[<ip>,port]									#检查是否能建立tcp连接到指定端口,返回0表示不能连接,返回1表示可以连接

1.8 在 Web 页面中添加 agent 主机

点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】输入 zbx-agent01
【可见的名称】输入 zbx-agent01-192.168.80.30
【模板】搜索 Linux ,选择 Linux by Zabbix agent
【群组】选择 Linux servers
【Interfaces】点击添加 客户端,【IP地址】输入 192.168.80.30

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

1.9 监控模板下载地址

https://share.zabbix.com/
https://monitoringartist.github.io/zabbix-searcher/
https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates

二、自定义监控内容

  • 例:自定义监控客户端服务器登录的人数
  • 需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息

2.1 在客户端创建自定义 key

1.明确需要执行的 linux 命令
who | wc -l

2.创建 zabbix 的监控项配置文件,用于自定义 key
vim /etc/zabbix/zabbix_agent2.conf
#可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中
281 Include=/etc/zabbix/zabbix_agent2.d/*.conf
#自定义监控项的格式如下
321 #	Format: UserParameter=<key>,<shell command>

cd /etc/zabbix/zabbix_agent2.d/

vim UserParameter_login.conf
UserParameter=login.user,who|wc -l

systemctl restart zabbix-agent2

3.在服务端验证新建的监控项
zabbix_get -s '192.168.80.30' -p 10050 -k 'login.user'

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

2.2 在 Web 页面创建自定义监控项模板

1.创建模板
点击左边菜单栏【配置】中的【模板】,点击【创建模板】
【模板名称】设置成 Template Login User
【可见的名称】设置成 Template Login User
【群组】选择 Template
【描述】可自定义
点击 【添加】,此时就可在【名称】中搜索到 Template Login User 了


2.创建监控项
点击 Template Login User 模板进入
点击上方菜单栏【监控项】,点击【创建监控项】
【名称】设置成 Number of login users
【键值】设置成 login.user			#键值必须要与自定义的监控项配置文件中设置的保持一致
【更新间隔】设置成 10s
【历史数据保留时长】Storage period	30d		#保留时间可自定义设置
点击 【添加】

3.创建触发器(当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警)
点击上方菜单栏【触发器】,点击【创建触发器】
【名称】设置成 Number of login users is greater than 3
【严重性】设置成 一般严重		#根据严重程度可自定义设置
【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】
点击 【添加】

4.创建图形
点击上方菜单栏【图形】,点击【创建图形】
【名称】设置成 Number of login users
【宽】、【高】可直接采用默认值
【监控项】点击添加勾选相关监控项 Number of login users,【功能】选择 最大,其它可保持默认值
点击 【添加】

5.将主机与模板关联起来(一个主机可以关联多个模板)
点击左边菜单栏【配置】中的【主机】,点击你要关联的主机
【模板】搜索 login,选择 Template Login User,点击【更新】

此时就点击【监测】中的【主机】,点击你关联主机的【图形】,即可查看到相关的监控项指标

6.设置邮件报警
点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】
【名称】设置成 qq_Email
【SMTP服务器】设置成 smtp.qq.com
【SMTP服务器端口】设置成 25
【SMTP HELO】设置成 qq.com
【SMTP电邮】设置成 自己的邮箱地址,例如 qwe4546456@qq.com
【认证】选择 用户名和密码
【用户名称】设置成 自己的邮箱地址,例如 qwe4546456@qq.com
【密码】可登录QQ邮箱页面,点击【设置】-->【账户】中的【生成授权码】,通过短信获取授权码
【描述】可自定义
点击上方菜单栏【Message templates】,点击【添加】,【Message type】选择 问题,点击【更新】
点击 【添加】,并测试功能

点击左边菜单栏【User settings】-->【Profile】-->【报警媒介】,点击【添加】
【类型】选择 qq_Email
【收件人】设置成 qwe4546456@wo.cn
【当启用时】设置成 1-7,00:00-24:00
【如果存在严重性则使用】勾选需要的严重性
点击 【添加】
再点击 【更新】

点击左边菜单栏【配置】->【动作】->【Trigger actions】
选择相对应的动作名称点击进入,点击 【添加】
【类型】选择 触发器,【操作者】选择 等于,【触发器】点击选择 Nunber of login users is greater than 3
点击【添加】
勾选 【已启动】
点击 【更新】

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

在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述

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

2.3 测试邮件报警

  • 增加测试客户端的用户登录数超过触发器预设的值,查看【监测】–>【仪表板】,确认报警

在这里插入图片描述

在这里插入图片描述

三、zabbix 自动发现与自动注册

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

  • zabbix server 主动的去发现所有的客户端,然后将客户端的信息登记在服务端上。
  • 缺点是如果定义的网段中的主机数量多,zabbix server 登记耗时较久,且压力会较大。
systemctl disable --now firewalld
setenforce 0
hostnamectl set-hostname zbx-agent02

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


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


3.在服务端和客户端上配置 hosts 解析
vim /etc/hosts
192.168.80.20 zbx-server
192.168.80.30 zbx-agent01
192.168.80.40 zbx-agent02


4.在 Web 页面配置自动发现
点击左边菜单栏【配置】中的【自动发现】,点击【创建发现规则】
【名称】设置成 mynetwork
【IP范围】设置成 192.168.80.1-254
【更新间隔】设置成 30s
【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname
【设备唯一性准则】选择 IP地址
【主机名称】选择 DNS名称
【可见的名称】选择 主机名称
勾选 【已启用】,点击 【添加】

点击左边菜单栏【配置】中的【动作】,上方菜单选择 【发现动作】
勾选 【Auto discovery. Linux servers.】,点击 【启用】

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

可在服务端查看 zabbix 日志
tail -f /var/log/zabbix_server.log
......
  6601:20210922:225044.115 enabling Zabbix agent checks on host "zbx-agent02": interface became available

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

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

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

  • zabbix agent2 会主动上报自己的信息,发给 zabbix server。
  • 缺点是可能因为配置文件配置错误或者网络不通等原因导致 zabbix agent2 可能找不到 zabbix server。
1.环境准备
点击左边菜单栏【配置】中的【发现动作】,勾选发现规则,点击 禁用
点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

vim /etc/hosts
192.168.80.20 zbx-server
192.168.80.30 zbx-agent01
192.168.80.40 zbx-agent02


2.修改 zabbix-agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
......
HostnameItem=system.hostname		#152行,取消注释

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.80.20
ServerActive=192.168.80.20
Hostname=zbx-agent01
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock

systemctl restart zabbix-agent2


3.在 Web 页面配置自动注册
点击左边菜单栏【配置】中的【动作】,上方菜单选择 【自动注册动作】,点击【创建动作】
【名称】设置成 Auto registration
点击 【添加】,【类型】选择 主机名称,【操作者】选择 包含,【值】设置成 zbx-agent
点击上方菜单栏【操作】,点击【添加】,【操作类型】选择 添加主机,点击 【Add】
再点击【添加】,【操作类型】选择 添加到主机群组,【主机群组】选择 Linux servers,点击 【Add】
再点击【添加】,【操作类型】选择 与模板关联,【模板】搜索 Linux,选择 Linux by Zabbix agent,点击 【Add】
点击下方的【添加】

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

在服务端查看 zabbix 日志
tail -f /var/log/zabbix_server.log

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

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

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

相关文章

粮油溯源系统源码 全流程可视化质量溯源系统源码

粮油质量溯源系统源码 粮油溯源系统是从种植到加工、包装、库存、物流、销售、售出、异常反馈的全流程可视化质量溯源系统。 粮油安全关系千千万万消费者的健康问题。近年来&#xff0c;许多食品行业安全事故频频涌现&#xff0c;成为社会关注焦点。粮油做为人们生活饮食中的…

jpa使用uuid策略后无法手动设置id的问题

实体对象定义如下&#xff1a; Data Entity Table(name "sys_user") public class UserDO {/** 用户id */IdGenericGenerator(name "uuid", strategy "org.hibernate.id.UUIDGenerator")GeneratedValue(generator "uuid")Column(…

linux ifconfig: command not found

ifconfig 报 -bash: ifconfig: command not found 此时我们查看 /sbin 目录&#xff0c;会发现他是没有 ifconfig 相关文件的 ls | grep ifconfig # 查看不到相关文件 ip addr 后显示 ens33没有ip地址 发现 ens33 没有 inet 这个属性&#xff0c;那么就没法通过IP地…

【Distributed】分布式监控系统zabbix应用(二)

文章目录 一、部署 Zabbix 代理服务器1. 分布式监控的作用2. 部署过程2.1 设置 zabbix 的下载源&#xff0c;安装 zabbix-proxy2.2 部署数据库2.3 导入数据库信息2.4 修改 zabbix-proxy 配置文件2.5 启动 zabbix-proxy2.6 在所有主机上配置 hosts 解析2.7 在 Web 页面配置 agen…

iOS打包IPA教程

转载&#xff1a;xcode打包导出ipa 众所周知&#xff0c;在开发苹果应用时需要使用签名&#xff08;证书&#xff09;才能进行打包安装苹果 IPA&#xff0c;作为刚接触ios开发的同学&#xff0c;只是学习ios app开发内测&#xff0c;并没有上架appstore需求&#xff0c;对于苹…

算法----Nim 游戏

题目 你和你的朋友&#xff0c;两个人一起玩 Nim 游戏&#xff1a; 桌子上有一堆石头。 你们轮流进行自己的回合&#xff0c; 你作为先手 。 每一回合&#xff0c;轮到的人拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。 假设你们每一步都是最优解。请编写一个函数&a…

华为OD机试真题 Python 实现【字符串重新排序】【2023Q1 100分】,附详细解题思路

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Python算法源码六、效果展示1、输入2、输出 一、题目描述 给定一个字串s&#xff0c;s包含以空格分隔的若干个单词&#xff0c;请对s进行如下处理后输出&#xff1a; 1、单词内部调整 对每个单词字母重新按字典序…

数据库之表的创建及数据类型

目录 创建表 简单语法&#xff1a; 固定格式&#xff1a; 案例 数据类型 文本类型 文本型 字符串型 二进制文本 枚举型 集合型 数字类型 整数型 浮点型 Date类型 DATE()日期 DATETIME() 日期和时间的组合 TIMESTAMP() 时间戳 TIME() 时间 YEAR() 2 位或 4 位…

Vue组件库Element-常见组件-表格

对于Element组件的使用&#xff0c;最主要的就是明确自己想要达到的效果&#xff0c;从官网中将对应代码复制粘贴即可&#xff0c;最重要的是要读懂不同组件官网中提供的文档&#xff0c;以便实现自己想要的效果 常见组件-表格 Table&#xff1a;表格&#xff1a;用于展示多条…

AE脚本适应底栏边框文字标题动画 Box It v1.0使用教程

这个AE脚本Box It主要是用于快速创建复杂的动态文本框,非常适合下第三标题、标签、聊天气泡、多个文本框等。 它的主要特点有: 1. 简单易用,无需键入任何代码,通过简单的拖放和调整参数即可创建动态文本框 2. 包含多种预设选项,如简单、标准、粗体、标签、聊天气泡等,可以直接使…

多语言跨境电商系统开发,支持一键铺货,商品采集

随着全球贸易的不断发展&#xff0c;跨境电商成为了一个日趋热门的领域。作为一种全新的商业模式&#xff0c;跨境电商为消费者提供了更加便捷、高效、多样化的购物体验。然而&#xff0c;要实现跨境电商的顺利发展&#xff0c;必须依靠先进的技术手段。 跨境电商系统是实现跨…

Stable Diffusion WebUI 集成 LoRA模型,给自己做一张壁纸 Ubuntu22.04 rtx2060 6G

LoRA概念 LoRA的全称是LoRA: Low-Rank Adaptation of Large Language Models&#xff0c;可以理解为stable diffusion&#xff08;SD)模型的一种插件&#xff0c;和hyper-network&#xff0c;controlNet一样&#xff0c;都是在不修改SD模型的前提下&#xff0c;利用少量数据训…

java web介绍

Web Java 技术栈 B/S 架构&#xff1a;Browser/Server,浏览器/服务器架构模式&#xff0c;它的特点是&#xff0c;客户端只需要浏览器&#xff0c;应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器&#xff0c;获取 Wb 资源&#xff0c;服务器把 Wb 资源发送给…

如何做好数仓 BI 项目的规划与建设?

BI项目规划和实施方案是保障BI项目顺利落地的首要环节。好的项目规划能有效提升开发人效&#xff0c;缩短项目周期&#xff0c;实现项目预期目标。 构建运营数据的可视化是为企业运营管控提供有效的支撑&#xff0c;成为企业在大数据时代智慧运营的必然路径。 在实际BI项目的…

古典密码之一的Playfair密码的实现

目录 一.古典密码 二.Playfair密码的介绍 三.Playfair密码的实现 1.密钥转大写和密钥去重 2.输入密钥并打印密钥表 2.输入明文并加密为密文 3.输入密文并解密为明文 四.全部代码 一.古典密码 最早的加密方法可以追溯到公元前4000年左右的古代文明时期。埃及人、古希腊…

python解析考试题库数据

应单位要求需要参加某个考试&#xff0c;但考试需要从手机端登陆学习&#xff0c;1000多道题需要挨个刷一遍太过于麻烦&#xff0c;萌生了把题目和答案全部扒下来的想法&#xff0c;再用python做数据的清洗和梳理&#xff0c;最后整合出来所有的考试题库信息。 首先打开浏览器…

Socks5代理是什么?有哪些优势?

在线隐私和⽹络领域&#xff0c;Socks5代理已经成为⼀种受欢迎且强⼤的⼯具。但是Socks5是什么呢&#xff1f;使⽤Socks代理有什么优势&#xff1f;在本⽂中&#xff0c;Oxylabs和你一起探讨这些问题&#xff0c;揭⽰Socks5代理的世界。 深⼊了解Socks5代理 socks&#xff08…

计算机网络 day3 广播风暴 - VLAN - Trunk

目录 广播风暴&#xff1a; 1.什么是广播风暴&#xff1f; 2.危害&#xff1a; 3.防范 STP生成树协议&#xff1a;(72条消息) 生成树协议 — STP_生成树协议步骤_一下子就醒了的博客-CSDN博客 VLAN&#xff1a; VLAN是什么&#xff1f; VLAN起到的作用&#xff1a; 广…

软件测试常见基础知识面试题

一、测试基础理论 1.1 什么是软件测试&#xff1f; 为了发现程序中的错误而执行程序的过程 1.2 软件测试流程 1&#xff09;需求调查 2&#xff09;制定初步的项目计划 3&#xff09;测试准备 4&#xff09;测试设计 5&#xff09;测试实施 6&#xff09;测试评估 1.3 软件…

华为OD机试真题 Python 实现【字符串解密】【2023 B卷 100分】,附详细解题思路

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Python算法源码六、效果展示1、输入2、输出3、说明 一、题目描述 给定两个字符串string1和string2。 string1是一个被加扰的字符串。string1由小写英文字母&#xff08;‘a’-‘z’&#xff09;和数字字符&#xf…