内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

小編給大家分享一下如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都做網(wǎng)站、鄲城網(wǎng)絡(luò)推廣、成都小程序開發(fā)、鄲城網(wǎng)絡(luò)營銷、鄲城企業(yè)策劃、鄲城品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供鄲城建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.rwnh.cn

1、配置Hyperledger Fabric節(jié)點(diǎn)的運(yùn)維服務(wù)

Hyperledger Fabric 1.4提供了如下的特性用于peer和orderer節(jié)點(diǎn)的運(yùn)維服務(wù)API:

  • 日志等級(jí)管理:/logspec

  • 節(jié)點(diǎn)健康檢查:/healthz

  • 運(yùn)行監(jiān)控指標(biāo):/metrics

配置Fabric區(qū)塊鏈節(jié)點(diǎn)的運(yùn)維服務(wù)雖然不是尖端的火箭科技,但是如果你漏掉了某些細(xì)節(jié)也會(huì)覺得不那么容易。

首先修改core.yaml來配置peer節(jié)點(diǎn)的運(yùn)維服務(wù),主要包括監(jiān)聽地址的配置和TLS的配置(我們先暫時(shí)禁用這部分)。

用編輯器打開core.yaml:

$ vi ~/fabric-samples/config/core.yaml

下圖顯示了peer節(jié)點(diǎn)的運(yùn)維服務(wù)監(jiān)聽地址listenAddress的默認(rèn)值:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

現(xiàn)在讓我們啟動(dòng)BYFN網(wǎng)絡(luò),并試著訪問日志等級(jí)api。

$ cd ~/fabric-samples/first-network
$ ./byfn.sh -m up
$ docker exec -it cli bash

# curl peer0.org1.example.com:9443/logspec

不幸的是,curl命令返回如下錯(cuò)誤:

curl: (7) Failed to connect to peer0.org1.example.com port 9443: Connection refused

讓我們看看到底是什么原因。

首先檢查我們的運(yùn)維服務(wù)配置,打開core.yaml文件:

# vi /etc/hyperledger/fabric/core.yaml

可能你還記得,我們使用127.0.0.1作為listenAddress的值,這意味著 從外部無法訪問運(yùn)維api。

讓我們?cè)趐eer容器內(nèi)進(jìn)行必要的操作以再次檢查。這次我們將使用wget代替 curl,因?yàn)樵谌萜鲀?nèi)沒有安裝curl。

$ docker exec -it peer0.org1.example.com bash

# wget peer0.org1.example.com:9443/logspec

和預(yù)期的一樣,錯(cuò)誤信息再次出現(xiàn):

Connecting to peer0.org1.example.com (peer0.org1.example.com)… failed: Connection refused

但是如果用127.0.0.1來連接就會(huì)成功:

# wget 127.0.0.1:9443/logspec

結(jié)果如下:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

這標(biāo)明我們需要設(shè)置運(yùn)維的監(jiān)聽地址。

為此,修改docker-compose文件,為每個(gè)peer指定CORE_OPERATIONS_LISTENADDRESS環(huán)境變量。

$ vi ~/fabric-samples/first-network/base/docker-compose-base.yaml

參考下圖進(jìn)行修改:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

現(xiàn)在讓我們?cè)俅螄L試訪問/logspec這個(gè)API,別忘了重新啟動(dòng)BYFN網(wǎng)絡(luò)。

$ docker exec -it cli bash

# curl peer0.org1.example.com:9443/logspec

輸出結(jié)果如下:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

類似的,我們可以檢查節(jié)點(diǎn)健康狀況:

# curl peer1.org1.example.com:9443/healthz

輸出結(jié)果如下:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

最后,讓我們?cè)赿ocker-compose-base.yaml中為每個(gè)peer設(shè)置ORE_METRICS_PROVIDER=prometheus來啟用prometheus指標(biāo),并修改core.yaml來聲明指標(biāo)提供器為prometheus:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

如果配置正確,在cli容器內(nèi)執(zhí)行如下命令后將會(huì)輸出一組監(jiān)控指標(biāo)的當(dāng)前值:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

2、用Prometheus監(jiān)控Hyperledger Fabric網(wǎng)絡(luò)的運(yùn)行指標(biāo)

首先下載最新版本的Prometheus并解壓:

$ curl -LO https://github.com/prometheus/prometheus/releases/download/v2.7.1/prometheus-2.7.1.linux-amd64.tar.gz \
$ tar -xvzf prometheus-2.7.1.linux-amd64.tar.gz

在prometheus文件夾中可以找到prometheus.yml文件。我們需要修改這個(gè)文件以便抓取Hyperledger Fabric的運(yùn)行指標(biāo)數(shù)據(jù):在scrape_configs部分添加job_name和targets。

現(xiàn)在我們可以用docker來運(yùn)行prometheus:

$ sudo docker run -d --name prometheus-server -p 9090:9090 \
  --restart always \
  -v /home/mccdev/prometheus/prometheus/prometheus.yml:/prometheus.yml \
  prom/prometheus \
  --config.file=/prometheus.yml

注意由于docker總是在專用網(wǎng)絡(luò)啟動(dòng)容器,我們需要將prometheus容器加入fabric網(wǎng)絡(luò)。用如下命令查看fabric網(wǎng)絡(luò):

$ docker inspect peer1.org1.example.com

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

將prometheus容器接入fabric網(wǎng)絡(luò):

$ sudo docker network connect net_byfn 5b8cbf9d8fa6

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

可以在如下地址訪問統(tǒng)計(jì)信息:http://localhost:9090/

要檢查是否成功抓取了peer的運(yùn)行指標(biāo),輸入scrape_samples_scraped查看結(jié)果表,內(nèi)容應(yīng)該非空。

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

3、用StatsD/Graphite監(jiān)控Hyperledger Fabric網(wǎng)絡(luò)的運(yùn)行指標(biāo)

現(xiàn)在我們換StatsD來可視化監(jiān)控Fabric網(wǎng)絡(luò)的運(yùn)行指標(biāo),Prometheus是pull方式,而StatsD則采用push方式。

首先,我們需要先從這里獲取Graphite和StatsD的docker鏡像。

然后,啟動(dòng)graphite容器:

$ docker run -d\
 --name graphite\
 --restart=always\
 -p 80:80\
 -p 2003-2004:2003-2004\
 -p 2023-2024:2023-2024\
 -p 8125:8125/udp\
 -p 8126:8126\
 graphiteapp/graphite-statsd

現(xiàn)在該修改docker-copose-base.yaml了。每個(gè)peer都應(yīng)該設(shè)置如下的環(huán)境變量:

CORE_OPERATIONS_LISTENADDRESS
CORE_METRICS_PROVIDER
CORE_METRICS_STATSD_ADDRESS
CORE_METRICS_STATSD_NETWORK
CORE_METRICS_STATSD_PREFIX

我們也應(yīng)當(dāng)確保指定端口8125。peer的配置示例如下:

peer0.org1.example.com:
  container_name: peer0.org1.example.com
  extends:
   file: peer-base.yaml
   service: peer-base
  environment:
   - CORE_PEER_ID=peer0.org1.example.com
   - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
   - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org1.example.com:7051
   - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
   - CORE_PEER_LOCALMSPID=Org1MSP
   # metrics
   - CORE_OPERATIONS_LISTENADDRESS=peer0.org1.example.com:8125
   - CORE_METRICS_PROVIDER=statsd
   - CORE_METRICS_STATSD_ADDRESS=graphite:8125
   - CORE_METRICS_STATSD_NETWORK=udp
   - CORE_METRICS_STATSD_PREFIX=PEER_01
  volumes:
     - /var/run/:/host/var/run/
     - ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp
     - ../crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls
     - peer0.org1.example.com:/var/hyperledger/production
  ports:
   - 7051:7051
   - 7053:7053
   - 8125:8125

需要留意使用的端口:對(duì)于peer0,端口應(yīng)當(dāng)是8125:8125,peer1則應(yīng)當(dāng)使用9125:8125,依此類推。

Orderer應(yīng)當(dāng)按如下配置:

- ORDERER_OPERATIONS_LISTENADDRESS=orderer.example.com:8125
- ORDERER_METRICS_PROVIDER=statsd
- ORDERER_METRICS_STATSD_ADDRESS=graphite:8125
- ORDERER_METRICS_STATSD_NETWORK=udp
- ORDERER_METRICS_STATSD_PREFIX=ORDERER

ports:
   - 7125:8125

現(xiàn)在讓我們啟動(dòng)BYFN網(wǎng)絡(luò)。

記得將graphite容器接入BYFN網(wǎng)絡(luò),否則你會(huì)看到如下錯(cuò)誤:

Error: error getting endorser client for channel: endorser client failed to 
connect to peer0.org1.example.com:7051: failed to create new connection: 
context deadline exceeded

peer容器的日志將顯示在網(wǎng)絡(luò)中沒有找到graphite:

Error: failed to initialize operations subystems: dial udp: lookup graphite 
on 127.0.0.11:53: no such host

使用如下命令將graphite容器接入fabric網(wǎng)絡(luò):

$ sudo docker network connect net_byfn graphite

一切正常的話,你應(yīng)該可以在如下地址看到運(yùn)行指標(biāo):

http://localhost/metrics/index.json

結(jié)果如下:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

訪問如下地址來查看可視化的數(shù)據(jù):

http://localhost/

結(jié)果頁面如下:

如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控

以上是“如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁名稱:如何實(shí)現(xiàn)Fabric區(qū)塊鏈基于Prometheus和StatsD的運(yùn)維監(jiān)控
URL地址:http://www.rwnh.cn/article20/ipceco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、服務(wù)器托管、搜索引擎優(yōu)化、品牌網(wǎng)站制作定制網(wǎng)站、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
廉江市| 当阳市| 出国| 眉山市| 文安县| 获嘉县| 遂宁市| 大足县| 河东区| 泾源县| 永登县| 萨嘎县| 东丰县| 永和县| 雷山县| 吴堡县| 石棉县| 楚雄市| 唐山市| 古丈县| 肃北| 禄劝| 金寨县| 泸定县| 潼关县| 广州市| 邯郸县| 美姑县| 呼图壁县| 调兵山市| 布尔津县| 长海县| 湄潭县| 蒙城县| 德保县| 岳阳县| 府谷县| 宿松县| 淮滨县| 阿克陶县| 永修县|