本文基于Hyperledger Fabric 1.4版本. 官方文档地址:传送门 动态添加一个组织到Fabric网络中也是一个比较重要的功能.官方文档写的已经很详细了,有能力的尽量还是看官方文档,本文只是根据官方文档进行整理同时兼翻译. 1.前提条件 这个不再解释了,前提条件自然是搭建Fabric的环境了并跑通官方的例子,具体的看这里. 2.启动网络 还是以官方的byfn为例好了,不多说,对Fabric有一定了解的都能明白,不明白的看上面文档: ./byfn.sh up #或者是 ./byfn.…
Fabric在启动之前需要生成Orderer的创世区块和channel的配置区块.也就是说在Fabric网络启动之前我们就必须定好了有哪些Org,而当Fabric已经跑起来之后,想要增加Org却是很麻烦的事情. 官方给出的解决方案是:使用configtxlator,可以将配置区块二进制转换为JSON,然后修改JSON,增加Org,再使用这个工具生成一个增量区块.最后再配合peer channel update命令,实现对原有配置的更新. 整个过程操作起来非常复杂.官方文档在这里: http://…
Hyperledger Fabric动态配置Raft节点 最近看官方文档发现新的共识算法etcdRaft允许动态添加或删除排序节点,所以也花了一天时间操作了以下,写篇文章把整个过程记录一下. 初始网络本文设置了4个Orderer节点,1个Peer节点(用于更新配置文件以及测试用),然后动态添加第五个Orderer节点. 本文分成两个部分: 第一部分是手动通过Fabric-CA生成每一个节点的证书文件 第二部分是更新Fabric网络配置添加新的Orderer节点. 本文基于Fabric v2.0.…
前言 在实验Hyperledger Fabric无排序组织以Raft协议启动多个Orderer服务.多组织共同运行维护Orderer服务中,我们已经完成了让普通组织运行维护 Orderer 服务,但是最后发现由于运行排序服务的组织需要较为开放的访问策略,可能会降低组织的安全性,所以本实验将尝试使用提供 TLS-CA 服务的 council 组织运行维护 Raft 协议的三个 orderer 节点.本文将在之前的实验基础上,启动一个没有 orderer 组织的 Fabric ,其中由 counci…
在fabric网络运行过程中动态追加新的组织是相当复杂的,网上的资料也十分匮乏,大多是基于first-network这样的简单示例,而且是使用启动cli容器的方法来增加组织,几乎没有针对实际应用的解决方案.本文介绍了如何在应用程序中调用SDK来进行组织的动态增加. 前言 首先需要介绍一个配置区块的概念,fabric中的配置信息是作为区块写在链上的,每个配置区块中只有一条配置交易,而且配置区块是全量更新的,最新的配置区块中应包含全部的配置信息. 回忆一下在创建通道时,会从本地读取通道配置交易(根据…
前言 在Hyperledger Fabric无系统通道启动及通道的创建和删除中,我们已经完成了以无系统通道的方式启动 Hyperledger Fabric 网络,并将链码安装到指定通道.但目前为止,实验中的 orderer 服务都是通过单独的排序组织来维护且只有一个,那能不能不要排序组织而使用普通组织来运行维护多个 orderer 服务呢?当然是可以的,本文将在之前的实验基础上,启动一个没有 orderer 组织的 Fabric 网络,网络中包含三个组织且每个组织运行维护着一个 Raft 协议的…
Fabric 网络动态添加组织 1.环境准备 如果存在fabric网络环境可不执行,若不存在可以安装下列进行准备 下载fabric-sample,fabric https://github.com/hyperledger/fabric-samples.git https://github.com/hyperledger/fabric-samples.git 构建fabric镜像 cd fabric make all 创建fabric网络 cd fabric-sample/first-networ…
我们接着上一节来讲: 在熟悉动态增加组织或修改配置的步骤后,我们就可以使用java的api来完成动态增加组织或修改配置了: 废话不多说,直接上干货: 1,预制条件 org3的证书以及组织3的MSP详情信息,需要提前准备(如果不清楚的,可以回头看一下上一章) fabric-java-sdk   1.2  我这里使用的是1.2版本,更高版本基本相同,没有什么大变化 2,启动configtxlator工具的rest服务 准备configtxlator工具,你可以通过源码编译或在网上自己下载 执行 ./…
安装过程参照Hyperledger Fabric的官方文档,文档地址:http://hyperledger-fabric.readthedocs.io/en/latest/prereqs.html 0x00 环境介绍,升级系统软件 搭建了一个vm,操作系统版本: [root@fd240 ~]# cat /proc/versionLinux version 4.11.5-200.fc25.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.org) (gc…