node-exporter 本地与容器安装部署

网友投稿 370 2022-10-19

node-exporter 本地与容器安装部署

文章目录

​​1. 简介​​​​2. 容器部署​​​​3. 本地部署​​​​4. prometheus配置node-exporter的metric​​

1. 简介

在Prometheus的架构设计中,Prometheus Server并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。

从上面的描述中可以看出Exporter可以是一个相对开放的概念,其可以是一个独立运行的程序独立于监控目标以外,也可以是直接内置在监控目标中。只要能够向Prometheus提供标准格式的监控样本数据即可。

这里为了能够采集到主机的运行指标如CPU, 内存,磁盘等信息。我们可以使用Node Exporter。

2. 容器部署

第一种:监控系统资源为主,例如:cpu、mem、disk、proc

docker run -d -p 9100:9100 --restart=always -m 5G --memory-swap=5G -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" --name node_exporter quay.io/prometheus/node-exporter --path.procfs /host/proc --path.sysfs /host/sys --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"

node-exporter版本不同执行参数不同,还有一下情况:

docker run -d -p 9110:9100 \ -v "/proc:/host/proc:ro" \ -v "/sys:/host/sys:ro" \ -v "/:/rootfs:ro" \ --net="host" \--name node-exporter-test \ quay.io/prometheus/node-exporter \ --collector.procfs /host/proc \ --collector.sysfs /host/sys \ --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"

第二种::监控systemd服务

docker run --name=node-exporter -d --restart=always \ --net="host" \ --pid="host" \ -v "/:/host:ro,rslave" \ -v "/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket:ro" \ --restart=always \ local.harbor.io/prometheus/node-exporter:v0.18.1.1 \ --path.rootfs=/host \ --collector.systemd --collector.systemd.unit-whitelist="(docker|keepalived|haproxy-alcordata|haproxy-mgcluster).service"

3. 本地部署

下载:​​​-xvf node_exporter-1.0.1.linux-amd64.tar.gzmkdir /home/node_exportermv node_exporter /home/node_exporterchmod +x /home/node_exporter/node_exporter

配置文件

cat < /usr/lib/systemd/system/node_exporter.service[Unit]Description=Node Exporter[Service]User=node_exporterEnvironmentFile=/etc/sysconfig/node_exporterExecStart=/home/node_exporter/node_exporter[Install]WantedBy=multi-user.targetEOF

环境变量文件

cat < /etc/sysconfig/node_exporterOPTIONS="--collector.textfile.directory /var/lib/node_exporter/textfile_collector"EOF

启动服务

chown node_exporter:node_exporter /usr/lib/systemd/system/node_exporter.servicesystemctl daemon-reloadsystemctl start node_exporter.service && systemctl enable node_exporter.servicenetstat -naulp | grep 9100

4. prometheus配置node-exporter的metric

- job_name: 'node-exporter' static_configs: - targets: - '192.168.1.193:9100' - '192.168.1.194:9110' - '192.168.1.104:9100'

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Springboot @Value注入boolean设置默认值方式
下一篇:prometheus 容器安装部署
相关文章

 发表评论

暂时没有评论,来抢沙发吧~