锯齿验证器中需要备份(分类帐)的文件是什么

Jas*_*yam 1 blockchain hyperledger hyperledger-sawtooth

  • 从旧锯齿网络中的旧数据编排新网络所需的主要文件集是什么(我不想扩展旧锯齿网络)。

我想从分类账的最后一块备份对网络操作至关重要的基本文件。

  • 我有在锯齿验证器中生成的文件列表,并带有诗人的意思:
    • 块-00.lmdb
    • 诗人键状态-0371cbed.lmdb
    • 块00.lmdb锁
    • poet_consensus_state-020a4912.lmdb
    • 区块链ID
    • poet_consensus_state-020a4912.lmdb-lock
    • merkle-00.lmdb
    • poet_consensus_state-0371cbed.lmdb
    • merkle-00.lmdb锁定
    • txn_receipts-00.lmdb
    • 诗人键状态020a4912.lmdb
    • txn_receipts-00.lmdb锁定
    • 诗人钥匙状态020a4912.lmdb锁
  • 重新启动网络或使用分类帐中的旧数据创建新网络时,如果不包括每个文件的意义以及后果如何?

Aru*_*run 5

这个问题的答案可能会肿,我将在此处讨论大部分问题,以使有此问题的人们受益,尤其是当他们想通过Kubernetes部署网络时,这将有所帮助。同样,在RocketChat官方频道也经常问类似的问题。

验证器和PoET的基本文件集默认情况下存储在/etc/sawtooth(键和配置目录)和/var/lib/sawtooth(数据目录)目录中,除非更改。为此创建一个安装的卷,以便在编排新实例时可以重用它们。

这是可以通过其更改默认验证器路径的文件https://github.com/hyperledger/sawtooth-core/blob/master/validator/packaging/path.toml.example

请注意,您错过了问题中基本文件列表中的键,并且在网络中起着重要的作用。如果是PoET,则每个飞地的注册信息都将根据验证者的公钥存储在验证者注册表中。如果是Raft / PBFT,共识引擎将使用密钥(成员列表信息)来发送对等消息。

如果是Raft,则数据目录为/var/lib/sawtooth-raft-engine

对于大多数人来说,列出的每个文件的重要性可能并不重要。但是,这里有重要的解释

  • *-lock您看到的文件是系统生成的。如果看到这些,则其中一个过程必须已打开文件以进行写入。
  • block-00.lmdb它是块存储/块链,具有KV对block-id来块信息。也可以通过其他键索引块。Hyperledger Sawtooth文档是了解完整详细信息的正确位置。
  • merkle-00.lmdb是存储状态根哈希/全局状态。它是KV对中的Merkle树表示形式。
  • txn-receipts-00.lmdb文件是成功执行时存储事务执行状态的位置。它还具有有关事件的信息(如果有)与那些事务相关联。