我在设置简单的Hyperledger Fabric v1.2.0网络时遇到麻烦。我尝试建立的网络由一个有序的和一个具有一个对等点的单一组织组成。我确实成功完成了“首次构建网络”教程,并且希望从头开始。但是,在将对等方加入频道时,我总是遇到错误。
和This is NOT a quick solution.我正在使用CORRECT块。 (不是创世纪)
peer channel join -b ch0_newest.block
将对等方加入网络失败,并显示以下错误:
错误:投标失败(错误:投标响应错误500)
对等日志:
2018-09-28 11:36:59.340 UTC [endorser] ProcessProposal-> DEBU 433输入:来自10.60.0.1:54784的请求
2018-09-28 11:36:59.340 UTC [protoutils] ValidateProposalMessage-> DEBU 434 ValidateProposalMessage针对签名的提案0xc4225da4b0开始
2018-09-28 11:36:59.340 UTC [protoutils] validateChannelHeader-> DEBU 435 validateChannelHeader信息:标头类型1
2018-09-28 11:36:59.340 UTC [protoutils] checkSignatureFromCreator-> DEBU 436开始
2018-09-28 11:36:59.340 UTC [protoutils] checkSignatureFromCreator-> DEBU 437创建者是&{rg-837-380-MSP fa5c6b15723ec5d0aa104cf943611ebdefeb0a201a25d99464806aaa8c9326d0}
2018-09-28 11:36:59.340 UTC [protoutils] checkSignatureFromCreator-> DEBU 438创建者有效
2018-09-28 11:36:59.340 UTC [protoutils] checkSignatureFromCreator-> DEBU 439成功退出
2018-09-28 11:36:59.340 UTC [protoutils] validateChaincodeProposalMessage-> DEBU 43a validateChaincodeProposalMessage从提案0xc4221d09b0开始,标头0xc4225da810
2018-09-28 11:36:59.340 UTC [protoutils] validateChaincodeProposalMessage-> DEBU 43b validateChaincodeProposalMessage信息:标头扩展引用了链码名称:“ cscc”
2018-09-28 11:36:59.340 UTC [endorser]预处理-> DEBU 43c [] [0df54e45]处理txid:0df54e4509c883ee67d7fd76cf79f1fdff487bff3811f1c5bde5cb2bf40842f6
2018-09-28 11:36:59.341 UTC [endorser] SimulateProposal-> DEBU 43d [] [0df54e45]条目链代码:名称:“ cscc”
2018-09-28 11:36:59.341 UTC [endorser] callChaincode-> DEBU 43e [] [0df54e4509c883ee67d7fd76cf79f1fdff487bff3811f1c5bde5cb2bf40842f6]条目链代码:名称:“ cscc”版本:1.2.0 2018-09-28 11:36:59.341 UTC [ccprovider] NewCCContext-> DEBU 43f NewCCCC(chain =,chaincode = cscc,version = 1.2.0,txid = 0df54e4509c883ee67d7fd76cf79f1fdff487bff3811f1c5bde5cb2bf40842f6,syscc = cs = c,0c = cxc = 0,ccc = cs 1.2.0)
2018-09-28 11:36:59.341 UTC [chaincode]执行-> DEBU 440规范名称:cscc:1.2.0
2018-09-28 11:36:59.341 UTC [chaincode]执行-> DEBU 441条目
2018-09-28 11:36:59.341 UTC [shim] func1-> DEBU 442 [0df54e45]从对等方收到消息TRANSACTION
2018-09-28 11:36:59.341 UTC [shim] handleMessage-> DEBU 443 [0df54e45]处理类型为TRANSACTION(state:ready)的ChaincodeMessage
2018-09-28 11:36:59.341 UTC [shim] handleReady-> DEBU 444 [0df54e45]收到交易,正在调用chaincode上的事务(状态:就绪)
2018-09-28 11:36:59.341 UTC [cscc]调用-> DEBU 445调用功能:JoinChain
2018-09-28 11:36:59.341 UTC [shim] func1-> DEBU 446 [0df54e45]事务已完成。发送已完成
2018-09-28 11:36:59.341 UTC [shim] triggerNextState-> DEBU 447 [0df54e45]发送状态消息已完成
2018-09-28 11:36:59.341 UTC [chaincode] handleMessage-> DEBU 448 [0df54e45]结构侧处理ChaincodeMessage类型:处于就绪状态
2018-09-28 11:36:59.341 UTC [chaincode]通知-> DEBU 449 [0df54e45]通知Txid:0df54e4509c883ee67d7fd76cf79f1fdff487bff3811f1c5bde5cb2bf40842f6,channelID:
2018-09-28 11:36:59.341 UTC [chaincode]执行-> DEBU 44a退出
2018-09-28 11:36:59.342 UTC [enderser] callChaincode-> DEBU 44b [] [0df54e4509c883ee67d7fd76cf79f1fdff487bff3811f1c5bde5cb2bf40842f6]退出
2018-09-28 11:36:59.342 UTC [endorser] SimulateProposal-> DEBU 44c [] [0df54e45]退出
2018-09-28 11:36:59.342 UTC [endorser] ProcessProposal-> ERRO 44d [] [0df54e45] SimulationProposal()导致txid的链码名称:“ cscc”响应状态500:0df54e4509c883ee67d7fd76cf79f1fdff487bb3810f1c5>
2018-09-28 11:36:59.342 UTC [endorser] ProcessProposal-> DEBU 44e退出:来自10.60.0.1:54784的请求
我看到系统链代码“ cscc”返回了500错误,但没有(内部)链代码运行时问题的任何信息。
在哪里/如何找到此类信息?
我很讨厌启用DEBUG日志作为环境变量(对等):
containers:
- args:
- --orderer=$(ORDERER_URL)
- --peer-chaincodedev=true
command:
- peer
- node
- start
env:
- name: ORDERER_URL
value: nd-418-523-261.rg-837-380.int.chainstack.com:7050
- name: CORE_VM_DOCKER_ATTACHSTDOUT
value: "true"
- name: CORE_PEER_ID
value: nd-418-523-262.rg-837-380.int.chainstack.com
- name: CORE_PEER_ADDRESS
value: nd-418-523-262.rg-837-380.int.chainstack.com:7051
- name: CORE_PEER_GOSSIP_EXTERNALENDPOINT
value: nd-418-523-262.rg-837-380.int.chainstack.com:7053
- name: CORE_PEER_GOSSIP_BOOTSTRAP
value: nd-418-523-262.rg-837-380.int.chainstack.com:7051
- name: CORE_PEER_LOCALMSPID
value: rg-837-380-MSP
- name: CORE_TLS_ENABLED
value: "false"
- name: CORE_PEER_GOSSIP_USELEADERELECTION
value: "true"
- name: CORE_PEER_GOSSIP_ORGLEADER
value: "false"
- name: CORE_PEER_PROFILE_ENABLED
value: "true"
- name: CORE_PEER_LISTENADDRESS
value: 0.0.0.0:7051
- name: CORE_PEER_EVENTS_ADDRESS
value: 0.0.0.0:7053
- name: CORE_PEER_CHAINCODELISTENADDRESS
value: 0.0.0.0:7052
- name: CORE_PEER_MSPCONFIGPATH
value: /etc/assets/msp
- name: CORE_NEXT
value: "true"
- name: CORE_CHAINCODE_LOGGING_LEVEL
value: DEBUG
- name: CORE_LOGGING_PEER
value: DEBUG
- name: CORE_CHAINCODE_LOGGING_SHIM
value: DEBUG
- name: CORE_LOGGING_LEVEL
value: DEBUG
image: hyperledger/fabric-peer:1.2.0
imagePullPolicy: IfNotPresent
name: nd-418-523-262-peer
顺便说一句,我正在使用kubernetes ti run peer,关于docker和chain code eval有什么特别的吗? 我看到了这个https://gerrit.hyperledger.org/r/#/c/12159/8/examples/cluster/kubernetes/peer.yaml.in
额外日志(对等启动日志)https://gist.github.com/hayorov/22912f76812493885d8f53a83f21201f
答案 0 :(得分:0)
使用了不正确的MSP admincerts密钥。
错误详细信息peer.log
(添加了额外的日志记录之后):
2018-10-06 18:11:06.296 UTC [背书者] ProcessProposal-> ERRO 163 DEBUG:状态:500消息:“ [JoinChain] [ch0]的访问被拒绝:[未能验证提案的创建者满足本地MSP主体在使用策略[Admins]的无频道检查策略期间:[此身份不是管理员]]“
答案 1 :(得分:0)
我看到了同样的错误。花了一段时间,但我终于意识到同行已经加入了该频道。这对您也很有意义,因为您之前说过已经完成了本教程。
在启动同级时,它会以某种方式记住它已加入频道。 您可以通过输入容器并获取列表来进行验证。
docker exec -it <peer container id> bash
peer channel list
,它将显示对等方加入的渠道。
希望这对某人有帮助!