2017年9月18日月曜日

Hyperledger Fabric v1.0.0 monitoring blockchainを使ってみる

EPCPノードの監視ツールであるmonitoring blockchainを使ってみる。
ざっとソースを眺めると以下のことが分かった。

・ダッシュボードはOSS Grafanaを利用している模様。
・WebサーバはOSS Spring Bootを利用している模様。
・Grafanaが利用するDBはOSS InfuxDBを利用している模様。
・EPCPノードやCAへの接続処理は、Fabric SDK for Javaは利用している模様。

以下の手順では、EPCPノード、OS、CAは構築済みの 前提。
  1. monitoring blockchainのDockerコンテナをPULLする。

    # docker pull blockchainmonitoring/blockchain-monitoring:latest
  2. Dockerコンテナがダウンロードされたことを確認する。

    # docker images | grep monitoring
    blockchainmonitoring/blockchain-monitoring   latest                          f44f980e709e        35 hours ago        1.1GB
  3. docker-compose.yamlを準備する。
  4. Fabric向けのネットワーク設定ファイル(net-config.yaml)を準備する。
    MSPの設定やCAやEPCPノードのURLを設定する。また、管理ユーザであるadminのprivkeyには秘密鍵、certには公開鍵証明書を指定する。
  5. FABRIC_NET_CONFIGとCERTS_ADMIN環境変数のパスを設定する。
    # export FABRIC_NET_CONFIG=/root/monitoring/net-config.yaml
    # export CERTS_ADMIN=/root/monitoring/certs
  6. docker-composeコマンドでコンテナを作成する。
    # docker-compose up
  7. 以下のURLにアクセスする(XXXは環境に合わせて指定する)。
    http://XXX.XXX.XXX.XXX:3000
  8. ダッシュボード画面が表示されることを確認する。
    EPCPのステータス(UP/DOWN)、チャネル情報、配備されたチェーンコードを確認することができる。INVOKE/QUERYの実行履歴等も表示されるはずだがされていない。。。時間があったらしらべてみよう。