2、Hyperledger Fabric 生产环境搭建

331 阅读3分钟

使用脚本安装 fabric

  • 创建安装目录

mkdir -p gopath/src/github.com/hyperledger

  • 进入安装目录下,并执行官网下载命令

cd gopath/src/github.com/hyperledger && curl -sSL bit.ly/2ysbOFE | bash -s

一般上述命令都无法成功执行(有时候翻墙也可能无法执行),推荐的一种方法是用自己的浏览器访问 bit.ly/2ysbOFE ,将该脚本文件内容保存在本机,然后复制到虚拟机中。本机与虚拟机之间的交互有多种方法,这里举两种常用的方式:

  • 方式 1:在虚拟机中创建一个启动脚本并将脚本内容复制到脚本文件中;
  1. touch bootstrap.sh

  2. 复制网页脚本内容到 bootstrap.sh 中

  3. 给脚本增加执行权限 chmod +x bootstrap.sh

  4. 执行脚本 ./bootstrap.sh

  • 方式 2:开启虚拟机中的文件共享功能(这种方式可以支持本机和虚拟机之间的快文件共享),步骤如下:

可以看到,我设置的共享文件夹是在E盘的fabric目录,点击完成后重启虚拟机即可使用共享文件夹。将刚才下载的脚本文件bootstrap.sh放在该目录下,默认挂载到虚拟机的/mnt/hgfs/目录下,将该目录下的脚本文件复制到 Hyperledger 目录下,然后为脚本文件增加执行权限并执行该脚本文件

./bootstrap.sh

该脚本会自动拉取 fabric 所需要的二进制可执行文件、fabric-sample 和docker 镜像,脚本执行完成后,将 fabric-samples 中的bin目录下的所有二进制文件都拷贝到 /usr/local/bin 中,以后便可在本地直接使用这些可执行文件(这些二进制文件都是 fabric 的工具)。

cp * /usr/local/bin

ok,如果成功走到这里,就说明你的基础环境已经搭建完成了,下面我们对生产环境进行测试。

启动 byfn(Build Your First Network)网络

我们在上面已经完成了 fabric 生产环境的搭建,我们使用官方提供的一个脚本示例测试生产环境是否部署成功。

官方示例提供了一个有完整注释的脚本——byfn.sh,它可以通过镜像快速启动一个 Hyperledger Fabric 网络,这个网络代表两个组织、四个 Peer 节点、一个排序节点和一个通道组成的生产网络。

我们来到fabric-samples/first-network/目录下,可以看到一个byfn.sh脚本,这个脚本是创建第一个网络的脚本(build your first network)。我们执行这个脚本

./byfn.sh up

因为后面并没有指明使用哪一种排序服务,系统将会使用默认的"solo"排序服务,也即是只使用 1 个排序节点(虽然 byfn 网络中定义了 5 个排序节点)。如果你想支持多种链码语言,请指定参数启动五个 Raft 节点或者 Kafka 的排序服务来取代一个节点的 Solo 排序。输入上述命令后,接下来就是漫长的自动执行过程,过程中会生成很多的日志,脚本执行完成后,不妨看一看日志,帮助你理解一下这个脚本都是做了些什么。

如果最终执行结果显示出 END,就说明你的 fabric 生产环境已经部署成功了,接下来你就可以按照自己的需求自定义生产环境了。

关停网络、清理网络环境

我们已经完成 fabric 网络的启动以及相关测试,那么我们开始新的测试之前,需要将当前网络关停并清理网络环境,防止和下面的测试出现冲突。

关停 byfn 网络

./byfn down

清理网络环境

docker volume prune

该命令会清理网络无效的挂载