【问题标题】:How to enable systemd collector in docker-compose.yml file for node exporter如何在 docker-compose.yml 文件中为节点导出器启用 systemd 收集器
【发布时间】:2019-03-17 17:12:24
【问题描述】:

您好,我是 prometheus 的新手,我的任务是让 prometheus 显示 systemd 服务指标(我使用 grafana 进行可视化)我使用 stefanprodan/dockprom 示例作为我的起点,但是我找不到如何启用 systemd docker-compose.yml 的节点导出器部分中的节点导出器的收集器,并且还保留所有默认启用的收集器。我还需要帮助将这些信息发送到 grafana。我会很感激示例中的代码或一个我可以找到足够解释如何像傻瓜一样做的地方,因为我没有经验。提前致谢。

【问题讨论】:

  • 您好,您需要的范围似乎很广泛,如果您将介绍/问题中的帖子分开,可能有助于其他人了解您的需求。

标签: docker-compose prometheus


【解决方案1】:

为了在 node_exporter 中启用 systemd 收集器,需要将命令行标志 --collector.systemd 传递给导出器(reference)。默认收集器将保持启用状态,因此您无需担心。

为了将该标志传递给应用程序,您需要将该标志添加到 Docker Compose 文件 (here) 的 nodeexporter 部分的 command 部分中

关于将数据发送到 Grafana,只要您在 Grafana 中配置了 Prometheus 数据源,这些指标就会自动显示——您无需在或删除指标时更新 Prometheus->Grafana (或者真的,在初始设置之后)。

【讨论】:

  • 当我将 --collector.systemd 添加到 docker-compose 文件时 - grafana 中的仪表板什么也没有显示,但是当我删除此选项时,仪表板通常会显示默认统计信息 - CPU、内存等。也许应该写成 --collector.systemd=enabled?
  • 顺便说一句,当我在我的机器上启动默认的 stefanprodan/dockprom 项目时,所有默认仪表板都工作正常,但是当我尝试您的选项时,主机系统指标的仪表板什么也没有显示。希望你能帮助解开这个谜
  • 除了那个标志外,它应该不需要任何其他东西。这是我用来运行我的 node_exporters 的命令,你可以看到它只是说 --collector.systemd: /usr/local/bin/node_exporter \ --web.listen-address 0.0.0.0:9100 \ --collector.filesystem.ignored-fs-types=^(sys|proc|auto)fs$ \ --collector.filesystem.ignored-mount-points=^/(sys|proc|dev)($|/) \ --collector.systemd \ --no-collector.logind \ --no-collector.ntp \ --collector.textfile.directory=/opt/prometheus/textfile_collector
  • 我猜在添加选项时由于某种原因 node_exporter 无法启动?您需要查看该容器的 docker 日志(类似于 docker logs nodeexporter)。您还可以在 Prometheus 仪表板(例如 localhost:9090/targets)上查看该抓取目标是否报告为关闭。
猜你喜欢
  • 1970-01-01
  • 2016-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-12
相关资源
最近更新 更多