本地导出器

编辑

Elastic Agent 和 Metricbeat 是将监控数据收集并传输到监控集群的推荐方法。

如果您之前配置了传统的收集方法,则应迁移到使用 Elastic AgentMetricbeat 收集。请不要同时使用传统收集方法和其他收集方法。

local 导出器是 X-Pack 监控中的默认导出器。它将数据路由回同一个(本地)集群。换句话说,它使用生产集群作为监控集群。例如

xpack.monitoring.exporters.my_local_exporter: 
  type: local

导出器名称唯一地定义了导出器,但在其他方面未使用。

当硬件不可用时,此导出器提供了一个方便的选项。它也是开发人员了解其操作对预生产集群的影响的一种方式,当他们没有时间或资源来提供单独的监控集群时。但是,此导出器具有影响本地集群的缺点

  • 所有索引都会影响本地集群以及保存监控索引分片的节点。
  • 大多数收集器在选出的主节点上运行。因此,大多数索引都以选出的主节点作为协调节点进行,这是一种不好的做法。
  • 任何用于 Kibana 的 X-Pack 监控都会使用本地集群的资源进行搜索和聚合,这意味着它们可能无法用于非监控任务。
  • 如果本地集群宕机,监控集群也会随之宕机(反之亦然),这通常会使监控的目的落空。

对于 local 导出器,所有设置仅在选出的主节点上发生。这意味着,如果您没有看到任何监控模板或摄取管道,则说明选出的主节点存在问题或配置方式不同。与 http 导出器不同,local 导出器的优势在于可以访问监控集群的最新集群状态。因此,它始终可以检查模板和摄取管道是否存在,而不会造成性能损失。如果选出的主节点在尝试创建监控资源时遇到错误,它会记录错误,忽略该收集,并在下次收集后再次尝试。

选出的主节点是唯一为 local 导出器设置资源的节点。因此,所有其他节点都会等待资源设置完成后,再索引其自己的收集器的任何监控数据。这些节点中的每一个都会记录一条消息,指示它们正在等待资源设置完成。

local 导出器的一个好处是它存在于集群内部,因此当集群使用 Elastic Stack 安全功能进行保护时,无需进行额外的配置。从 local 导出器发生的所有操作(包括索引操作)都会使用 Elasticsearch 内的内部传输机制。此行为使导出器在启用安全功能时无需提供任何用户凭据即可使用。

有关 local 导出器的配置选项的更多信息,请参阅 本地导出器设置

清理器服务

编辑

local 导出器的一个功能(http 导出器中不存在)是清理器服务。清理器服务每天在 UTC 时间凌晨 01:00 在选出的主节点上运行一次。

清理器服务的作用是清理或整理早于可配置时间量(默认为 7d)的监控索引。此清理器作为 local 导出器的一部分存在,作为一种安全机制。http 导出器不使用它,因为它可能会使单个配置错误的节点过早地整理来自共享同一监控集群的其他生产集群的数据。

在专用监控集群中,您可以使用清理器服务,而无需监控监控集群本身。例如

xpack.monitoring.collection.enabled: false 
xpack.monitoring.history.duration: 3d 

禁用监控集群上的数据收集。

将默认历史记录持续时间从 7d 降低到 3d。最小值为 1d。此设置仅在使用 Gold 或更高级别许可证时才能修改。对于 Basic 许可证级别,它使用默认的 7 天。

要禁用清理器服务,请添加禁用的本地导出器

xpack.monitoring.exporters.my_local.type: local 
xpack.monitoring.exporters.my_local.enabled: false 

添加一个名为 my_local 的本地导出器

禁用本地导出器。这也将禁用清理器服务。