Сравнительный анализ с помощью штангенциркуля Hyperledger в развернутой на нескольких хостах сети Hyperledger Fabric v1.4.1 с консенсусом по плоту - PullRequest
1 голос
/ 18 мая 2019

Моя фабричная сеть Hyperledger развернута в частной сети на 4 серверах. У каждого сервера есть один участник и один заказчик. Сеть запущена и работает, и я хочу сделать бенчмаркинг с помощью суппорта hyperledger в работающей сети TLS включен в сети, и я дал абсолютный путь везде.

Я изменил URL-адреса вместе с URL-адресами серверов в бенчмарке и файле сетевой конфигурации суппорта. Я не хочу создавать какой-либо канал или регистрировать любого администратора или устанавливать цепной код, потому что я уже сделал все эти шаги. Как отсюда сделать бенчмаркинг?

  1. Мой файл config.yaml выглядит следующим образом:
---
test:
  name: drm
  description: Benchmark for DRM scenario
  clients:
    type: local
    number: 1
  rounds:
  - label: publish
    txNumber:
    - 10
    arguments:
      itemBytes: 2048000
    rateControl:
    - type: fixed-rate
      opts:
        tps: 1
    callback: benchmark/drm/publish.js
  - label: query
    txNumber:
    - 10
    rateControl:
    - type: fixed-rate
      opts:
        tps: 1
    callback: benchmark/drm/query.js
monitor:
  type: docker
  docker:
    name:
    - http://172.28.27.54:7053/peer0.org0.example.com
    - http://172.24.144.39:7053/peer0.org1.example.com
    - http://172.27.27.175:7053/peer0.org2.example.com
    - http://172.27.28.58:7053/peer0.org3.example.com
    - http://172.28.27.54:7050/orderer0.example.com
    - http://172.24.144.39:7050/orderer1.example.com
    - http://172.27.27.175:7050/orderer2.example.com
    - http://172.27.28.58:7050/orderer3.example.com
  interval: 1
  1. Мой fabric-go-tls.json выглядит следующим образом:
{
  "caliper": {
    "blockchain": "fabric",
    "command" : {
      "start": "echo 'start' ",
      "end" : "echo 'stop'"
    }
  },
  "fabric": {
    "cryptodir": "/home/devk/hl-demo/artifacts/crypto-config",
    "network": {
      "orderer": {
        "url": "grpcs://172.28.57.54:7050",
        "mspid": "ordererMSP",
        "msp": "/home/devk/hl-demo/artifacts/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/",
        "server-hostname": "orderer.example.com",
        "tls_cacerts": "/home/devk/hl-demo/artifacts/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt"
      },
      "org0": {
        "name": "org0",
        "mspid": "org0MSP",
        "msp": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org0.example.com/msp/",
        "ca": {
          "url": "https://172.28.57.54:7054",
          "name": "ca.org0.example.com"
        },
        "peer1": {
          "requests": "grpcs://172.28.57.54:7051",
          "events": "grpcs://172.28.57.54:7053",
          "server-hostname": "peer0.org0.example.com",
          "tls_cacerts": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org0.example.com/peers/peer0.org0.example.com/tls/ca.crt"
        }
      },
      "org1": {
        "name": "org2",
        "mspid": "org2MSP",
        "msp": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org1.example.com/msp/",
        "ca": {
          "url": "https://172.24.144.39:7054",
          "name": "ca.org1.example.com"
        },
        "peer1": {
          "requests": "grpcs://172.24.144.39:7051",
          "events": "grpcs://172.24.144.39:7053",
          "server-hostname": "peer0.org1.example.com",
          "tls_cacerts": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt"
        }
      },
      "org2": {
        "name": "org2",
        "mspid": "org2MSP",
        "msp": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org2.example.com/msp/",
        "ca": {
          "url": "https://172.27.27.175:7054",
          "name": "ca.org2.example.com"
        },
        "peer1": {
          "requests": "grpcs://172.27.27.175:7051",
          "events": "grpcs://172.27.27.175:7053",
          "server-hostname": "peer0.org2.example.com",
          "tls_cacerts": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt"
        }
      },
    "org3": {
        "name": "org3",
        "mspid": "org3MSP",
        "msp": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org3.example.com/msp/",
        "ca": {
          "url": "https://172.27.28.58:7054",
          "name": "ca.org3.example.com"
        },
        "peer1": {
          "requests": "grpcs://172.27.28.58:7051",
          "events": "grpcs://172.27.28.58:7053",
          "server-hostname": "peer0.org3.example.com",
          "tls_cacerts": "/home/devk/hl-demo/artifacts/crypto-config/peerOrganizations/org3.example.com/peers/peer0.org3.example.com/tls/ca.crt"
        }
      }
    },
    "channel": [
      {
        "name": "common",
        "deployed": false,
        "config": "/home/devk/hl-demo/artifacts/channel/common.tx",
        "organizations": ["org0", "org1", "org2", "org3"]
      }
    ],
    "chaincodes": [
      {"id": "drm", "path": "contract/fabric/drm", "language":"golang", "version": "v0", "channel": "common"}
    ],
    "endorsement-policy": {
      "identities": [
        {
          "role": {
            "name": "admin",
            "mspId": "org0MSP"
          }
        },
        {
          "role": {
            "name": "member",
            "mspId": "org2MSP"
          }
        },
        {
          "role": {
            "name": "member",
            "mspId": "org2MSP"
          }
        },
        {
          "role": {
            "name": "member",
            "mspId": "org3MSP"
          }
        }
      ],
      "policy": { "4-of": [{"signed-by": 0}, {"signed-by": 1}, {"signed-by": 2}, {"signed-by": 3}]}
    },
    "context": {
      "query": "common"
    }
  },
  "info" : {
    "Version": "1.4.1",
    "Size": "4 Orgs with 1 Peer",
    "Orderer": "etcdraft",
    "Distribution": "Single Host"
  }
}

Ожидается: просто запустите бенчмарк, не создавая канал, не устанавливая код цепи и не регистрируя администратора ...

Фактические результаты: останавливается на [create-channel.js].

 error: [FabricCAClientService.js]: Failed to enroll admin, error:%o message=Enrollment failed with errors [[{"code":19,"message":"CA 'ca.org0.example.com' does not exist"}]], stack=Error: Enrollment failed with errors [[{"code":19,"message":"CA 'ca.org0.example.com' does not exist"}]]

Но сеть просто работает нормально !! Может кто-нибудь объяснить мне, что я здесь делаю не так?

...