BigchainDB集群配置问题
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
相关文章