HyperLedger Fabric 2.0-release如何测试网络部署

发布时间:2021-12-11 16:07:18 作者:小新
来源:亿速云 阅读:245
# HyperLedger Fabric 2.0-release如何测试网络部署

## 概述

Hyperledger Fabric 2.0是Linux基金会主导的企业级分布式账本平台,其模块化架构和可插拔共识机制使其成为联盟链场景的首选。本文将详细介绍如何从零开始测试Fabric 2.0网络的部署过程,涵盖环境准备、组件配置到最终验证的全流程。

---

## 一、环境准备

### 1. 系统要求
- **操作系统**:Ubuntu 18.04+/CentOS 7+ 或 macOS 10.14+
- **Docker**:版本≥19.03(需支持`docker-compose`)
- **Go语言**:1.14+(编译链码时需要)
- **Node.js**:12.x(可选,用于JavaScript链码)

```bash
# 示例:Ubuntu安装依赖
sudo apt update && sudo apt install -y docker.io docker-compose golang nodejs npm

2. 下载Fabric组件

从官方仓库获取二进制文件和示例配置:

curl -sSL https://bit.ly/2Wb7F1y | bash -s -- 2.0.0

此脚本会自动下载: - configtxgen(生成创世区块) - peer(节点程序) - orderer(排序服务) - 示例网络配置(位于fabric-samples目录)


二、网络部署步骤

1. 生成加密材料

使用cryptogen工具生成组织证书:

# crypto-config.yaml示例
PeerOrgs:
  - Name: Org1
    Domain: org1.example.com
    Template:
      Count: 2  # 每个组织两个节点

生成命令:

./bin/cryptogen generate --config=./crypto-config.yaml

2. 创建创世区块

通过configtxgen生成通道配置:

./bin/configtxgen -profile SampleMultiNodeEtcdRaft -outputBlock ./channel-artifacts/genesis.block

3. 启动网络

使用docker-compose启动容器:

# docker-compose-cli.yaml片段
services:
  peer0.org1.example.com:
    image: hyperledger/fabric-peer:2.0
    environment:
      - CORE_PEER_ID=peer0.org1.example.com
      - CORE_PEER_ADDRESS=peer0.org1.example.com:7051

启动命令:

docker-compose -f docker-compose-cli.yaml up -d

三、通道创建与链码部署

1. 创建应用通道

进入CLI容器操作:

docker exec -it cli bash
peer channel create -o orderer.example.com:7050 -c mychannel -f ./channel-artifacts/channel.tx

2. 节点加入通道

peer channel join -b mychannel.block

3. 部署链码(以Go为例)

# 打包链码
peer lifecycle chaincode package mycc.tar.gz --path github.com/chaincode/example_go --lang golang --label mycc_1

# 安装并提交
peer lifecycle chaincode install mycc.tar.gz
peer lifecycle chaincode approveformyorg --channelID mychannel --name mycc --version 1.0 --sequence 1 --init-required --package-id mycc_1:abcd1234
peer lifecycle chaincode commit -o orderer.example.com:7050 --channelID mychannel --name mycc --version 1.0 --sequence 1 --init-required

四、功能验证

1. 测试链码调用

peer chaincode invoke -o orderer.example.com:7050 -C mychannel -n mycc --isInit -c '{"Args":["init","a","100","b","200"]}'
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'

2. 网络监控


五、常见问题解决

问题现象 可能原因 解决方案
链码安装失败 依赖未正确打包 检查vendor文件夹是否存在
节点无法加入通道 TLS证书不匹配 确认crypto-configdocker-compose配置一致
交易超时 排序服务未启动 检查orderer容器日志

结语

通过上述步骤,我们完成了Fabric 2.0测试网络的完整部署。2.0版本的新特性如链码生命周期管理和Raft共识机制显著提升了生产可用性。建议进一步探索: - 私有数据集合配置 - 跨通道通信 - 性能基准测试(如Caliper工具)

官方文档参考:Hyperledger Fabric Docs “`

注:实际部署时需根据具体需求调整: 1. 网络拓扑结构(如多组织配置) 2. 共识算法选择(Solo/Raft/Kafka) 3. TLS证书策略(是否启用全局TLS)

推荐阅读:
  1. Hyperledger Fabric Java SDK最新教程
  2. 使用Hyperledger composer创建一个新的业务网络

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hyperledger fabric release

上一篇:怎么用Java设计一个短链接生成系统

下一篇:Hyperledger中worldstate和SAP CRM的CRMD_CUMULAT_H是怎么样的

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》