Ebook123

导航

Prometheus 监控Linux服务器和系统服务

Prometheus 如何监控服务?

如果要想监控,前提是能获取被监控端指标数据,并且这个数据格式必须遵循Prometheus数据模型,这样才能识别和采集,一般使用exporter提供监控指标数据。

exporter列表:https://prometheus.io/docs/instrumenting/exporters

监控Linux服务器

客户端配置:

node_exporter:用于监控Linux系统的指标采集器。
常用指标:
•CPU
•内存
•硬盘
•网络流量
•文件描述符
•系统负载
•系统服务
数据接口:http://IP:9100

使用文档:https://prometheus.io/docs/guides/node-exporter/
GitHub:https://github.com/prometheus/node_exporter

cd /opt && wget http://github.com/prometheus/node_exporter/releases/download/v1.2.0/node_exporter-1.2.0.linux-amd64.tar.gz

mv node_exporter-1.2.0.linux-amd64 /usr/local/node_exporter

配置为系统服务管理:

# vi /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=node_exporter
[Service]
ExecStart=/usr/local/node_exporter/node_exporter --web.config=/usr/local/node_exporter/config.yml(有配置文件就指定配置文件位置,没有就不需要
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl start node_exporter
# systemctl enable node_exporter

启用HTTP认证:
# vi /usr/local/node_exporter/config.yml
basic_auth_users:
prometheus: $2y$12$RC4HOCkmmupzZfgdL56XUu0zZ1sdEVbe3J4NS17nybLFt54hzWO7G
# 用户名: 密码
上面密码用下面命令生成:
yum install httpd-tools –y
htpasswd -nBC 12 '' | tr -d ':\n'   --->123456

使用http认证访问node_exporter  metrics 接口

Prometheus 服务端配置:

 使用promtool check config 配置文件检查配置文件是否正确

 重启prometheus让配置生效,systemctl restart prometheus 不推荐使用,使用热加载

 查看web页面看配置是否生效:

使用Grafana展示node_exporter数据指标,仪表盘ID:9276

仪表盘也可以使用官网提供的ID 号:https://grafana.com/grafana/dashboards

 Manage --->Import --->9276(仪表盘ID) --->Name(定义名字)--->Prometheus(选择数据源)

 

监控系统服务运行状态

需要在node_exporter 启动的配置文件里面添加白名单:/usr/local/node_exporter/node_exporter --web.config=/usr/local/node_exporter/config.yml --collector.systemd --collector.systemd.unit-whitelist=(docker|sshd|nginx).service

重启node_exporter 查看进程可以启动,说明配置没问题,然后在prometheus 查询,也可以通过grafana 展示数据

以上监控也可以通过grafana 图形来展示,此次省略

posted on 2021-07-31 19:45  Ebook123  阅读(376)  评论(0编辑  收藏  举报