首页 > 解决方案 > 如何部署具有多个验证器的超级账本锯齿网络?

问题描述

我正在尝试配置一个至少有2 个验证器和一些事务处理器的锯齿网络。我使用的是 Ubuntu 18.04,所以唯一可能的解决方案是使用 docker。

我一整天都在寻找一个工作示例,但仍然没有运气。官方网站上有一个示例here,但不起作用。docker 镜像版本是 1.1,这很奇怪,因为 docker hub 上没有这样的版本。此外,它需要一个在任何地方都不存在的图像(hyperledger/sawtooth-poet-engine)。

我知道主验证器应该生成密钥和创世块,而其他验证器应该使用这些工件。但是第二个验证器的正确配置是什么?它如何从第一个验证器读取生成的工件?

谢谢!

这是第一个验证器的配置:

validator-0:
  image: hyperledger/sawtooth-validator:1.0
  container_name: sawtooth-validator-default-0
  expose:
    - 4004
  ports:
    - "4004:4004"
  entrypoint: "bash -c \"\
      sawadm keygen && \
      sawtooth keygen my_key && \
      sawset genesis -k /root/.sawtooth/keys/my_key.priv && \
      sawadm genesis config-genesis.batch && \
      sawtooth-validator -vv \
        --endpoint tcp://validator:8800 \
        --bind component:tcp://eth0:4004 \
        --bind network:tcp://eth0:8800 \
      \""

标签: hyperledgerhyperledger-sawtooth

解决方案


您正在使用 Sawtooth 1.1(未发布的“夜间”版本)和已发布的 Sawtooth 1.0 软件(已发布的“最新”版本)。您有 2 个选择:

  1. 遵循 Sawooth 1.0 文档并使用 1.0 .yaml 文件,例如https://sawtooth.hyperledger.org/docs/core/releases/latest/app_developers_guide/docker.html#https://sawtooth.hyperledger.org/docs /core/releases/latest/app_developers_guide/sawtooth-default.yaml

  2. 在https://sawtooth.hyperledger.org/docs/core/releases/latest/sysadmin_guide/installation.html升级到“前沿”未发布的 Sawtooth 1.1 软件, 即您使用此密钥和存储库:( $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 44FC67F19B2466EA $ sudo apt-add-repository "deb http://repo.sawtooth.me/ubuntu/nightly xenial universe" 注意:选项 2还不能工作,因为未发布的 Sawtooth 1.1 映像尚未上传到 Docker 并且不可用。)

重要的一点是使用与您安装的版本相匹配的文档。对困惑感到抱歉。


推荐阅读