Grafana完整教程

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 本文介绍了Grafana与Prometheus的安装与配置流程,涵盖源配置、端口设置、服务端与客户端安装、Node Exporter部署及自启动设置,同时提供多服务器监控方案与推荐Dashboard。

安装grafana前配置

  1. 调整源
  2. 默认端口为3000
  3. 服务端安装grafana (参考官网)

客户端

安装客户端
阿里云ARMS监控服务文档
设置Grafana Youtuber Blog - jhooq

安装prometheus:

wget https://github.com/prometheus/prometheus/releases/download/v2.47.0-rc.0/prometheus-2.47.0-rc.0.linux-amd64.tar.gz

安装node exporter

wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz

解压node exporter

tar xvfz node_exporter-*.tar.gz
cd node_exporter-*.tar.gz

我们一般将其移动或放置在/usr/local/bin下(或者为了方便,放到/usr/local 或者/opt也可以)。

运行并测试node exporter

./node_exporter
#最后一行输出
>ts=2023-09-03T08:27:20.532Z caller=tls_config.go:277 level=info msg="TLS is disabled." http2=false address=[::]:9100

查看localhost:9100/metrics 是否有如下显示 (也可以使用curl看)

# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.
# TYPE go_gc_duration_seconds summary
go_gc_duration_seconds{quantile="0"} 0
go_gc_duration_seconds{quantile="0.25"} 0
go_gc_duration_seconds{quantile="0.5"} 0
go_gc_duration_seconds{quantile="0.75"} 0
...

解压prometheus

tar xvfz prometheus-*.tar.gz
cd prometheus-*.tar.gz

我们一般将其移动或放置在/usr/local/bin下(或者为了方便,放到/usr/local 或者/opt也可以)。

运行并测试prometheus

# run  或者加./prometheus --config.file=xxx.yml 指定yml (一般放置/etc/prometheus下)
./prometheus


#最后一行输出不固定的,例如
>ts=2023-09-03T08:54:49.797Z caller=manager.go:1009 level=info component="rule manager" msg="Starting rule manager..."

默认端口9090,浏览器查看localhost:9090

添加prometheus设置 (node exporter)

现在prometheus已经可以正常使用,但是需要额外添加node exporter到yml配置文件中:

- job_name: 'node_exporter'
    scrape_interval: 5s
    static_configs:
        - targets: ['localhost:9100']

也就是

# my global config
global:
  scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]

  - job_name: "node_exporter"
    scrape_interval: 5s
    static_configs:
        - targets: ["localhost:9100"]

自启动

Prometheus:

创建systemd服务 /etc/systemd/system/prometheus.service

默认tsdb保存在文件夹下的data内,这里不做修改。
用户和用户组如果不存在需要先创建。(创建一个nologin的用户)

[Unit]
  Description=Prometheus Monitoring
  Documentation=https://prometheus.io/docs/introduction/overview/
  Wants=network-online.target
  After=network-online.target

[Service]
  User=prometheus
  Group=prometheus
  Type=simple
  ExecStart=/usr/local/bin/prometheus/prometheus \
  --config.file /usr/local/bin/prometheus/prometheus.yml \
  --storage.tsdb.path /usr/local/bin/prometheus/data/ \
  --web.console.templates=/etc/prometheus/consoles \
  --web.console.libraries=/etc/prometheus/console_libraries
  ExecReload=/bin/kill -HUP $MAINPID

[Install]
  WantedBy=multi-user.target

重启

sudo systemctl daemon-reload
sudo systemctl start prometheus.service
sudo systemctl enable prometheus.service
sudo systemctl status prometheus.service
# view log
sudo journalctl -u prometheus.service -f

Node Exporter:

[Unit]
  Description=Node Exporter
  Wants=network-online.target
  After=network-online.target

[Service]
  User=nodeexporter
  Type=simple
  ExecStart=/usr/local/bin/node_exporter/node_exporter 

[Install]
  WantedBy=multi-user.target

监控另一台服务器

只需在prometheus.yml中target加上逗号添加即可。

    static_configs:
      - targets: ["localhost:9090", "192.168.200.102:9090"]

  - job_name: "node_exporter"
    scrape_interval: 5s
    static_configs:
        - targets: ["localhost:9100","192.168.200.102:9100"]

效果图

因为第一个监控的服务器是localhost看不出ip, 建议专门拿一台出来做监控机器。

Grafana Dashboard

Grafana Dashboard地址:https://grafana.com/grafana/dashboards/

好用的Dashboard:
作者:StarsL.cn
https://grafana.com/grafana/dashboards/16098
https://grafana.com/grafana/dashboards/8919

外国人:
https://grafana.com/grafana/dashboards/1860

相关文章
|
9月前
|
Prometheus 监控 前端开发
Grafana 安装配置教程,让你的 Prometheus 监控数据变得更美观
《Grafana安装配置教程,让你的Prometheus监控数据变得更美观》简介: Grafana是一个开源的度量分析与可视化工具,支持多种数据源(如Prometheus),提供丰富的可视化功能和警报机制。本文详细介绍了Grafana的安装、汉化方法及模板使用,帮助用户轻松创建美观、灵活的数据面板,并实现数据的协作与共享。通过Docker镜像、配置文件修改或替换前端页面等方式实现汉化,让用户更便捷地使用中文界面。此外,还提供了导入JSON格式模板的具体步骤,方便快速搭建仪表盘。
770 2
|
9月前
|
Prometheus Cloud Native Linux
Prometheus+Grafana新手友好教程:从零开始搭建轻松掌握强大的警报系统
本文介绍了使用 Prometheus 和 Grafana 实现邮件报警的方案,包括三种主要方法:1) 使用 Prometheus 的 Alertmanager 组件;2) 使用 Grafana 的内置告警通知功能;3) 使用第三方告警组件如 OneAlert。同时,详细描述了环境准备、Grafana 安装配置及预警设置的步骤,确保用户能够成功搭建并测试邮件报警功能。通过这些配置,用户可以在系统或应用出现异常时及时收到邮件通知,保障系统的稳定运行。
746 1
|
存储 Prometheus 监控
服务搭建篇(一) 搭建基于prometheus + node_exporter + grafana + Alertmanager 的监控报警系统 , 保姆级教程
Alertmanager处理客户端应用程序(如Prometheus服务器)发送的警报。它负责重复数据删除、分组,并将它们路由到正确的接收器集成,如电子邮件、PagerDuty或OpsGenie。它还负责静音和抑制警报
550 0
|
SQL 数据可视化 数据库连接
Grafana图表工具Graph使用教程-通过Grafana绘制折线图
Grafana图表工具Graph使用教程-通过Grafana绘制折线图
|
Prometheus Cloud Native 网络安全
Prometheus+Grafana+Alertmanager部署教程(超详细)
Prometheus+Grafana+Alertmanager部署教程(超详细)
1332 1
|
SQL 监控 Kubernetes
软件测试|简单易学的性能监控体系prometheus+grafana搭建教程
软件测试|简单易学的性能监控体系prometheus+grafana搭建教程
软件测试|简单易学的性能监控体系prometheus+grafana搭建教程
|
Prometheus 监控 Cloud Native
Grafana安装教程
Grafana安装教程
3333 0
Grafana安装教程
|
5月前
|
Prometheus 监控 Cloud Native
Prometheus+Grafana(docker安装)
本文档详细介绍了如何使用Docker容器快速部署Prometheus监控系统和Grafana数据可视化平台。该方案适用于需要快速搭建监控环境的开发测试场景,具备部署简单、资源占用低、易于维护等特点。
|
10月前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
880 3
|
9月前
|
存储 数据采集 Prometheus
Grafana Prometheus Altermanager 监控系统
Grafana、Prometheus 和 Alertmanager 是一套强大的开源监控系统组合。Prometheus 负责数据采集与存储,Alertmanager 处理告警通知,Grafana 提供可视化界面。本文简要介绍了这套系统的安装配置流程,包括各组件的下载、安装、服务配置及开机自启设置,并提供了访问地址和重启命令。适用于希望快速搭建高效监控平台的用户。
433 20

推荐镜像

更多