node_exporter 系统监控
node_exporter 用于收集并导出主机的硬件和操作系统的指标给 Prometheus 使用
docker run -d \
--net="host" \
--pid="host" \
-v "/:/host:ro,rslave" \
--name node_exporter \
prom/node-exporter \
--path.rootfs=/host
docker run -d
:这部分表示以分离模式运行一个 Docker 容器。--net="host"
:这个参数设置容器的网络模式为 host,意味着容器将直接使用宿主机的网络,而不是使用 Docker 的网络隔离。--pid="host"
:设置 PID(进程ID)模式为 host,这允许容器进程看到宿主机的所有进程。-v "/:/host:ro,rslave"
:这部分是一个卷挂载参数,它将宿主机的根目录(/
)挂载到容器的/host
目录下,且为只读(ro
)。rslave
标记意味着挂载点的任何挂载和卸载事件都会传播到容器内部,但是容器内部的挂载事件不会传播到外部。--name node_exporter
:设置容器的名称为node_exporter
。prom/node-exporter
:指定要运行的镜像,这里是 Prometheus 的官方node-exporter
镜像。--path.rootfs=/host
:这是传递给node_exporter
的参数,指定根文件系统的路径。因为我们通过挂载将宿主机的根(/
)挂载到了容器的/host
,所以我们需要告诉node_exporter
正确的根文件系统路径,以便它能够正确收集宿主机的指标。