Filecoin搭建本地8M扇区多节点测试网络

  • Post author:
  • Post category:其他

官方文档里是2k的单节点测试网,搭建完毕后,发现运行实在是太快了,很多细节来不急看,所以思考了一下,找到一个搭建8M扇区多节测试网络的方法。不废话,开始:

设置环境变量

export CGO_CFLAGS_ALLOW=”-D__BLST_PORTABLE__”

export CGO_CFLAGS=”-D__BLST_PORTABLE__”

设置lotus和lotusminer的工作目录

export LOTUS_PATH=~/.lotusDevnetexport

LOTUS_MINER_PATH=~/.lotusminerDevnet

设置环境变量

export LOTUS_SKIP_GENESIS_CHECK=_yes_

修改官方代码:代码params_2k.go,这里修改成8M,8秒出块(可以按自己的需求修改,比如改成512M)

下载参数:计划建立8m扇区的测试网

./lotus fetch-params 8388608

预封装2个扇区

./lotus-seed pre-seal –sector-size 8388608 –num-sectors 2

创建创世纪块,并启动节点

./lotus-seed genesis new localnet.json

./lotus-seed genesis add-miner localnet.json ~/.genesis-sectors/pre-seal-t01000.json

./lotus daemon –lotus-make-genesis=devgen.car –genesis-template=localnet.json –bootstrap=false

(这里有一个Error,没有关系,不用处理)

去到另一个终端,导入创世纪块私钥

./lotus wallet import –as-default ~/.genesis-sectors/pre-seal-t01000.key

注册创世纪矿工

./lotus-miner init –genesis-miner –actor=t01000 –sector-size=8388608 –pre-sealed-sectors=~/.genesis-sectors –pre-sealed-metadata=~/.genesis-sectors/pre-seal-t01000.json –nosync

执行./lotus-miner run –nosync,开启本地网络

启动其他节点,加入本地网络

将创世节点的相关文件(devgen.car lotus lotus-miner lotus-worker)拷贝到需要加入网络的节点

scp devgen.car lotus lotus-miner lotus-worker gth@58.22.104.10:/mnt/sdedisk/xd/test_8M

在其他节点启动lotus daemon

./lotus daemon –genesis=devgen.car –bootstrap=false

(同样也会报一个错误,没有关系,不用理会)

手动将当前节点连接到创世节点

先在创世节点上使用lotus net listen查询监听的端口

再在当前节点使用lotus net connect 接入创世节点

完成后,可以使用lotus net peers查看连接情况,lotus sync status查看同步情况

创建钱包

lotus wallet new bls

从创世节点转一些token到钱包地址

查看是否收到token

初始化矿工

./lotus fetch-params 8388608 下载参数

owner和worker参数为上一步创建的钱包地址

./lotus-miner init –owner t3v3cxyunefnblckckfs72ki4b2inwriolec7ervpzudxywchnow7ajes2db45nzomfc64xgeyw642k7ziddsa –worker t3tcbfuapgq3idoxspjxvjqsygpayqzs6fgaxwnoafxfojbvhpkjyj6fqmkwvexopgftt4jzmijvomlcjc7aha

这里有点偷懒,没有带–no-local-storage参数,使用默认的storage配置,官方文档里推荐使用–no-local-storage。

获得矿工号后,执行./lotus-miner run –nosync,运行miner

查看矿工信息./lotus-miner info

执行lotus-miner sectors pledge提交能力

至此本地多节点测试环境已搭建完毕