0

我正在设置 hyperledger caliper 来测试 fabcar 网络并多次收到 ECONNREFUFUSED 错误。它说它未能注册管理员。./startFabric.sh javascript我在fabcar repo 的fabric-samples 中设置了测试网络。然后我使用 docker-compose 启动 caliper(用于docker-compose upcaliper-benchmarks )。这是我使用的 docker-compose 文件:

version: '2'

services:
    caliper:
        container_name: caliper
        image: hyperledger/caliper:0.3.2
        command: launch master --caliper-flow-only-test --caliper-fabric-gateway-usegateway --caliper-fabric-gateway-discovery 
        environment:
        - CALIPER_BIND_SUT=fabric:2.1.0
        - CALIPER_BENCHCONFIG=benchmarks/samples/fabric/fabcar/config1.yaml
        - CALIPER_NETWORKCONFIG=networks/fabric/network-config.yaml
        volumes:
        - ~/caliper-benchmarks:/hyperledger/caliper/workspace
        networks:
          - net_test

networks:
  net_test:
    external: "true"

这是我的 network-config.yaml 文件:


name: Fabric
version: "1.0"
mutual-tls: false

caliper:
    blockchain: fabric
    #command:
        #start: export FABRIC_VERSION=2.1.0;export FABRIC_CA_VERSION=1.4.4;docker-compose -f networks/fabric/naman/docker-compose/2org1peercouchdb_solo_raft/docker-compose-tls.yaml up -d;sleep 3s
        #end: docker-compose -f networks/fabric/naman/docker-compose/2org1peercouchdb_solo_raft/docker-compose-tls.yaml down;(test -z \"$(docker ps -aq)\") || docker rm $(docker ps -aq);(test -z \"$(docker images dev* -q)\") || docker rmi $(docker images dev* -q);rm -rf /tmp/hfc-*

info:
    Version: 2.1.0
    Size: 2 Orgs with 1 Peer
    Orderer: Raft
    Distribution: Single Host
    StateDB: CouchDB

clients:
    admin.Org1:
        client:
            organization: Org1
            connection:
                timeout:
                    peer:
                        endorser: 300
                    orderer: 300
                    
            #credentialStore:
                #path: /tmp/hfc-kvs/org1
                #cryptoStore:
                    #path: /tmp/hfc-cvs/org1
            #clientPrivateKey:
                #path: networks/fabric/naman/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/40fa9f923f527b11be8c05bb1a2d166a5c2cc43ee2d425b53cdb82836479206d_sk
            #clientSignedCert:
                #path: networks/fabric/naman/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/cert.pem

    admin.Org2:
        client:
            organization: Org2
            connection:
                timeout:
                    peer:
                        endorser: 300
                    orderer: 300            
            #credentialStore:
                #path: /tmp/hfc-kvs/org2
                #cryptoStore:
                    #path: /tmp/hfc-cvs/org2
            #clientPrivateKey:
                #path: networks/fabric/naman/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/cdc22e2ec274bf9d5ec0700b420c5e7423a2be73112f3bdc6565d7d45f9ae643_sk
            #clientSignedCert:
                #path: networks/fabric/naman/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/cert.pem
    User1:
        client:
            organization: Org1
            connection:
                timeout:
                    peer:
                        endorser: 300
                    orderer: 300    
    
    User2:
        client:
            organization: Org2
            connection:
                timeout:
                    peer:
                        endorser: 300
                    orderer: 300 
                    
                    
wallet: networks/wallet
channels:
    mychannel:
        configBinary: networks/mychannel.tx
        created: true
        #definition:
            #capabilities: []
            #consortium: 'SampleConsortium'
            #msps: ['Org1MSP', 'Org2MSP']
            #version: 0
        orderers:
        - orderer.example.com
        peers:
            peer0.org1.example.com:
                eventSource: true
            peer0.org2.example.com:
                eventSource: true
            #peer1.org1.example.com:
                #eventSource: true
            #peer1.org2.example.com:
                #eventSource: true

        chaincodes:
        #- id: marbles
         # version: v0
          #language: node
          #path: src/fabric/naman/samples/marbles/node
          #metadataPath: src/fabric/naman/samples/marbles/node/metadata
        - id: fabcar_1
          version: "1.0"
          language: node
          path: src/fabric/samples/fabcar/javascript1

organizations:
    Org1:
        mspid: Org1MSP
        peers:
        - peer0.org1.example.com
        certificateAuthorities:
        - ca.org1.example.com
        adminPrivateKey:
            path: networks/fabric/naman/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/5f63f8056561fdd7e62566d62d3f3fddeff12836e3151ec160ef228df008e56b_sk
        signedCert:
            path: networks/fabric/naman/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/cert.pem

    Org2:
        mspid: Org2MSP
        peers:
        - peer0.org2.example.com
        #- peer1.org2.example.com
        certificateAuthorities:
        - ca.org2.example.com
        adminPrivateKey:
            path: networks/fabric/naman/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/fc78c38deead140e8164625a839c44966371fcb17608362c2c78a506670bd290_sk
        signedCert:
            path: networks/fabric/naman/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/cert.pem

orderers:
    orderer.example.com:
        url: grpcs://localhost:7050
        grpcOptions:
            ssl-target-name-override: orderer.example.com
        tlsCACerts:
            path: networks/fabric/naman/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
peers:
  peer0.org1.example.com:
    url: grpcs://localhost:7051
    tlsCACerts:
      pem: |
        -----BEGIN CERTIFICATE-----
        MIICJjCCAc2gAwIBAgIUOKOEL9yThPFiI22Rj2ehP2/8BpEwCgYIKoZIzj0EAwIw
        cDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH
        EwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh
        Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjAwNjMwMDcxNjAwWhcNMzUwNjI3MDcxNjAw
        WjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV
        BAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT
        Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABHeO
        KBmJfaW5TmEVYDJPFUuibx8O+ju3qhHIXFbCnfjz91WnoIUhQXxtfs2Ajyr2ywWk
        N9T15plIKgGBe5YZB6+jRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG
        AQH/AgEBMB0GA1UdDgQWBBQYlGorkJ3HFJu/uGPNy753+gbMmDAKBggqhkjOPQQD
        AgNHADBEAiAe2nP1fUp4UtqMqVEyd9yzMPNbMBjVA3pFtsw5AThu6AIgPF30jUUm
        Ey2vOMKY6mmfZalsJIcyp6ysxPfDaMnq09I=
        -----END CERTIFICATE-----
        
    grpcOptions:
      ssl-target-name-override: peer0.org1.example.com
      hostnameOverride: peer0.org1.example.com
      
  peer0.org2.example.com:
    url: grpcs://localhost:9051
    tlsCACerts:
      pem: |
        -----BEGIN CERTIFICATE-----
        MIICHzCCAcWgAwIBAgIUGyDeO2bl0XWI29+/h+MNiybkdaowCgYIKoZIzj0EAwIw
        bDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy
        c2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn
        Mi5leGFtcGxlLmNvbTAeFw0yMDA2MzAwNzE2MDBaFw0zNTA2MjcwNzE2MDBaMGwx
        CzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs
        ZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu
        ZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQlkzwJM7JneAQo
        VVrvGGJSzhIryum1oXjNEx01rlc0IawgRzMZdeD10kPIFc0xnTyfCwIJCoVNnS/B
        cCuU/WvFo0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd
        BgNVHQ4EFgQUG68pu74VjkUe6MxLutjnBKC0VvowCgYIKoZIzj0EAwIDSAAwRQIh
        AKH17YHSHWrGSbwHMNt7TtnQo/IpKyr2P10jHKIVgEoKAiBNic1oFFzyO/xV74ju
        8Al0TaGFj222ThdzyT3JrZyGqw==
        -----END CERTIFICATE-----
        
    grpcOptions:
      ssl-target-name-override: peer0.org2.example.com
      hostnameOverride: peer0.org2.example.com

certificateAuthorities:
  ca.org1.example.com:
    url: https://localhost:7054
    caName: ca-org1
    tlsCACerts:
      pem: |
        -----BEGIN CERTIFICATE-----
        MIICJjCCAc2gAwIBAgIUOKOEL9yThPFiI22Rj2ehP2/8BpEwCgYIKoZIzj0EAwIw
        cDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMQ8wDQYDVQQH
        EwZEdXJoYW0xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh
        Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjAwNjMwMDcxNjAwWhcNMzUwNjI3MDcxNjAw
        WjBwMQswCQYDVQQGEwJVUzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExDzANBgNV
        BAcTBkR1cmhhbTEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMT
        Y2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABHeO
        KBmJfaW5TmEVYDJPFUuibx8O+ju3qhHIXFbCnfjz91WnoIUhQXxtfs2Ajyr2ywWk
        N9T15plIKgGBe5YZB6+jRTBDMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAG
        AQH/AgEBMB0GA1UdDgQWBBQYlGorkJ3HFJu/uGPNy753+gbMmDAKBggqhkjOPQQD
        AgNHADBEAiAe2nP1fUp4UtqMqVEyd9yzMPNbMBjVA3pFtsw5AThu6AIgPF30jUUm
        Ey2vOMKY6mmfZalsJIcyp6ysxPfDaMnq09I=
        -----END CERTIFICATE-----
        
    httpOptions:
      verify: false
    registrar:
      - enrollId: admin
        enrollSecret: adminpw
      
  ca.org2.example.com:
    url: https://localhost:8054
    caName: ca-org2
    tlsCACerts:
      pem: |
        -----BEGIN CERTIFICATE-----
        MIICHzCCAcWgAwIBAgIUGyDeO2bl0XWI29+/h+MNiybkdaowCgYIKoZIzj0EAwIw
        bDELMAkGA1UEBhMCVUsxEjAQBgNVBAgTCUhhbXBzaGlyZTEQMA4GA1UEBxMHSHVy
        c2xleTEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eub3Jn
        Mi5leGFtcGxlLmNvbTAeFw0yMDA2MzAwNzE2MDBaFw0zNTA2MjcwNzE2MDBaMGwx
        CzAJBgNVBAYTAlVLMRIwEAYDVQQIEwlIYW1wc2hpcmUxEDAOBgNVBAcTB0h1cnNs
        ZXkxGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2NhLm9yZzIu
        ZXhhbXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQlkzwJM7JneAQo
        VVrvGGJSzhIryum1oXjNEx01rlc0IawgRzMZdeD10kPIFc0xnTyfCwIJCoVNnS/B
        cCuU/WvFo0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAd
        BgNVHQ4EFgQUG68pu74VjkUe6MxLutjnBKC0VvowCgYIKoZIzj0EAwIDSAAwRQIh
        AKH17YHSHWrGSbwHMNt7TtnQo/IpKyr2P10jHKIVgEoKAiBNic1oFFzyO/xV74ju
        8Al0TaGFj222ThdzyT3JrZyGqw==
        -----END CERTIFICATE-----
        
    httpOptions:
      verify: false
    registrar:
      - enrollId: admin
        enrollSecret: adminpw   

这是使用的基准配置文件:

---
test:
  workers:
    type: local
    number: 1
  rounds:
  - label: Query all cars.
    txDuration: 30
    rateControl:
      type: fixed-backlog
      opts:
        unfinished_per_client: 5
    arguments:
      assets: 10 
      startKey: '1'
      endKey: '50'
    callback: benchmarks/samples/fabric/fabcar/queryAllCars.js
  - label: Query a car.
    txDuration: 30
    rateControl:
      type: fixed-backlog
      opts:
        unfinished_per_client: 5
    arguments:
      assets: 10 
    callback: benchmarks/samples/fabric/fabcar/queryCar.js
  - label: Create a car.
    txDuration: 30
    rateControl:
      type: fixed-backlog
      opts:
        unfinished_per_client: 5
    callback: benchmarks/samples/fabric/fabcar/createCar.js
monitor:
  type:
  - docker
  docker:
    name:
    - all
  interval: 1 

这是我得到的错误:

aliper | 2020-06-26T14:15:31.749Z - error: [FabricCAClientService.js]: Failed to enroll admin, error:%o message=Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054], stack=Error: Calling enrollment endpoint failed with error [Error: connect ECONNREFUSED 127.0.0.1:7054]
caliper | at ClientRequest.request.on (/home/node/.npm-global/lib/node_modules/fabric-ca-client/lib/FabricCAClient.js:484:12)
caliper | at ClientRequest.emit (events.js:198:13)
caliper | at TLSSocket.socketErrorListener (_http_client.js:392:9)
caliper | at TLSSocket.emit (events.js:198:13)
caliper | at emitErrorNT (internal/streams/destroy.js:91:8)
caliper | at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
caliper | at process._tickCallback (internal/process/next_tick.js:63:19)

我使用的是面料 2.1.0 和卡尺 0.3.2。我在 docker-compose 中指定了 net-test 以确保 caliper 容器与 Fabric 在同一个网络中。有人可以帮忙吗?

4

0 回答 0