Hyperledger fabric 向hyperledger结构的组织添加新对等方需要哪些步骤?

Hyperledger fabric 向hyperledger结构的组织添加新对等方需要哪些步骤?,hyperledger-fabric,hyperledger,Hyperledger Fabric,Hyperledger,我正在学习使用Hyperlegder Fabric构建网络,因为我已经使用Hyperledger Composer开发了一个网络,下一步是构建生产网络。我已经开始构建第一个网络示例并开始工作。我在样本中添加了Org3和2个对等体,它可以正常工作 现在我想添加更多的对等点,例如peer2.org1.example.com,因此我编辑了文件以创建peer2,并创建了它,但是当script.sh尝试加入到通道时,它会启动一个错误: 错误:获取背书人客户端通道:PER:404时出错-尝试连接到本地对等方

我正在学习使用Hyperlegder Fabric构建网络,因为我已经使用Hyperledger Composer开发了一个网络,下一步是构建生产网络。我已经开始构建第一个网络示例并开始工作。我在样本中添加了Org3和2个对等体,它可以正常工作

现在我想添加更多的对等点,例如peer2.org1.example.com,因此我编辑了文件以创建peer2,并创建了它,但是当script.sh尝试加入到通道时,它会启动一个错误:

错误:获取背书人客户端通道:PER:404时出错-尝试连接到本地对等方时出错 原因:x509:证书对peer1.org1.example.com、peer1有效,而不是peer2.org1.example.com


那么,我做错了什么?谢谢

当您向网络添加新的对等点时,您需要确保为该新对等点正确设置所有带下划线的相关加密材料。首先,确保在
crypto config.yaml
文件中添加有关新对等方的信息,并使用
cryptogen
工具为新对等方生成密钥和证书。接下来,您需要在启动对等机之前设置配置,以指向相关的加密资料,例如org2的对等机0的配置:

  peer0.org2.example.com:
    container_name: peer0.org2.example.com
    extends:
      file: peer-base.yaml
      service: peer-base
    environment:
      - CORE_PEER_ID=peer0.org2.example.com
      - CORE_PEER_ADDRESS=peer0.org2.example.com:7051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051
它继承自
base/peer base.yaml
文件:

services:
  peer-base:
    image: hyperledger/fabric-peer
    environment:
      - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
      # the following setting starts chaincode containers on the same
      # bridge network as the peers
      # https://docs.docker.com/compose/networking/
      - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_byfn
      #- CORE_LOGGING_LEVEL=ERROR
      - CORE_LOGGING_LEVEL=DEBUG
      - CORE_PEER_TLS_ENABLED=true
      - CORE_PEER_GOSSIP_USELEADERELECTION=true
      - CORE_PEER_GOSSIP_ORGLEADER=false
      - CORE_PEER_PROFILE_ENABLED=true
      - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
      - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
      - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
    command: peer node start
      - CORE_PEER_LOCALMSPID=Org2MSP
    volumes:
        - /var/run/:/host/var/run/
        - ../crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp
        - ../crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls

    ports:
      - 9051:7051
      - 9053:7053

总而言之,您需要确保配置正确的MSP ID和tls证书的路径。在您的情况下,您的新对等方只是尝试重用另一个对等方的加密材料。

您可以通过为新对等方生成加密材料(使用),生成新对等方并使该对等方加入网络上的现有通道进行同步来实现这一点

您可以在以下网址找到完整的指南:


我尚未更新tls认证的路径。非常感谢。