Lotus-Miner初始化
一.环境变量配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# rustup 环境
# source "$HOME/.cargo/env"
# Go 环境变量
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
# Go 中国区加速
export GOPROXY=https://goproxy.cn
# 证明参数-中国区加快首次启动时的下载IPFS加速
export IPFS_GATEWAY=https://proof-parameters.s3.cn-south-1.jdcloud-oss.com/ipfs/
export FIL_PROOFS_PARAMETER_CACHE=/srv/cache/FIL_PROOFS_PARAMETER_CACHE
export FIL_PROOFS_PARENT_CACHE=/srv/cache/FIL_PROOFS_PARENT_CACHE
# 打开的文件限制并确保它至少设置为10000000
ulimit -n 1000000
export LOTUS_DISABLE_WATCHDOG=1
export TMPDIR=/srv/cache/seal # Used when sealing.临时文件夹路径,用于存放显卡锁定文件
# Lotus Daemon 配置
# export LOTUS_PATH=$HOME/.lotus # lotus daemon 路径
# Miner 配置
export LOTUS_MINER_PATH=$HOME/.lotusminer/ # lotus miner 路径
#export LOTUS_STORAGE_PATH=$HOME/.lotusminer #
# export BELLMAN_CUSTOM_GPU= # 指定GPU型号
#export FULLNODE_API_INFO=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJyZWFkIiwid3JpdGUiXX0:/ip4/127.0.0.1/tcp/1234/http
export RUST_LOG=Trace
# Work 配置
#export LOTUS_WORKER_PATH=/srv/data # Lotus worker 路径
#export BELLMAN_CPU_UTILIZATION=0.95 # CPU使用率
export FIL_PROOFS_USE_MULTICORE_SDR=1 # PreCommit1多CPU核心绑定
export FIL_PROOFS_MAXIMIZE_CACHING=1 # PreCommit1开启内存最大化
export FIL_PROOFS_USE_GPU_COLUMN_BUILDER=0 # 使用GUP计算Precommit2 COLUMN hash.
export FIL_PROOFS_USE_GPU_TREE_BUILDER=0 # GPU计算Precommit2 TREE hash.
# export BELLMAN_CUSTOM_GPU="GeForce RTX 2080 Ti:4352" # 指定Commit2的GPU型号
|
二.矿工初始化及启动
主网,如果旷工不想开启接单功能(接单会有很多坑,谨慎开启),单纯的挖矿(靠质押扇区增加算力,然后靠出块获取收益),则不需要配备 公网 IP 地址
。运行本地测试网也不需要有公网 IP 地址(包括本地测试网的接单功能)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
# 矿工初始化
# 32GiB/64GiB可自行配置
lotus-miner init --no-local-storage --owner=f3xxxxxxxxxxxxx --worker=f3xxxxxxxxxxx --sector-size=32GiB
# 启动矿工
nohup lotus-miner run > ~/log/lotus-miner.log 2>&1 &
# 查看消息池
lotus mpool pending --local
# 上次基础BaseFee费用
lotus chain head | xargs lotus chain getblock | jq -r .ParentBaseFee
# 修改消息池费用
lotus mpool replace --gas-feecap 1260548422 --gas-premium 200000000 f3vrv3krhk7ozfmiumj4jzlnijs55mpce5bvl5uoaojz7f5zpxecikehmcli7yvrjb6qpacqil6bv4smnbvpuq
# 清除消息池
lotus mpool clear --really-do-it
|
三.矿工状态查询及操作
增加算力的其中一个方式就是质押扇区(当然也可以通过接收订单来增加算力)
a. WaitSeed
表示该扇区正在等待链上的消息,准备让扇区的数据上链(PreCommitSector
的信息)
b. PreCommitSector
消息上链之后,miner
会继续做 C1
和 C2
,做完之后,还需要有另一条消息上链:ProveCommitSector
,这两条消息都上链之后(这两条消息都是需要收钱的,包括燃烧掉的 gas
费用和质押费用, 其中, gas
费用永久消耗,质押费用等扇区生命周期结束之后会退回),就可以看到该扇区的状态变成 Proving
了
c. 使用命令 lotus-miner sectors list
可以查看到该扇区的 OnChain
选项已经是 YES
了,但是它的 Active
选项依然还是 NO
,等 miner
做完一次 WindowsPoST
之后(需要向链上发送一条 SubmitWindowedPoSt
消息,目前该消息已经基本不收费了), Active
选项才会变成 YES
。
等了一段时间,所有消息都成功上链,可以看到 Active
状态变成 Yes
了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# 质押一个随机数据的扇区,开始密封
lotus-miner sectors pledge
# 查看旷工状态
lotus-miner info
# 查看扇区 ID,获取扇区列表
lotus-miner sectors list
# 查看具体的某个扇区的状态(示例中显示的是扇区 0 的状态)
# 一个分区中的最大扇区数为2349。这意味着您已在截止时间0到达了第一个分区的最大限制。现在它将开始在截止时间1填充该分区。
lotus-miner sectors status 0
# 查看 0 号扇区的详细日志信息
lotus-miner sectors status --log 0
# 删除扇区
lotus-miner sectors remove --really-do-it
# 查看Worker
lotus-miner sealing workers
# 查询当前集群的任务分配情况:
lotus-miner sealing jobs
#证明时间
lotus-miner proving deadlines
# 模拟证明区块状态
lotus-miner proving check 0
# 提交扇区所需时间
PC1 3h PC2 40M C1 C2 2h10M
1h20M 4h
25M 1h10M
|
四.创建Token,集群部署需要此配置
1
2
3
4
5
6
7
|
# 创建lotus-Token
~$ lotus auth create-token --perm admin
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJyZWFkIiwid3JpdGUiXX0.RKzJF7CVkFi4Ck3obwu0f7R62kqLKZcNk02ydtRgb3M
# 创建lotus-miner-Token
~$ lotus-miner auth create-token --perm admin
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBbGxvdyI6WyJyZWFkIiwid3JpdGUiLCJzaWduIiwiYWRtaW4iXX0.ZDESMziam3Fvue5pHmXeUTHbheEdpZO-oLvoFcRbZdM
|
1
2
3
4
5
|
# 根据需求更改配置Worker地址
~$ lotus-miner actor propose-change-worker --really-do-it f3rvkj4cvbdfft6dmgcn37br5mfnqbz4perixbphazkgcd5dukysskjbek6ypr7iviiqcaugxihtxib5chrrza
Propose Message CID: bafy2bzacecetwa3v4kyukdez6bcog33x7b5uzca4nzmvnid6tjfixvgwbc52c
Worker key change to f3rvkj4cvbdfft6dmgcn37br5mfnqbz4perixbphazkgcd5dukysskjbek6ypr7iviiqcaugxihtxib5chrrza successfully proposed.
Call 'confirm-change-worker' at or after height 691666 to complete.
|