五、Zabbix自动化监控

本文详细介绍了如何通过网络发现与自动注册功能在Zabbix中批量添加主机,包括配置网络发现规则、自动注册流程、主动与被动模式的区别,以及低级发现LLD在监控端口和Redis多实例中的应用实例。

文章目录

1. 自动化监控概述

1.1 自动化添加主机

假设我们现在有100台主机需要添加,如果是一台台手动添加,工作量非常大。怎么样解决呢?我们可以通过zabbix提供的自动注册或自动发现来实现主机的批量添加。

1.2 自动化添加主机方式

网络发现(Network discovery)
自动注册(Active agent auto-registration)

2. 网络发现概念

2.1 发现原理

  • 自动发现由两个步骤组成:发现discovery 和动作action
    • 1.首先zabbix 周期性扫描“网络发现规则”中定义的IP段,发现满足规则的主机
    • 2.然后使这些主机完成动作,添加主机、链接模版、发送通知等
      在这里插入图片描述

2.2 规则示例

配置zabbix的网络来发现主机:

  • 首先进入配置→自动发现
  • 点击创建发现规则
  • 编辑自动发现规则属性
    • IP范围:192.168.20.1 - 192.168.20.254指zabbix会自动扫描这个网段的所有IP,依次连接这些IP的10050端口;
    • 检查:尝试通过system.uname监控项,看看是否能获取到数据,如果可以则假如该主机;
      在这里插入图片描述

2.3 网络发现实践

2.3.1 场景需求

例如我们设置IP段为192.168.20.1-192.168.20.254的网络发现规则,我们需要怎么操作:

  • 发现有zabbix agent 运行的主机
  • 每10分钟执行一次
  • 如果主机正常运行时间超过2分钟,添加主机
  • 如果主机停机时间超过24小时,删除主机
  • 将Linux主机添加到"Linux server"组、链接模版Template OS linux到linux主机

2.3.2 发现场景-步骤1

在这里插入图片描述

2.3.3 发现场景-步骤2

点击配置→动作→Discovery actions

  • “zabbix agent"服务器是"up”
  • system.uname(规则中定义的zabbix agent键值)包含“linux”
  • 正常运行时间为2分钟(120秒)或者更长
    在这里插入图片描述

该动作(action)将执行以下操作:

  • 将发现的主机添加到Linux server组(如果以前未添加主机,则自动添加主机)
  • 链接主机到Template OS Linux 模版
    在这里插入图片描述

2.3.4 发现场景-步骤3

定义动作删除失联主机
在这里插入图片描述
在这里插入图片描述

2.3.5 网络发现结果检查

2.4 网络发现总结

网络发现虽然能发现并添加主机,但依然存在一些问题:

  • 1.发现时间长,效率低; 因为是串行添加 1-2-3-4-5
  • 2.扫描过程中容易漏扫
  • 3.当IP地址不固定难以实现
  • 4.无法实现不同类型主机关联不同模版

3. 自动注册概念

3.1 注册原理

自动注册(agent auto-registration)功能主要用于Agent 主动向Server注册,与网络发现有同样的功能,但是这个功能更适用于云环境下,因为云环境下IP地址是随机的,难以使用网络发现方式实现;
1、注册时间短
2、适用于云复杂环境,IP地址无规律
3、关联不同的模版
4、提高server性能

3.2 注册配置

自动注册主要分为两个步骤:
1.自动注册,客户端避险开启主动模式,并设定主机名称
2.在zabbix web中配置一个自动注册的动作

3.3 自动注册实践-1

3.3.1 场景需求

  • 根据不同的主机名称关联不同的主机模版
  • web主机节点,需要关联Template OS Linux模版、TCP status模版、Nginx模版
  • db主机节点,需要管理Template OS Linux模版、MySQL模版

3.3.2 配置ZabbixAgent

每当活动agent刷新主动检查到服务器的请求时,都会进行自动注册尝试。
请求的延时在agent的RefreshActiveChecks参数中指定,第一个请求在agent重启后立即发送

[root@localhost ~]# vim /etc/zabbix/zabbix_agent2.conf 
Server=192.168.20.46
ServerActive=192.168.20.46  #设置主动模式 
Hostname=web02              #指定主机名,如不指定则服务器将使用agent的系统主机名命名主机

[root@localhost ~]# /etc/init.d/zabbix-agent2 restart

3.3.3 配置ZabbixServer

点击配置→动作→Autoregistration actions, 添加两个动作,一个是针对web组,一个是针对db组;
在这里插入图片描述

3.3.4 自动注册结果检查

在这里插入图片描述

3.4 自动注册实践-2

3.4.1 场景需求

  • 根据不同主机名称关联不同的主机模版
  • web主机节点,需要关联Template OS Linux模版、TCL status模版、Nginx模版、PHP模版;
  • db主机节点,需要关联Template OS Linux模版、MySQL模版;
  • 客户端采用Ansible Playbook实现,做到完全自动化添加主机,并智能添加模版

3.4.2 配置Ansible

#1.安装
#2.配置
server
serverActive
Hostname
#2.所有的脚本,所有的UserParameter全部导入到对应
的目录中;
#3.启动
# 脚本参考: roles_zbx.tar.gz
1.agent适用ansible来运行; (serverActive
Hostname )
2.所有的agen
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值