节点导出器应该从主机还是容器运行?

Eli*_*lia 8 docker prometheus prometheus-node-exporter

有一个非常简单的问题:从哪里跑步最好node-exporter?直接在主机内部还是来自容器?

两种解决方案的优缺点是什么?开发人员的最佳实践是什么?从使用指南来看我不清楚!

Let*_*gos 4

我肯定会说在主机上。这是推荐的方式,因为节点导出器需要访问容器内不可用的某些指标。确实,即使在容器中运行时,如果公开 /proc 和 /sys,您仍然可以访问各种主机指标,但您仍然面临着抓取容器相关指标而不是主机相关指标的风险。

一个例子是与网​​络相关的指标。默认情况下,容器在它们自己的网络命名空间中运行(这就是您希望它们在正常情况下运行的方式),因此考虑到此默认值,您将仅抓取与该容器而不是主机相关的信息,尽管事实上,您正在暴露上述伪文件系统。