HyperLedger Fabric 1.4.4 ca服务集群搭建(MySQL)

本文档介绍了如何在Hyperledger Fabric 1.4.4中搭建CA服务集群,重点是将默认的嵌入式数据库替换为MySQL。首先,创建配置文件并启动服务,接着修改CA服务的配置,包括`ca-config.json`和`msp-config.yaml`,以适应MySQL。遇到的问题主要是数据库表的创建与特定MySQL版本不兼容,需要手动创建并调整建表语句。完成这些步骤后,成功实现了CA服务集群与MySQL的集成。
摘要由CSDN通过智能技术生成

Fabric CA默认使用SQLite数据库,这是一种嵌入式的文件数据库,如果需要将在集群中部署Fabric CA,那么就需要使用PostgreSQL或者MySQL数据库,支持的最低版本如下:

PostgreSQL: 9.5.5

MySQL: 5.7(但是使用5.7以上的版本也会有问题,这个后面会详细说明)

单机版搭建

首先创建ca.yaml文件(需要注意文件中的一些目录需要根据情况做修改),文件内容如下:

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#

version: '2'
services:
  ca0:
    image: hyperledger/fabric-ca:$IMAGE_TAG
    environment:
      - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
      - FABRIC_CA_SERVER_CA_NAME=ca-org1
      - FABRIC_CA_SERVER_TLS_ENABLED=true
      - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
      - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/7550a33dfd82fb96b16f209cff24eeeedb85a8ee4288bd434fa947d98b90356f_sk
    ports:
      - "7054:7054"
    command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/7550a33dfd82fb96b16f209cff24eeeedb85a8ee4288bd434fa947d98b90356f_sk  -b admin:adminpw -d'
    volumes:
      - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
      # 将ca服务的目录映射到主机目录中
      - /var/hyperledger/ca/:/etc/hyperledger/fabric-ca-server
    container_name: ca0_peerOrg1

文件创建完成之后就可以启动ca服务了,docker-compose -f ca.yaml up -d
docker ps -a命令运行结果如下:
在这里插入图片描述
这时候可以发现我们映射到的主机目录下生成了一系列文件:

[root@bd226 ca]# tree
.
├── fabric-ca-server-config.yaml
├── fabric-ca-server.db
├── IssuerPublicKey
├── IssuerRevocationPublicKey
└── msp
    └── keystore
        ├── 7550a33dfd82fb96b16f209cff24eeeedb85a8ee4288bd434fa947d98b90356f_sk
        ├── IssuerRevocationPrivateKey
        └── IssuerSecretKey

2 directories, 7 files

fabric-ca-server.dbSQLite数据库存储数据的文件。
fabric-ca-server-config.yamlCA服务的配置文件。
其他文件都是公钥密钥之类的文件。

修改配置文件

首先修改ca.yaml文件。
修改后的内容如下:

version: '2'
services:
  ca0:
    image: hyperledger/fabric-ca:$IMAGE_TAG
    environment:
      - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
      - FABRIC_CA_SERVER_CA_NAME=ca-org1
      - FABRIC_CA_SERVER_TLS_ENABLED=true
      - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
      - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/7550a33dfd82fb96b16f209cff24eeeedb85a8ee4288bd434fa947d98b90356f_sk
    ports:
      - "7054:7054"
    command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/7550a33dfd82fb96b16f209cff24eeeedb85a8ee4288bd434fa947d98b90356f_sk  -b admin:adminpw -d'
    volumes:
      - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
      - /var/hyperledger/ca/:/etc/hyperledger/fabric-ca-server
    container_name: ca0_peerOrg1

  ca1:
    image: hyperledger/fabric-ca:$IMAGE_TAG
    environment:
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要安装Hyperledger Fabric v1.4.4,您可以按照以下步骤操作: 1. 安装必要的软件:您需要在计算机上安装以下软件:Docker,Docker Compose,Go语言环境,Node.js和npm包管理器。 2. 克隆Hyperledger Fabric源代码:使用git工具,您可以克隆Hyperledger Fabric源代码到您的计算机上。使用以下命令: ``` git clone -b v1.4.4 https://github.com/hyperledger/fabric.git ``` 3. 下载所需的Docker镜像:使用以下命令下载所需的Docker镜像: ``` cd fabric curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/v1.4.4/scripts/bootstrap.sh | bash -s -- 1.4.4 ``` 4. 启动Fabric网络:使用以下命令启动Fabric网络: ``` cd fabric-samples/first-network ./byfn.sh generate ./byfn.sh up ``` 这将启动一个由两个组织和四个对等节点组成的Fabric网络。 5. 安装Fabric CLI:使用以下命令安装Fabric CLI: ``` npm install -g fabric-cli ``` 6. 测试Fabric网络:使用以下命令测试Fabric网络: ``` fabric-cli chaincode invoke -o orderer.example.com:7050 -C mychannel -n mycc -c '{"Args":["invoke","a","b","10"]}' ``` 这将在Fabric网络上调用名为“mycc”的智能合约,并将“a”账户中的10个单位的货币转移到“b”账户中。 这些步骤将帮助您在您的计算机上安装Hyperledger Fabric v1.4.4并运行一个简单的Fabric网络。 ### 回答2: 安装Hyperledger Fabric v1.4.4 可以按照以下步骤进行: 1. 首先,确保你已经安装了Docker和Docker Compose。如果没有安装,你可以在官方网站上找到安装教程并按照步骤安装。 2. 进入Hyperledger Fabric官方Github仓库(https://github.com/hyperledger/fabric)并下载Fabric v1.4.4 的发布包。你可以选择下载源码或者已构建好的二进制文件。 3. 解压下载的文件并进入解压后的目录。 4. 打开终端并使用以下命令运行Fabric的二进制文件进行安装: ``` ./scripts/bootstrap.sh ``` 此命令会下载必需的镜像文件、二进制文件和示例代码。 5. 安装完成后,我们可以启动一个示例网络以验证安装成功。使用以下命令启动示例网络: ``` cd fabric-samples/first-network ./byfn.sh generate ./byfn.sh up ``` 这将在本地计算机上启动一个简单的Fabric网络并运行示例链码。 6. 在运行脚本之后,你可以使用以下命令关闭网络: ``` ./byfn.sh down ``` 以上是安装Hyperledger Fabric v1.4.4 的基本步骤。你可以通过阅读官方文档和使用其他资源来深入了解和使用Hyperledger Fabric。 ### 回答3: 要安装Hyperledger Fabric v1.4.4,您可以按照以下步骤进行操作: 1. 首先,确保您的计算机系统满足Hyperledger Fabric的硬件和软件要求。您需要一台运行Linux操作系统的计算机,并安装Docker和Docker Compose。 2. 下载Hyperledger Fabric的二进制文件。您可以从Hyperledger Fabric的官方网站下载适用于Linux的二进制文件。解压缩下载的文件并将其放在您希望安装的位置。 3. 配置Docker和Docker Compose。确保您具有适当的Docker权限,并安装和配置Docker Compose,以便能够运行多个Docker容器。 4. 设置Hyperledger Fabric网络。在您的计算机上创建一个目录,并将其作为Fabric网络的根目录。在此目录中,创建一个配置文件,其中包括网络的拓扑结构、组织、通道和节点等信息。您可以使用Hyperledger Fabric提供的示例配置文件作为参考。 5. 生成加密材料和初始区块。使用Fabric提供的工具生成加密材料,包括证书、私钥和MSP(Membership Service Provider)文件。然后,使用生成的材料创建初始区块。 6. 启动Hyperledger Fabric网络。使用Docker Compose命令在您的计算机上启动Fabric网络。这将根据您在配置文件中定义的拓扑结构创建和运行相应的Docker容器。 7. 部署智能合约。使用Fabric提供的工具,将您的智能合约部署到Fabric网络中的适当通道上。这将包括安装链码、实例化链码和建立合约的版本。 8. 运行和测试Fabric网络。一旦部署了智能合约,您可以使用Fabric提供的SDK或CLI工具与网络进行交互。通过执行交易和查询等操作,测试网络的功能和性能。 以上是安装Hyperledger Fabric v1.4.4的基本步骤。根据您的实际需求,可能还需要进行其他配置和操作。您可以参考Hyperledger Fabric的官方文档和社区资源,以获取更详细的安装说明和教程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值