前言

本节介绍如何在测试网络中使用Fabric官方提供的区块链浏览器、网络监控系统以及使用Portainer来管理容器。


一、区块链浏览器

1.1. 启动方法

Hyperledger官方提供了一个开源程序Explorer,用于浏览底层区块链网络上的活动。源代码详见该项目的GitHub项目仓库

后续使用Docker启动Explorer,需要预先安装好Docker和Docker-Compose。

(1)准备材料

在fabric-samples文件夹的同级目录下新建一个文件夹:

cd hyfa && mkdir explorer && cd explorer && mkdir connection-profile

复制项目仓库中的文件docker-compose.yaml,examples/net1/config.json以及examples/net1/connection-profile/test-network.json到文件夹中,目录结构如下所示:

在这里插入图片描述

(2)改写配置文件

改写配置文件docker-compose.yaml,修改服务中挂载的数据卷,与当前环境保持一致:

在这里插入图片描述

改写配置文件connection-profile/test-network.json,替换加密材料的路径,指向管理员用户:

在这里插入图片描述

(3)启动服务

启动测试网络,复制测试网络的整个MSP文件目录到文件夹中:

sudo cp -r ../fabric-samples/test-network/organizations/ .

启动explorer和explorer-db:

docker-compose up -d

打开浏览器,导航到:

http://localhost:8080/

账号和密码在test-network.json中,默认为:

exploreradmin
exploreradminpw

(4)停止服务

docker-compose down -v

1.2. 浏览器的使用

在测试网络中调用InitLedger()函数,该函数将在一次交易中新建6个资产以初始化账本。在浏览器中查看该次交易的读写集:

在这里插入图片描述

可以看到,读集Reads:root:1:set下是空的,而写集Writes:root:1:set下有6条数据。

在测试网络中调用TransferAsset()函数转移asset6。在浏览器中查看该次交易的读写集:

在这里插入图片描述

可以看到读集Reads:root:1:set和写集Writes:root:1:set内包含的内容。


二、Prometheus

2.1. 启动方法

test-network/prometheus-grafana文件夹提供了一个环境用于实时显示和捕获测试网络中的指标。该环境采用 Prometheus、NodeExporter、CAdvisor、Grafana 四个软件,Prometheus负责获取Orderer 节点和 Peer节点的运维数据,NodeExporter 负责获取宿主机运维数据,CAdvisor负责获取容器运维数据,Grafana负责展示数据。它包含的用于docker-compose的YML文件的“version”为3.0,因此它对docker和docker-compose的版本没有更高的要求。

该环境的启动方法如下:

  • 启动测试网络
  • 进入test-network/prometheus-grafana文件夹启动环境:
docker-compose up -d
  • 打开浏览器,导航到:http://localhost:8080/

账号和密码都是admin,第一次登录后需要设置新密码。

  • 浏览仪表板

通过将鼠标悬停在仪表板菜单上并单击浏览按钮,可以找到并显示默认的仪表板“HLF Performance Review”。打开仪表板后,要显示收集的指标和数据,调整右上角的时间框架,以关注网络启动时的最新时间跨度。

  • 部署链码并使用Grafana仪表板分析和评估网络性能

三、Portainer

Portainer是一个可视化的容器管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。版本上,Portainer从2.0.0版本镜像名字改为portainer/portainer-ce,建议安装最新版本镜像。

docker pull portainer/portainer-ce:latest
docker run -d --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /app/portainer_data:/data --restart always --privileged=true portainer/portainer-ce:latest

启动后在浏览器 localhost:9000 进入界面,第一次打开需要创建账号。


Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐