Substrate 基础教程(Tutorials) -- 监控节点指标

Substrate 公开有关网络操作的度量。例如,您可以收集有关您的节点连接了多少个对等节点、您的节点使用了多少内存以及正在生成的块数量的信息。为了捕获和可视化Substrate节点公开的度量,您可以配置和使用PrometheusGrafana等工具。本教程演示如何使用Prometheus获取数据样本,如何使用Grafana创建图形和仪表板,以使用数据样本可视化节点指标。

在较高的级别上,Substrate公开了可以被Prometheus端点使用的遥测数据,并在Grafana仪表板或图形中作为可视信息显示。

下图提供了如何配置SubstratePrometheusGrafana之间的交互以显示关于节点操作的信息的简化概述。
在这里插入图片描述

1、教程的目标

通过完成本教程,您将实现以下目标:

  • 安装PrometheusGrafana.
  • 配置Prometheus以捕获Substrate节点的时间序列。
  • 配置Grafana以可视化使用Prometheus端点收集的节点度量。

2、安装 Prometheus 和 Grafana

出于测试和演示的目的,您应该下载PrometheusGrafana的已编译bin程序,而不是自己构建工具或使用Docker映像。使用下面的链接下载适合您的体系结构的二进制文件。本教程假设您在工作目录中使用已编译的二进制文件。

要安装本教程的工具:

2.1 安装 Prometheus

  1. 在计算机上打开浏览器。
  2. Prometheus Download下载适当的预编译的Prometheus二进制文件。
wget https://github.com/prometheus/prometheus/releases/download/v2.37.6/prometheus-2.37.6.linux-amd64.tar.gz
  1. 在计算机上打开终端shell并导航到Downloads文件夹,然后运行适当的命令从下载的文件中提取内容。
  2. 以Ubuntu操作系统为例,可运行如下命令:
tar xvzf prometheus-2.37.6.linux-amd64.tar.gz

2.2 安装 Grafana OSS

Grafana Install

通过 APT repository

# Ubuntu and Debian
# 安装最新版本的OSS:
sudo apt-get install -y apt-transport-https adduser software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add

# 为稳定版本添加这个存储库
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

# 安装
sudo apt-get update
sudo apt-get install grafana

3、启动一个Substrate节点

Substrate公开了一个端点,该端点以端口9615上可用的Prometheus exposition format 提供度量。您可以使用--prometheus-port命令行选项更改端口,并使用--prometheus-external命令行选项使其可以通过本地主机以外的接口访问。为简单起见,本教程假设Substrate节点、Prometheus实例和Grafana服务都使用默认端口在本地运行。

  1. 在计算机上打开一个终端
  2. 切换到节点模板目录的根目录。
  3. 以开发模式启动节点模板。
./target/release/node-template --dev

4、配置 Prometheus 端点

解压Prometheus下载时创建的目录中包含一个prometheus.yml配置文件。您可以修改这个文件或创建一个自定义配置文件,将Prometheus配置为从默认的Prometheus端口端点9615或使用--prometheus-port <port-number>命令行选项指定的端口提取数据。

Substrate暴露端点添加到Prometheus目标列表:

  1. 在终端定位到Prometheus工作目录的根目录。
  2. 打开prometheus.yml配置文件
  3. 添加substrate_node作为scrape_config端点。
    例如,添加如下所示的section:
...
# A scrape configuration containing exactly one endpoint to scrape:
scrape_configs:
 - job_name: "substrate_node"

   scrape_interval: 5s

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

这些设置将覆盖substrate_node作业的抓取目标的全局默认值。将scrape_interval设置为一个小于块时间的值,以确保每个块都有一个数据点,这很重要。例如,Polkadot块时间为6秒,因此scrape_interval设置为5秒。

  1. 使用修改后的Prometheus启动一个prometheus.yml配置文件实例。
    例如,当前在Prometheus工作目录,使用默认配置文件,则启动Prometheus。
./prometheus --config.file prometheus.yml

不要关闭,继续运行。

  1. 打开一个新的终端shell,运行以下命令检查为Substrate节点检索到的指标:
curl localhost:9615/metrics

该命令返回类似以下截断示例的输出:
在这里插入图片描述
或者,您可以在浏览器中打开相同的端点以查看所有可用的度量数据。例如,如果您正在使用默认的Prometheus端口,请在浏览器中打开http://localhost:9615/metrics

5、配置 Grafana 数据源

运行适当的命令在体系结构上安装Grafana之后,可以在本地计算机上启动该服务并开始使用它。用于启动服务的命令取决于您的本地系统体系结构和包管理器。
有关在不同操作系统上启动Grafana的信息,请参阅相应的Grafana文档

Ubuntu 可以通过运行以下命令启动Grafana:

# 启动方法取决于您的Linux系统使用的是 systemd 还是 init.d。
# Ubuntu
# 以 grafana 用户启动 grafana-server 进程,该用户是在包安装期间创建的
sudo service grafana-server start
# 或
sudo /etc/init.d/grafana-server start

# Verify the status:
sudo service grafana-server status
# 或
sudo /etc/init.d/grafana-server status	
# 或者,你可以配置Grafana服务器在引导时启动:
sudo update-rc.d grafana-server defaults

## Ubuntu 方法二
# 开机启动
 sudo /bin/systemctl daemon-reload
 sudo /bin/systemctl enable grafana-server
# You can start grafana-server by executing
 sudo /bin/systemctl start grafana-server

启动Grafana后,可以在浏览器中导航到它。

  1. 打开浏览器并导航到Grafana使用的端口。
    默认情况下,Grafana使用http://localhost:3000,除非您配置了不同的主机或端口。

  2. 使用默认用户名admin和密码admin登录,然后单击“登录”。
    在这里插入图片描述

  3. 在欢迎页面上,单击数据源(Data Sources)。

  4. 单击Prometheus, 为 Substrate节点度量,将Prometheus端点配置的数据源。
    在同时运行Substrate节点和Prometheus实例的情况下,配置Grafana在其默认端口http://localhost:9090上查找Prometheus,或者在自定义端口信息时配置Grafana使用的端口。
    您不应该在prometheus.yml文件中指定您设置的Prometheus端口。该端口是用来节点发布数据。

  5. 单击Save & Test以确保正确地设置了数据源。
    如果数据源正在工作,就可以配置仪表板来显示节点指标。

6、导入模板仪表板

如果希望启动一个基本的仪表板,可以导入一个Substrate仪表板模板来获取关于节点的基本信息。

导入dashboard模板

  1. Grafana Welcome页面上,单击Dashboards
  2. 在左侧导航中,单击“Dashboards”并选择“Browse”。
  3. 对于“搜索”选项,单击“新建(New)”并选择“导入(Import)”。
    在这里插入图片描述
  4. 复制Substrate仪表板模板并将其粘贴到Import via panel json文本框中。
  5. 单击Load
  6. 必要时,检查并修改仪表板的名称、文件夹和唯一标识符。
  7. 选择Prometheus (default),然后单击Import

在这里插入图片描述
Substrate仪表板模板可以与任何基于Substrate的链一起使用,也可以从Grafana Labs仪表板库中下载。

如果您想创建自己的仪表板,请参阅Grafana的Prometheus文档

如果您创建了自定义仪表板,请考虑将其上传到Grafana仪表板。通过在Awesome Substrate存储库中列出仪表板,可以让Substrate构建器社区知道仪表板的存在。

猜你喜欢

转载自blog.csdn.net/chinusyan/article/details/129355328