BigchainDB集群配置问题

2022-04-14 00:00:00 文件 节点 配置 异常 情况

BigchainDB 集群配置所遇问题
tendermint状态异常
异常情况一:数据库资源暂不可用  

异常情况二

异常情况三
异常情况四
tendermint状态异常
查看tendermint、bigchaindb等程序的运行情况:
monit status
#或 monit summary

重启程序
monit restart all
monit -d 1
#或:
#monit stop all
#monit start all

若tendermint一直处于初始化状态,可命令行查看警告:
tendermint replay
#或 tendermint replay_console

异常情况一:数据库资源暂不可用
若警告为数据库资源暂时不可用,则可能为机器之前的节点数据为删除干净,我们需要刷新该节点。参考网址
#删除MongoDB中的bigchain数据库(仅当MongoDB在运行时可执行)
bigchaindb drop

#重置Tendermint
tendermint unsafe_reset_all
sudo rm -rf .tendermint/

刷新节点后再重新配置网络 参考网址

tendermint init

修改作为协调器节点的gensis.json文件,并将其复制给网络中的所有节点。
($HOME/.tendermint/config/genesis.json)
  
tips:

genesis.json文件中 chain_id 及 genesis_time 被用于识别网络
validators 记录着网络中所有节点的信息,其中:
type值相同
value为各节点的公钥地址
name为各节点的节点名(与config.toml文件中的moniker所对应)
修改各节点的config.toml文件
($HOME/.tendermint/config/config.toml)
  
异常情况二
使用同一台机器创建虚拟机配置集群时出现:

Error initializing DB: stat {路径}: permission denied

猜测为端口冲突,可尝试在配置时修改端口。

异常情况三
集群配置成功后,重启程序(monit restart all)时tendermint异常

monit stop all

找到进程中的tendermint,并将其杀死

ps -A
kill ***(进程序号)

重新启动程序

monit start all

查看各程序状态确认是否成功。

异常情况四
问题:
集群配置成功后,节点间并没有达成共识,且查看.tendermint/config/priv_validator.json文件后,发现区块高度并非从0开始

  
解决方案:
修改config.toml文件中的配置:

addr_book_strict = false

参考网址

tips:
查看链中的节点数

curl -s localhost:26657/net_info
————————————————
版权声明:本文为CSDN博主「Lekquen」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44057343/article/details/87856705

相关文章