hyperledger - 如何部署具有多个验证器的超级账本锯齿网络?
问题描述
我正在尝试配置一个至少有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 \
\""
解决方案
您正在使用 Sawtooth 1.1(未发布的“夜间”版本)和已发布的 Sawtooth 1.0 软件(已发布的“最新”版本)。您有 2 个选择:
遵循 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
在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 并且不可用。)
重要的一点是使用与您安装的版本相匹配的文档。对困惑感到抱歉。
推荐阅读
- elasticsearch - 我可以在不指定路由键的情况下批量删除文档吗?
- javascript - Angular - 如何优化我的代码以缩短加载时间?当前加载时间为 2.45 秒
- spring-boot - Spring Boot 应用程序作为另一个 gradle 项目中的依赖项
- javascript - 通过 websocket 渲染 DASH 组件
- excel - 如何将多维表从一个函数调用到另一个函数
- css - CSS 网格跨列
- powershell - 删除具有空特定子文件夹的父文件夹
- pascal - 有没有办法确定对对象过程的引用是否对应于 Pascal 中的对象实例?
- python - 烧瓶应用程序中的多个静态文件夹和模板文件夹
- azure-logic-apps - 逻辑应用程序 - 如何将跟踪的属性 guid 保存为字符串?