Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

zhayujie/fabric-tools

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hyperledger Fabric自动化部署工具集

本项目包含一系列对fabric区块链进行动态调整组织和自动化部署的工具,旨在简化fabric网络在部署或变更时繁杂的配置和操作流程,提高生产环境下的运维效率。

项目的实现过程和踩坑细节可参考博客。以下文档以balance-transfer项目为例介绍如何在实际项目中集成这些工具。

功能一:修改组织和通道名称

代码位于modify-org目录中,将该目录下所有文件根据相对路径放入实际项目中。执行set_config.sh脚本可完成组织和通道名称的修改:

./set_config.sh <orgName> <channelName>
  • orgName: 组织名称
  • channelName: 通道名称

具体参见:详细文档

功能二:动态增加或删除组织

代码位于add-org目录中

  • 首先需要把app.js、add-org.js等二次开发的代码整合到实际项目中:add-org.js放置于app/目录下,并在app.js中添加addNewOrg接口;
  • 将new_org.sh和crypto-new-org-template.yaml文件放入项目的artifacts目录下;
  • 编译生成configtxlator工具,与new_org.sh脚本置于同一目录下。

完成准备工作后即可实现以下功能:

1.动态增加组织

./new_org.sh --add <domain> --number <num>
  • domain: 新增组织的域名,域名的第一部分为组织名
  • num: 新增组织中初始节点数量

2.删除已有组织

./new_org.sh --del <orgName>
  • orgName: 组织名称

具体参见:详细文档

功能三:多机部署新组织并加入网络

代码位于multi-machine-deploy目录中。在此之前,应用程序需参考上一节实现使用SDK增加组织的接口。

第一步

将deploy/目录放置于待加入的机器上,并在目录下执行以下命令。将自动安装所需镜像及依赖,新组织默认为1CA, 2peer, 2couchdb的架构:

sudo ./deploy.sh --domain <domain>  --order <ordererIp>
  • domain: 新加组织的域名
  • orderIp: orderer节点所在机器的ip
例: sudo ./deploy.sh --domain org3.example.com --order 192.168.1.51

第二步

首先将new-org/目录放置于应用程序的根目录下(如balance-transfer/new-org),然后把上一步在deploy/artifacts下生成的新组织的证书目录 (如org3.example.com) 复制一份到new-org目录中,并在new-org目录下执行脚本:

sudo ./add_org.sh --org <orgName> --ip <ip>
  • orgName: 组织名称
  • ip: 新组织所在机器的ip
例: sudo ./add_org.sh --org org3 --ip 192.168.1.52

具体参见:详细文档

About

Some scripts for configuring and deploying the hyperledger fabric network.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.