10B 폴카도트 기판: 노드 메트릭

introduce
Learning outcomes
Start a Substrate Template Node
Configure Prometheus to scrape your Substrate node
Visualizing Prometheus Metrics with Grafana
Substrate Tutorials , Substrate 教程
Contact 联系方式

• 소개하다



최신 버전의 Substrate는 노드가 연결된 피어 수, 노드가 사용하는 메모리 양 등과 같은 메트릭을 노출합니다. 이러한 메트릭을 시각화하기 위해 Prometheus 및 Grafana와 같은 도구를 사용할 수 있습니다. 이 자습서에서는 Grafana 및 Prometheus를 사용하여 노드 메트릭을 긁어내고 시각화하는 방법을 배웁니다.

가능한 아키텍처는 다음과 같습니다.

+-----------+                     +-------------+                                                              +---------+
| Substrate |                     | Prometheus  |                                                              | Grafana |
+-----------+                     +-------------+                                                              +---------+
      |               -----------------\ |                                                                          |
      |               | Every 1 minute |-|                                                                          |
      |               |----------------| |                                                                          |
      |                                  |                                                                          |
      |        GET current metric values |                                                                          |
      |<---------------------------------|                                                                          |
      |                                  |                                                                          |
      | `substrate_peers_count 5`        |                                                                          |
      |--------------------------------->|                                                                          |
      |                                  | --------------------------------------------------------------------\    |
      |                                  |-| Save metric value with corresponding time stamp in local database |    |
      |                                  | |-------------------------------------------------------------------|    |
      |                                  |                                         -------------------------------\ |
      |                                  |                                         | Every time user opens graphs |-|
      |                                  |                                         |------------------------------| |
      |                                  |                                                                          |
      |                                  |       GET values of metric `substrate_peers_count` from time-X to time-Y |
      |                                  |<-------------------------------------------------------------------------|
      |                                  |                                                                          |
      |                                  | `substrate_peers_count (1582023828, 5), (1582023847, 4) [...]`           |
      |                                  |------------------------------------------------------------------------->|
      |                                  |                                                                          |



• 학습 결과



Prometheus를 사용하여 Substrate 노드에 대한 시계열 스크레이핑을 수행하는 방법 알아보기
Grafana 및 Prometheus를 사용하여 노드 메트릭을 시각화하는 방법 알아보기

• 기판 템플릿 노드 시작



여기서 계속하기 전에 첫 번째 기판 체인 만들기 자습서를 완료해야 합니다. 동일한 기판 버전, 디렉터리 구조에 대한 규칙 및 빈 이름이 여기에 사용됩니다. 물론 템플릿 대신 사용자 정의 Substrate 노드를 사용할 수 있습니다. 필요에 따라 표시된 명령을 편집하기만 하면 됩니다.

Substrate는 포트 9615에서 사용할 수 있는 Prometheus 설명 형식으로 메트릭을 제공하는 엔드포인트를 노출합니다. --prometheus-port를 사용하여 포트를 변경하고 --prometheus-external을 사용하여 로컬 호스트 이외의 인터페이스를 통해 액세스할 수 있도록 할 수 있습니다.

# Optionally add the `--prometheus-port <PORT>`
# or `--prometheus-external` flags
./target/release/node-template --dev


• Substrate 노드를 스크랩하도록 Prometheus 구성



Prometheus를 설치한 작업 디렉토리에서 prometheus.yml 구성 파일을 찾을 수 있습니다. Prometheus가 노출된 끝점을 대상 배열에 추가하여 긁어내도록 구성하도록 이것을 수정(또는 사용자 정의 새 켜기를 생성)해 보겠습니다. 기본값을 수정하면 다음과 같이 달라집니다.

# --snip--

# 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: 'substrate_node'

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

    # Override the global default and scrape targets from this job every 5 seconds.
    # ** NOTE: you want to have this *LESS THAN* the block time in order to ensure
    # ** that you have a data point for every block!
    scrape_interval: 5s

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


이제 prometheus.yml 구성 파일로 Prometheus 인스턴스를 시작할 수 있습니다. 바이너리를 다운로드했다고 가정하고 설치 디렉토리로 cd하고 다음을 실행합니다.

# specify a custom config file instead if you made one here:
./prometheus --config.file prometheus.yml  


• Grafana로 Prometheus 지표 시각화



이제 Grafana를 시작하면 로그인하고 브라우저에서 탐색합니다(기본값은 http://localhost:3000/ ). 로그인(기본 사용자 admin 및 암호 admin 사용)하고 http://localhost:3000/datasources의 데이터 원본 페이지로 이동합니다.

그런 다음 Prometheus 데이터 소스 유형을 선택하고 Grafana가 이를 찾아야 하는 위치를 지정해야 합니다.

기판 노드와 Prometheus가 실행 중인 상태에서 기본 포트http://localhost:9090에서 Prometheus를 찾도록 Grafana를 구성합니다(사용자 정의하지 않은 경우).

저장 및 테스트를 눌러 데이터 소스가 올바르게 설정되었는지 확인하십시오. 이제 새 대시보드를 구성할 수 있습니다!

템플릿 Grafana 대시보드
여기에서 기본 대시보드를 시작하려는 경우 Grafana에서 가져올 수 있는 템플릿 예제를 통해 노드에 대한 기본 정보를 얻을 수 있습니다.
https://grafana.com/grafana/dashboards/13759/


• 기판 자습서 , 기판 教程



CN 중국어 Github Substrate 教程 : github.com/565ee/Substrate_CN
CN 중국어 CSDNSubstrate 教程 : blog.csdn.net/wx468116118
EN 英文 Github Substrate Tutorials : github.com/565ee/Substrate_EN
EN 英文 dev.to

• 연락처 联系方式



홈페이지 : 565.ee
GitHub : github.com/565ee
이메일 : [email protected]
페이스북 : facebook.com/565.ee
트위터 :
텔레그램 : t.me/ee_565

좋은 웹페이지 즐겨찾기