【问题标题】:In Hyperledger Fabric, is there a way to reuse the data of previous network? [closed]在 Hyperledger Fabric 中,有没有办法重用之前网络的数据? [关闭]
【发布时间】:2021-03-25 05:11:35
【问题描述】:

如果所有peer都停止工作,如何保证数据不丢失?

谢谢!

【问题讨论】:

    标签: hyperledger-fabric blockchain hyperledger ibm-blockchain


    【解决方案1】:

    我已经通过测试验证了我的想法,但是 准确地说,应该叫网络恢复而不是重用,如果你有 genesis.block、channl.tx 和 peer 加密工件,以及 orderer 和 peer 的 /var/hyperledger/production,你可以恢复相同的网络,并且无需重新创建频道再加入频道,数据不会丢失。

    我已经将项目push到githubhttps://github.com/iamlzw/reuse-previous-network-data.git,你可以拉取它并测试,如果你启动这个网络,你不需要创建频道和加入频道等等,你可以查询或调用,如果你停止这个网络,你可以重新启动它,你会发现数据没有丢失,通过链码查询你会得到相同的结果。

    可以参考https://hyperledger-fabric.readthedocs.io/en/release-1.4/chaincode4ade.html#install-hyperledger-fabric-samples

    希望这些对你有帮助

    【讨论】:

    • genesis.block 和 channl.tx 是从 docker 复制的,还是您使用的是第一次创建的?我的意思是我们是否确保它具有最新的交易。我有点困惑。此外,还有 orderer.block,所以你是从 orderer 容器中复制它的,对吧?谢谢!
    • genesisi.block(orderer.block) 和 channel.tx 在生成之前生成。orderer.block 与 genesis.block 相同,您可以在 docker-compose-simple.yaml 中看到它用于 genesis。块,channel.tx 现在没用了,因为你之前已经创建了 channel。它们不是从 orderer 容器复制的,orderer 和 peer 目录是从容器复制的。
    • 好的,谢谢。在您的仓库中,“./msp”文件夹对应于 orderer 或 org?
    • orderer和peer使用同一个msp,你可以看看docker-compose-simple.yaml
    • 是的,在您的情况下它们是相同的。但是,如果看看这个(github.com/hyperledger/fabric-samples/blob/main/test-network/…),这里有单独的 msp 用于 peer 和 orderer。
    猜你喜欢
    • 2021-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-28
    • 1970-01-01
    相关资源
    最近更新 更多