Ubuntu部署Ledgerdata Refiner

说明

最近看了一篇论文Ledgerdata Refiner: A Powerful Ledger Data Query Platform for Hyperledger Fabric,文章中针对Fabric设计了一款可视化数据分析工具(类似Hyperledger Exploer,但拥有更多功能),鉴于网上目前还没有什么部署教程,故写下本文以做记录。官方github中提供了codebase和docker两种部署方式,因为我们使用的是2.3版本的Fabric,故这里使用codebase,若大家在部署中遇到什么问题,也可以去看看官方的部署指南。

环境

softwareversion
ubuntu18.04
fabric2.3
go1.15.7
PostgreSQL10

部署

Fabric的安装

这里假设大家事先已经安装好了fabric,具体的安装教程网上也有很多,这里不再做赘述。

PostgreSQL的安装

通过论文我们可以了解到,Refiner通过将数据存储在第三方数据库中以实现富查询。Refiner要求postgresql版本至少为9.5,现在ubuntu仓库中的版本已经更新到10,故直接安装即可。
在终端中,使用以下命令安装 PostgreSQL:

sudo apt update
sudo apt install postgresql postgresql-contrib

安装完成后,可以通过执行以下命令来检查 PostgreSQL 是否正在运行:

service postgresql status

默认情况下,PostgreSQL 会创建一个拥有所权限的特殊用户 postgres。要实际使用 PostgreSQL,你必须先登录该账户:

sudo su postgres

现在,使用 psql 来启动 PostgreSQL Shell

psql

你可以输入 \q 以退出,输入 ? 获取帮助

根据官方文档,我们需要为Refiner创建单独的用户和数据库以正常使用(复制时注意分号)

CREATE USER refiner WITH PASSWORD '123456';//创建用户refiner
ALTER USER refiner WITH SUPERUSER;//授予refiner管理员权限
ALTER USER refiner WITH CREATEDB;//允许refiner创建数据库
CREATE DATABASE ledgerdata_refiner OWNER refiner;//创建数据库与用户关联
grant all on database ledgerdata_refiner to refiner;//把数据库的所有权限赋给用户

使用 \du 命令,你可以查看 PostgreSQL 用户:

\du

在这里插入图片描述

使用\l命令查看现有的所有表

\l

在这里插入图片描述

Refiner的安装

首先,将文件git到本地

go get github.com/FujitsuLaboratories/Ledger-Data-Refiner

考虑到有时候网速实在是太慢了,这里给出gitee的地址

git clone https://gitee.com/hello_world_2233/Ledger-Data-Refiner.git

找到git到本地的文件,首先修改config/config.ini

[database]
db_host = 127.0.0.1
db_port = 5432
db_user = refiner
db_password = 123456
db_name = ledgerdata_refiner

在这里插入图片描述
接着修改 config/connection-config.yaml,将${FABRIC_PROJECT_PATH}/ ${CRYPTOCONFIG_PATH}修改为本地的路径。我这里的路径如下:

/home/yuan/go/src/github.com/hyperledger/fabric-samples/test-network/organizations/

大家如果搞不清楚的自己的地址是什么的话,可以先跑下fabric-samples中的test-network,这个路径其实就是orderorganziations和peerorganziations的父目录。
note:
因为我们使用的是2.3版本的fabric,一些文件的名称发生了变化,故这里在修改时需要格外改一下文件名,具体位置如下所示:
在这里插入图片描述

返回主目录下,编译文件

make build

运行Ledgerdata Refiner

./ledgerdata-refiner

至此,Ledgerdata Refiner部署完成。大家可以通过访问http://localhost:30052查看。ledgerdata refiner使用swagger提供API文档,可以访问 http://localhost:30052/swagger/index.html 查看

结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考文献

[1] Ledgerdata Refiner: A Powerful Ledger Data Query Platform for Hyperledger Fabric
[2] 官方github地址
[3] 如何在 Ubuntu 上安装和配置 PostgreSQL

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值