2017-09-14 2 views
2

J'apprends à construire un réseau avec Hyperlegder Fabric parce que j'ai développé un réseau avec Hyperledger Composer et la prochaine étape est de construire le réseau de production. J'ai commencé à construire l'échantillon du premier réseau et fonctionne. J'ai ajouté Org3 avec 2 pairs pour échantillonner et cela fonctionne.Quelles étapes sont nécessaires pour ajouter un nouveau pair à une organisation de tissu hyperléger?

Et maintenant je veux ajouter plus de pairs, par exemple peer2.org1.example.com j'ai donc édité des fichiers afin de créer le peer2 et il est créé, mais quand le script.sh essaie de se joindre au canal, il se lance une erreur:

Error: Error getting endorser client channel: PER:404 - Error trying to connect to local peer Caused by: x509: certificate is valid for peer1.org1.example.com, peer1, not peer2.org1.example.com

Alors, Qu'ai-je mal fait? Merci

Répondre

2

Lorsque vous ajoutez un nouvel homologue au réseau, vous devez vous assurer de configurer correctement tous les documents cryptographiques liés soulignés pour ce nouveau pair. Tout d'abord, assurez-vous d'ajouter des informations sur le nouveau pair dans le fichier et d'utiliser l'outil cryptogen pour générer des clés et des certificats pour un nouveau pair. Ensuite, vous devez la configuration d'installation avant de commencer le pair pour pointer vers le matériel Crypto correspondant par exemple configuration pour peer0 de org2:

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 

où il a hérité du fichier 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 

pour envelopper , vous devez vous assurer de bien configurer l'ID MSP et le chemin vers les certificats tls. Dans votre cas, votre nouveau pair essaie simplement de réutiliser le matériel crypto d'un autre pair.

+1

Je ne l'ai pas mis à jour le chemin de tls certificastes. Je vous remercie! – cansado2930