本页讨论了在链遇到问题时验证者和节点运营者需要采取的操作
This page discusses operations that validators and node operators will need to take if the chain runs into issues
创建备份 (Creating backups)
There are 3 things should always backup when trying to recover your node. Failure to do any of these may result in your keys being permanently lost or your validator double signing and kicked out.
尝试恢复节点时,应始终备份3样东西。否则都可能导致您密钥永久丢失或您验证者双重签名然后被踢出。
$HOME/.sei/data/priv_validator_state.json - this file keeps track of what round of consensus you are voting on. When using someone else's snapshot, not replacing this results in double signing / tombstoning. You can run
$HOME/.sei/data/priv_validator_state.json -这个文件记录了你投票的共识轮数。使用其他人的快照时,不替换它会导致双重签名/逻辑删除。你可以运行:
cp $HOME/.sei/data/priv_validator_state.json $HOME/.sei
cat $HOME/.sei/data/priv_validator_state.json -> Save to Lastpass, password manager...etc.
$HOME/.sei/config/priv_validator_key.json- this file contains the private key that your validator signs blocks with. If you lose this, it becomes more difficult to recover a halted chain since we lose your voting power permanently
$HOME/.sei/config/priv_validator_key.json- 此文件包含您验证者用来签署区块的私钥。如果您不幸丢失,恢复停止的链会变得更加困难,因为我们会永久失去你的投票权
cp $HOME/.sei/config/priv_validator_key.json $HOME/.sei
cat $HOME/.sei/data/priv_validator_skey.json -> Save to Lastpass, password manager...etc.
Any keys. Anything in seid keys list should be saved (both the mnemonic and the key). Failure to save this may result in losing your funds
任何秘钥。 seid keys list 中的任何内容都应保存(助记符和密钥)。未保存可能会导致您的资金损失
seid keys add $NAME -> Save output to Lastpass, password manager...etc.
seid keys export $NAME -> Save output to Lastpass, password manager...etc.
状态同步 (State Sync)
You can use state sync to resolve corrupt data issues that you may have run into if you used the wrong seid version when starting the chain. Instructions for State Sync can be found here.
When state sync is not working or there are no available state sync providers, you'll need to recover from a file-based snapshot that is provided. However, caution must be taken as to not lose any of the files that should have been already backed up.
Below, we detail various open issues the team has encountered and how we can work around them.
下面,我们会详细介绍团队遇到的各种未解决问题以及我们如何解决这些问题。
Wasm CPU 架构问题 (Wasm CPU architecture issue)
This issue arises when you try to use a $HOME/wasm/ directory that was generated by a machine with a different architecture. An example of a log you will see is:
In these cases, you will need to restore using someone else's data and then continuing to run your chain with the correct seid version
在这些情况下,您将需要使用其他人的数据进行恢复,然后继续使用正确的 seid 版本运行您的链
在共识回合/轮次中落后 (Falling behind in consensus rounds)
If the chain is halted for a prolonged amount of time, we have encountered issues where some validators may end up falling behind in consensus rounds. I.e.
如果链长时间停止,我们会遇到一些验证者可能最终在共识轮次中落后的问题。比如:
This differs from what other validators are seeing. Please work with a member on the Sei team to figure out the right consensus round. Next, please change the following configs to 5ms
这与其他验证者看到的不同。请与 Sei 团队的成员一起找出正确的共识轮次。接下来,请将以下配置更改为 5ms
Once this is done, restart seid, monitor the consensus round until it's about 1 round ahead of what everyone else is on, then change the values back to 500ms
sudo systemctl stop seid
# BACKUP ~/.sei/config/priv_validator_key.json
cp $HOME/.sei/data/priv_validator_state.json $HOME/.sei
seid tendermint unsafe-reset-all --keep-addr-book --home $HOME/.sei
### untar the backup into the sei folder (NOTE: this will vary depending on who provides the snapshot)###
tar -xzf atlantic-sub1-data-backup.tar.gz --directory $HOME/.sei
rm $HOME/.sei/data/priv_validator_state.json
cp $HOME/.sei/priv_validator_state.json $HOME/.sei/data
sudo systemctl start seid
rm $HOME/.sei/priv_validator_state.json