一 、环境准备

  1. 四台安装好linux的物理机或虚拟机,本人是centos6.5,版本老了,但golang对操作系统版本要求不高
  2. 按上篇安装配置Tendermint分别在四台设备上安装好Tendermint
  3.  给每台主机起个名字,如果主机名是localhost,tendermint无法启动

 二、创建节点配置文件

1.在其中一台主机上的root目录下执行如下命令

tendermint testnet

执行后会,会在当前命令下产生如下配置文件

2.拷贝mytestnet目录到其他三台设备的/root下

scp -r root@192.168.172.221:/root/mytestnet .

3.记录每台设备的id,注意是show-node-id 不少下划线

tendermint show-node-id --home ./mytestnet/node0
tendermint show-node-id --home ./mytestnet/node1
tendermint show-node-id --home ./mytestnet/node2
tendermint show-node-id --home ./mytestnet/node3

4.生成如下的执行脚本,注意不要把自己所在主机的节点加入到--p2p参数后,在不少文章都是配置的四个节点,就写另外三台就行,分别在每台上执行一条命令,三台启动后 就可以正常工作了,3f+1拜占庭算法

tendermint start --home ./mytestnet/node0 --proxy-app=kvstore --p2p.persistent-peers="dd4a3e1fcf7cb675e7581eb99047aa2409572851@192.168.172.227:26656,bec0cbb8023dd7db7ac9d6a0f22f6dba2a3fb975@192.168.172.228:26656,5a0074f3e46121a6a327e362cf0ffc027dd99b49@192.168.172.229:26656"
tendermint start --home ./mytestnet/node1 --proxy-app=kvstore --p2p.persistent-peers="9b5c3825e0a44dd987e107f60c0e01f5e5e7cddd@192.168.172.221:26656,bec0cbb8023dd7db7ac9d6a0f22f6dba2a3fb975@192.168.172.228:26656,5a0074f3e46121a6a327e362cf0ffc027dd99b49@192.168.172.229:26656"
tendermint start --home ./mytestnet/node2 --proxy-app=kvstore --p2p.persistent-peers="9b5c3825e0a44dd987e107f60c0e01f5e5e7cddd@192.168.172.221:26656,dd4a3e1fcf7cb675e7581eb99047aa2409572851@192.168.172.227:26656,5a0074f3e46121a6a327e362cf0ffc027dd99b49@192.168.172.229:26656"
tendermint start --home ./mytestnet/node3 --proxy-app=kvstore --p2p.persistent-peers="9b5c3825e0a44dd987e107f60c0e01f5e5e7cddd@192.168.172.221:26656,dd4a3e1fcf7cb675e7581eb99047aa2409572851@192.168.172.227:26656,bec0cbb8023dd7db7ac9d6a0f22f6dba2a3fb975@192.168.172.228:26656"

5.测试交易:启动成功后,kvstore就开始交易了,高度会不断的变化。此时,自己可以模拟一个交易,在每台上都能查询到,

curl -s 'localhost:26657/broadcast_tx_commit?tx="abcd"'

curl -s 'localhost:26657/abci_query?data="abcd"'

三、区块链浏览器查看(Tendermint-explorer)

关于区块链浏览器的编译执行后续的文章会有

1.需修改每台设备的$TMHOME/config/config.toml,为了可以远程rpc访问,内容如下图

 2.修改后重新启动即可

3.打开浏览器访问Tendermint-explorer的后台,通过后台的REST rpc访问区块链节点,查询结果如下

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐