本例中使用的 fabric 版本为 2.4.1
修改 orderer , peer 节点 docker-compose 文件
orderer 节点:
environment:
- ORDERER_METRICS_PROVIDER=prometheus
- ORDERER_OPERATIONS_LISTENADDRESS=0.0.0.0:8443
ports:
- 8443:8443
peer 节点:
environment:
- CORE_METRICS_PROVIDER=prometheus
- CORE_OPERATIONS_LISTENADDRESS=0.0.0.0:8443
ports:
- 8443:8443
编写 prometheus.yml
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: ['10.10.170.161:9093']
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
#rule_files:
# - "node_down.yml"
# - "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: 'hyperledger-fabric'
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ['orderer0.example.com:8443' , 'orderer1.example.com:8444' , 'orderer2.example.com:8445' , 'peer0.org1.example.com:9443' , 'peer1.org1.example.com:9444' , 'peer0.org2.example.com:9443' , 'peer1.org2.example.com:9444']
编写 docker-compose-prometheus.yaml
version: '2.0'
services:
prometheus:
image: prom/prometheus:latest
restart: always
container_name: prometheus
ports:
- 9999:9090
extra_hosts:
- "orderer0.example.com:192.168.0.105"
- "orderer1.example.com:192.168.0.105"
- "orderer2.example.com:192.168.0.105"
- "peer0.org1.example.com:192.168.0.109"
- "peer1.org1.example.com:192.168.0.109"
- "peer0.org2.example.com:192.168.0.110"
- "peer1.org2.example.com:192.168.0.110"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
grafana:
image: grafana/grafana
restart: always
container_name: grafana
ports:
- 3000:3000
depends_on:
- prometheus
启动 prometheus :
docker-compose -f docker-compose-prometheus.yaml up -d
浏览器中访问:
http://192.168.0.105:9999/targets

浏览器中访问: http://192.168.0.105:3000/ 打开 Grafana 界面

添加 prometheus 数据源:

配置 prometheus URL:

访问 https://grafana.com/grafana/dashboards/ 搜索需要监控组件的 dashboards 文件

Hyperledger Fabric 监控目前只支持 1.4 版本。2.x 版本的应该之后会出。

复制这个 dashboard id 添加 fabric dashboard:

效果如下:

grafanaymldocker composehyperledger fabricfabricprometheusdashboardsyaml
© 著作权归作者所有
举报
