首页 文章

在Hyperledger fabric composer中启动Business Network应用程序时出错 - 多主机对等环境

提问于
浏览
0

我正在创建一个有5个对等体的结构网络 .

2个对等体,CA和orderer在机器1上运行,1个对等体和沙发实例在机器2上,1个对等体和沙发实例在机器3上,1个对等体和沙发实例在机器4上 .

他们都在同一个 Channels . 我能够将.bna安装到网络中 . 但是当我尝试使用composer工具启动应用程序时,使用以下命令

"composer network start -c PeerAdmin@hlfv1 -n blockv6 -V 0.0.1 -A admin -S adminpw"

我没有得到有效的响应错误

✖启动业务网络定义 . 这可能需要一分钟......错误:尝试启动业务网络时出错 . 错误:没有来自任何同行的有效回复 . 来自尝试的对等通信的响应是错误:错误:2未知:链代码错误(状态:500,消息:不是有效的认可系统链代码)来自尝试的对等通信的响应是错误:错误:2未知:链代码错误(状态: 500,消息:未知chaincodeType:NODE)来自尝试的对等通信的响应是一个错误:错误:2未知:链代码错误(状态:500,消息:未知chaincodeType:NODE)命令失败

下面是我的createPeerAdmin脚本的连接配置文件

{

            "name": "hlfv1",
            "x-type": "hlfv1",
            "x-commitTimeout": 300,
           "version": "1.0.0",
         "client": {
    "organization": "Org1",
    "connection": {
        "timeout": {
            "peer": {
                "endorser": "300",
                "eventHub": "300",
                "eventReg": "300"
            },
            "orderer": "300"
        }
    }
},
"channels": {
    "composerchannel": {
        "orderers": [
            "orderer.example.com"
        ],
        "peers": {
            "peer0.org1.example.com": {},
             "peer1.org1.example.com": {},
              "peer2.org1.example.com": {},
              "peer3.org1.example.com": {},
              "peer4.org1.example.com": {}
        }
    }
},
"organizations": {
    "Org1": {
        "mspid": "Org1MSP",
        "peers": [
            "peer0.org1.example.com",
            "peer1.org1.example.com",
            "peer2.org1.example.com",
            "peer3.org1.example.com",
            "peer4.org1.example.com"

        ],
        "certificateAuthorities": [
            "ca.org1.example.com"
        ]
    }
},
"orderers": {
    "orderer.example.com": {
        "url": "grpc://${HOST}:7050"
    }
},
"peers": {
    "peer0.org1.example.com": {
        "url": "grpc://${HOST}:7051",
        "eventUrl": "grpc://${HOST}:7053"
    },
     "peer1.org1.example.com": {
        "url": "grpc://${HOST}:8051",
        "eventUrl": "grpc://${HOST}:8053"
    },
     "peer2.org1.example.com": {
        "url": "grpc://<machineIP>:9051"
    },
     "peer3.org1.example.com": {
        "url": "grpc://<machineIP>:9051"
    },
     "peer4.org1.example.com": {
        "url": "grpc://<machineIP>:9051"
    }
},
"certificateAuthorities": {
    "ca.org1.example.com": {
        "url": "http://${HOST}:7054",
        "caName": "ca.org1.example.com"
    }
}

}

2 回答

  • 0

    您的响应显示已联系了3个对等方,并且每个对等方都有实例化链代码的问题 . 看起来你正在使用作曲家0.20所以分解错误如下

    • 错误:2 UNKNOWN:链码错误(状态:500,消息:不是有效的认可系统链码)

    如果使用带有composer 0.20的fabric 1.1 peer,则会出现上述错误,composer 0.20与fabric 1.1 peer不兼容 .

    • 错误:2 UNKNOWN:链码错误(状态:500,消息:未知chaincodeType:NODE)

    如果您使用的是Fabric 1.0 peer,则会出现上述错误 . 在面料1.1中引入了Chaincode类型的NODE

    所以我不知道你是如何在你的网络中设置如此混合的结构对等级别的,但是我建议你查看你正在运行的对等体的版本,并确保如果你打算使用它们都是1.2作曲家0.20 . 如果要使用fabric 1.1,请确保使用composer 0.19.x

    我看到的最后一点是你的连接配置文件中有一些$ 定义,其他的你用 <machineIP> 替换了所以我假设那些$ 条目在你发布的例子中没有被替换,而不是你的真实连接档案 .

  • 5

    更改composer的版本有助于解决此问题 .

    npm install -g composer-cli@0.19
    

相关问题