Ich habe ein Hyperledger Fabric (v0.6) Netzwerk-Setup auf Remote-Maschinen. Ich möchte den pbft-Konsens für die Verpflichtung von Blöcken ermöglichen. Ich kann den pbft-Konsens in den Protokollen aktiviert sehen und die Peers können sich mit dem Wurzelknoten verbinden. Ich habe meinen Chaincode auf allen 4 Peers implementiert und eine Transaktion auf einem aufgerufen. Ich sehe keine Commits in irgendeinem der Peers, selbst nach einer langen Zeit, obwohl die Peers eine Zustandsänderung viel propagieren.Hyperledger Fabric 0.6 pbft Konsens
Es folgt mein Docker-compose.yml Datei im Root-Knoten:
membersrvc:
image: hyperledger/fabric-membersrvc
restart: unless-stopped
ports:
- "7054:7054"
expose:
- "7054"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- MEMBERSRVC_CA_ACA_ENABLED=true
command: membersrvc
vp0:
image: hyperledger/fabric-peer:latest
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- CORE_PEER_ID=vp0
- CORE_SECURITY_ENABLED=false
- CORE_SECURITY_ENROLLID=test_vp0
- CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT
- CORE_PEER_PKI_ECA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TCA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_PEER_NETWORKID=dev
- CORE_LOGGING_LEVEL=debug #critical, error, warning, notice, info, debug
# The following section enables pbft consensus
- CORE_PBFT_GENERAL_BATCHSIZE=1
- CORE_PBFT_GENERAL_K=2
- CORE_PBFT_GENERAL_MODE=classic
- CORE_PEER_VALIDATOR_CONSENSUS_PLUGIN=pbft # noops, pbft
- CORE_PBFT_GENERAL_TIMEOUT_REQUEST=10s
# - CORE_NOOPS_BLOCK_TIMEOUT=2s
# - CORE_NOOPS_BLOCK_WAIT=2s
ports:
- "7050:7050"
- "7051:7051"
expose:
- "7051"
- "7052"
- "7053"
links:
- membersrvc
command: sh -c "sleep 20; peer node start"
Und das ist die Docker-compose.yml Datei an jedem der Peer-Knoten:
vp1:
image: hyperledger/fabric-peer:latest
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- CORE_PEER_DISCOVERY_ROOTNODE=root-node-ip:7051
- CORE_PEER_ID=vp1
- CORE_SECURITY_ENABLED=false
- CORE_SECURITY_ENROLLID=test_vp1
- CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT
- CORE_PEER_PKI_ECA_PADDR=http://root-node-ip:7054
- CORE_PEER_PKI_TCA_PADDR=http://root-node-ip:7054
- CORE_PEER_PKI_TLSCA_PADDR=http://root-node-ip:7054
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_PEER_NETWORKID=dev
- CORE_LOGGING_LEVEL=debug #critical, error, warning, notice, info, debug
# The following section enables pbft consensus
- CORE_PBFT_GENERAL_BATCHSIZE=1
- CORE_PBFT_GENERAL_K=2
- CORE_PBFT_GENERAL_MODE=classic
- CORE_PEER_VALIDATOR_CONSENSUS_PLUGIN=pbft # noops, pbft
- CORE_PBFT_GENERAL_TIMEOUT_REQUEST=10s
#- CORE_NOOPS_BLOCK_TIMEOUT=2s
#- CORE_NOOPS_BLOCK_WAIT=2s
ports:
- "7050:7050"
- "7051:7051"
expose:
- "7051"
- "7052"
- "7053"
command: sh -c "sleep 20; peer node start"
Can jemand bitte helfen. Vielen Dank.