1.node_exporter简介
node-exporter用于采集服务器层面的运行指标,包括机器的loadavg、filesystem、meminfo等基础监控
2.Grafana简介
Grafana是一款开源的数据可视化和分析工具,不管你的指标信息存储在哪里,你都可以用它来可视化这些数据。同时它还具有告警功能,当指标超出指定范围时会提醒你。
3.Prometheus简介
Prometheus是一款时序数据库,可以简单理解为带时间的MySQL数据库。由于Grafana只能将数据转换成可视化图表,并没有存储功能,所以我们需要结合Prometheus这类时序数据库一起使用。
4.安装
- 下载
node_explorer
的安装包,下载地址:prometheus.io/download/#n…
- 这次我们直接把
node_explorer
安装到Linux服务器上(如果使用Docker容器安装,监控的会是Docker容器的指标信息),将下载的安装包解压到指定目录,并修改文件夹名称
cd /mydata
tar -zxvf node_exporter-1.1.2.linux-amd64.tar.gz
mv node_exporter-1.1.2.linux-amd64 node_exporter
- 进入解压目录,使用如下命令运行
node_explorer
,服务将运行在9100
端口上
cd node_exporter
nohup ./node_exporter >log.file 2>&1 &
- 使用
curl
命令访问获取指标信息接口,获取到信息表示运行成功
curl http://localhost:9100/metrics
- 使用官方安装脚本自动安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
- 下载Grafana的Docker镜像
docker pull grafana/grafana
- 运行Grafana
docker run -p 3000:3000 --name grafana -d grafana/grafana
- 下载Prometheus的Docker镜像
docker pull prom/prometheus
- 创建Prometheus的配置文件
prometheus.yml
(文件夹自行创建)
vi /mydata/prometheus/prometheus.yml
global:
scrape_interval: 30s
scrape_timeout: 30s
scrape_configs:
- job_name: node
static_configs:
- targets: ['127.0.0.1:9100']
- 运行Prometheus,把宿主机中的配置文件
prometheus.yml
挂载到容器中去
docker run -p 9090:9090 --name prometheus -v /mydata/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml -d prom/prometheus
5.图形化显示
Grafana访问地址:http://192.168.120.51:3000 用户名 admin
密码 admin
(登录后可修改密码)
配置数据源(只需要输入内网IP)
导入模板(模板id输入1860)
更多模板可以在这里查看grafana.com/grafana/das… 数据源选择刚才配置的
查看效果
6.参考资料
- Grafana官方文档:grafana.com/docs/grafan…
- node-exporter的使用:prometheus.io/docs/guides…
- prometheus-配置文件相关soulchild.cn/1965.html