hyperledger:创建频道配置事务时出错

时间:2018-06-07 06:42:44

标签: hyperledger-fabric hyperledger

我一直关注此链接:http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#troubleshoot用于启动我的第一个网络,使用byfn.sh文件,并执行了所有步骤

export CHANNEL_NAME=mychannel  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME

我得到的错误是:

himani@himani-HP-Notebook:~/fabric-samples/first-network$ export CHANNEL_NAME=mychannelthis  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME2018-06-07 11:42:00.552 IST [common/tools/configtxgen] main -> INFO 001 Loading configuration
2018-06-07 11:42:00.560 IST [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 002 Generating new channel configtx
2018-06-07 11:42:00.560 IST [msp] getMspConfig -> INFO 003 Loading NodeOUs
2018-06-07 11:42:00.561 IST [msp] getMspConfig -> INFO 004 Loading NodeOUs
2018-06-07 11:42:00.579 IST [common/tools/configtxgen] main -> CRIT 005 Error on outputChannelCreateTx: config update generation failure: could not parse application to application group: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")

我尝试过命令的变体,

export CHANNEL_NAME=mychannelanother  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME

export CHANNEL_NAME=mychannelanother  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $mychannelanother

export CHANNEL_NAME=mychannel  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $mychannel

我甚至尝试在不使用byfn.sh文件的情况下创建频道,但出现了不同的错误

himani@himani-HP-Notebook:~/fabric-samples/first-network$ peer channel create -o orderer.example.com:7050 -c mychannel -f ./channel-artifacts/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
No command 'peer' found, did you mean:
 Command 'pear' from package 'php-pear' (main)
 Command 'pee' from package 'moreutils' (universe)
 Command 'peet' from package 'pipexec' (universe)
 Command 'beer' from package 'gerstensaft' (universe)
peer: command not found
himani@himani-HP-Notebook:~/fabric-samples/first-network$ peer channel create -o orderer.example.com:7050 -c mychannelthis -f ./channel-artifacts/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
No command 'peer' found, did you mean:
 Command 'pear' from package 'php-pear' (main)
 Command 'pee' from package 'moreutils' (universe)
 Command 'beer' from package 'gerstensaft' (universe)
 Command 'peet' from package 'pipexec' (universe)
peer: command not found

我通过引用修改了 /home/himani/fabric-samples/first-network/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem doc到这个链接:https://gerrit.hyperledger.org/r/#/c/18177/,并再次执行命令,但无济于事。

我的证书是否过时了?我在哪里可以找到合适的?这个问题还有别处吗?

更新 在提到类似问题的解决方案Hyperledger Fabric v1.1.0 byfn tutorial on Ubuntu 16.04之后,我关闭了我的网络并试图清理工件,但我无法执行这些命令。 Channel artifacts文件夹为空。

I couldn't execute those commands

2 个答案:

答案 0 :(得分:0)

此命令用于在channel-artifacts文件夹中添加文件,但由于某种原因,该文件夹未自动创建。在创建一个具有足够权限的情况下,创建了执行的命令和创建块。

答案 1 :(得分:0)

我不知道您是否解决了问题,但是那里有些错误。

himani@himani-HP-Notebook:~/fabric-samples/first-network$ export CHANNEL_NAME=mychannelthis  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME2018-06-07 11:42:00.552 IST [common/tools/configtxgen] main -> INFO 001 Loading configuration
2018-06-07 11:42:00.560 IST [common/tools/configtxgen] doOutputChannelCreateTx -> INFO 002 Generating new channel configtx
2018-06-07 11:42:00.560 IST [msp] getMspConfig -> INFO 003 Loading NodeOUs
2018-06-07 11:42:00.561 IST [msp] getMspConfig -> INFO 004 Loading NodeOUs
2018-06-07 11:42:00.579 IST [common/tools/configtxgen] main -> CRIT 005 Error on outputChannelCreateTx: config update generation failure: could not parse application to application group: setting up the MSP manager failed: the supplied identity is not valid: x509: certificate signed by unknown authority (possibly because of "x509: ECDSA verification failure" while trying to verify candidate authority certificate "ca.org1.example.com")

如果您正在学习本教程,则CHANNEL_NAME应该为mychannel

对于第三个版本,应该是这样

export CHANNEL_NAME=mychannel  && ../bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME

对于创建通道,对等通道创建只能在docker容器内发送。 如果您是直接从命令行发送的,请尝试

docker exec -it yourCliContainerName peer channel create -o orderer.example.com:7050 -c mychannelthis -f ./channel-artifacts/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

但请记住先启动容器。

希望这会有所帮助