zabbix Trapper VS zabbix agent

zabbix Trapper VS zabbix agent

我想用 zabbix 监控大约 200 台服务器。我的zabbix版本是5.
我阅读了 zabbix trapper 和 zabbix agent 并测试了它们是如何工作的。
现在,在我开始监控所有服务器之前,我想知道哪种方法更好用?
zabbix agent 还是 zabbix trapper?
如果我在每个服务器上有 10 个项目需要每 60 秒监控一次,我将有 2000 个值。
编写一个脚本将它们的值发送到 zabbix 或 zabbix agent 运行 那些命令更好吗?

我要监控的项目是OS组件、数据库、文件系统和网络。

Zabbix Agent 用途广泛,支持大多数 OS 和应用程序指标,但您不能在大多数设备上安装 Zabbix Agent:您可能会面临失去供应商支持的风险。这就是 Zabbix Trapper 存在的原因,它是一种解决方法,可以在无法安装 Zabbix Agent 的情况下使用。

首选方法是使用 Zabbix 代理如果可能

Zabbix 代理专家:

  • 它包含大量 built-in 功能,并且可以通过 UserParameter 指令或编译模块扩展其功能;
  • 开发者官方支持(Zabbix公司);
  • 大多数检查都以非常有效的方式执行;
  • 它可以在被动模式(代理由服务器或代理轮询)和主动模式(代理是连接的发起者,它定期轮询Server/Proxy检查列表,跟踪检查的时间安排并发送检查结果);
  • 它更灵活且更易于维护:如果您需要监控一些额外的参数,在大多数情况下,您可以通过 Zabbix web-interface 进行设置,而无需 re-configure 代理。

Zabbix 代理缺点:

  • 有些平台根本不存在Zabbix Agent(例如IBM system i - 以前称为AS/400)或者由于某些原因(例如设备)安装起来很麻烦;
  • 每次检查都应该足够快地执行,允许的最大超时限制为 30 秒;因此不可能将它用于 long-running 检查(例如,可能 运行 几分钟或几小时的脚本);

Zabbix Trapper(更准确地说 - zabbix_sender 实用程序)是一个很好的补充,如果您没有足够的标准 Zabbix Agent 功能。它的主要任务是在脚本中使用,因为它只是将检查结果传输到 Zabbix Server/Proxy 的工具(但检查本身应该通过其他方式执行)。 一个典型的用例是:

  • long-running 个脚本;
  • 没有严格时间表的事件(例如:在作业完成时发送备份作业的状态;但有时此作业可能 运行 几分钟,有时 - 几个小时)。

捕手专家:

  • 它可以通过 stdin 读取数据,即可以在脚本中用作管道目标;
  • 它可以非常有效地传递很多价值。

陷阱缺点:

  • 它不是一个现成的监控解决方案,它只是提供检查结果的工具(因此,它需要一些工具来获取这些结果——通常是一些脚本);
  • 它需要一些外部调度机制;
  • 如果需要监控一些额外的参数,需要修改一些脚本;
  • 它使用类似于 Zabbix Agent 运行ning 的协议与 Zabbix Server/Proxy 通信,仅在主动模式下;即不可能从 Server/Proxy 端对其进行轮询(它可能会限制其在某些网络拓扑配置中的使用)。