
使用 Prometheus 和 Grafana 的 Ping 指标
一个简单的帖子, 我相信可以在任何领域做出贡献, 这只不过是 ping 😊😂, 让我们看看我笑, 但它在很多场合都提供了有趣的信息. 在这篇文章中,我们将了解如何将 ping 发送到我们感兴趣的内部/外部 IP 地址,以了解它们的延迟, 如果有割伤… 并使用 Grafana 直观地理解它.
如果我们对实时了解感兴趣 (在 1 第二, 5…) 连接到某些 IP 地址, 以最低限度了解我们何时遇到网络问题, 我们是否无法访问互联网, 我们发布的服务, 或委托的内部 IP 地址, 数据中心… 我们有兴趣了解的 IP 地址 (我) 如果软件包掉落且 (第二) 您的回复时间 (了解延迟). 在这篇文章中,我们将了解如何以非常简单快捷的方式组装它.
正如我告诉你的, 今年,我打算稍微强调一下我们在博客中尚未太多涉及的此类主题, 尤其是那些易于部署并适用于大多数人🙂的 那么让我们开始吧! 假设我们的环境中已经有 部署了 Prometheus 和 Grafana, 我们可以开始.
最有效的方法是部署另一个 Docker 容器, 在本例中,我们将使用 'ping-exporter’ 这将使我们能够在 Grafana 仪表板中 ping 和可视化其数据, 我们创建文件夹并进入:
cd mkdir ping-exporter mkdir ping-exporter/config cd ping-exporter
我们使用 'nano docker-compose.yaml 为此容器创建 docker compose 配置文件’
版本: '3.9' services: ping_exporter: 图像: 切尔旺克/ping_exporter container_name: ping_exporter卷: - './config:/配置:ro' ports: - '9427:9427' restart: Unless-Stopped 网络: ping_exporter_default: 网络: ping_exporter_default: 司机: 网桥 Ipam: 配置: - 子: XX.XX.XX.0/24 网关: XX.XX.XX.1
您将在其中创建一个名为 ping_exporter, 基于 ping_exporter 的形象, 这将挂载 config 文件夹并在端口 9427TCP 上公开 ping 指标, 我喜欢定义特定网络范围的特殊性, 否则, 我跳过了最后几个 4 线.
下一步, 将为 ping_exporter 创建配置文件, 我给你留下这个例子:
目标: - 8.8.8.8 - 1.1.1.1 - 192.168.0.1 - 192.168.1.1 乒: 间隔: 5s 超时: 5s 历史记录大小: 42 有效载荷大小: 120 选项: 禁用 IPv6: 真
如您所见, 在 'Targets' 部分’ 我们可以添加我们想要 ping 的 IP 地址,. 以及默认参数, 但是,要执行 ping 每个 5 秒, 定义超时, 大小… 首先, 我忘了, 我把 官方链接 如果您想了解更多信息.
有了这个,我们就有了, 剩下的就是展开容器并启动并运行, 为此:
sudo docker compose up -d
部署容器后, 我们将能够验证它是否已经公开了 PIN 的指标, 为此, 如果我们使用 http 从浏览器连接到 Docker IP 地址, 前往 ping_exporter 港口 (9427默认为 TCP) 并将 URL 的末尾 '/metrics'.
现在我们剩下什么, 将指示 Prometheus 提取这些指标, 为此, 它将像编辑 Prometheus 配置文件一样简单 (例如: 'nano~/prometheus/prometheus/prometheus.yml’ ,然后我们添加一个作业来连接到ping_exporter的 IP 和端口:
... - job_name: ping-prometheus scrape_interval: 5scrape_timeout: 5static_configs: - 目标: - DIRECCION_IP_DOCKER:PUERTO_PING_EXPORTER ...
默认情况下,它将连接每个 5 秒.
并且不要忘记重新启动 Prometheus 容器以重新加载设置:
sudo Docker 重启 Prometheus
就是这样, 我们已经有了!! 我们剩下什么? 好吧,在 Grafana 😊 看到它. 为此,, 假设我们遵循上一个文档的步骤, 我们已经部署了 Grafana 并针对 Prometheus 创建了数据源, 嗯,只是我们必须导入一个我们喜欢的、社区制作的仪表板, 例如,我推荐此 ID: 19761. 所以在 Grafana, 它只不过是在 Dashboards 中点击 > 新增功能 > 进口 > 粘贴 ID,将导入仪表板, 它将要求您命名 Dashboard 并选择 Prometheus 连接器. 从那里你准备好了!
如果您考虑的话,您可以从那里根据自己的喜好自定义仪表板, 或任何你需要的东西. 但是哇, 您很快就会看到您有一个仪表板,可以很容易地解释 IP 地址是否在特定时间段内出现问题, 以及数据包是否被丢弃或我们想查看延迟时间, 更好的时代, 平均或更差的结果. 品尝那些简单的 ping 的颜色.
在某些情况下, 感谢此类信息, 我们已经能够确定 WAN 何时出错, 或者当存在网络电子设备问题时, 和从交换机丢弃的数据包, 因为它可能有一些问题/负担…
正如克里斯蒂安·皮尔霍尔夫 (Kristian Pielholf) 在 Bricomanía 中所说的那样… 容易, 简单且适合🤣家庭, 我一如既往地希望您觉得它很有趣,并且通过这些和其他人的提示,我们可以了解和掌握我们的基础设施.
我给你一个拥抱, 让自己得体 😉