服务简介
lotus lotus-miner lotus-worker
先简单说明下需要搭建的几个服务
一共三个服务
lotus
是节点,负责链消息同步、钱包管理、交易等,默认启动端口1234
lotus-miner
是矿工,负责任务分发、管理、扇区存储等,默认启动端口2345
lotus-worker
是工人,说白了就是负责干活的,封装扇区,worker分为两种,一种是干addpiece和precommit1,另外一种干precommit2以及后面的工作,具体说明看任务步骤,默认启动端口3456
服务之间的链接
lotus-miner连接lotus 节点的api
lotus-worker连接lotus-miner的api
密封任务说明
官方给的密封任务分五个阶段,addpiece precommit1 precommit2 commit unseal
在这里,我们将它分两种 一种是使用CPU的(addpiece precommit1 precommit2),一种是可以不使用CPU(commit)
所以一种worker干addpiece precommit1 precommit2,另外一种worker干 commit
详情看这里
在启动worker 容器是 在lotus-worker run 后面加参数 --addpiece=false 表示不做addpiece任务,其他参数以此类推
密封业务流程
UndefinedSectorState (start)v |
*<- WaitDeals <-> AddPiece |
| | /--------------------/
| v v
*<- Packing <- incoming committed capacity
| |
| v
| GetTicket
| | ^
| v |
*<- PreCommit1 <--> SealPreCommit1Failed
| | ^ ^^
| | *----------++----\
| v v || |
*<- PreCommit2 --------++--> SealPreCommit2Failed
| | ||
| v /-------/|
* PreCommitting <-----+---> PreCommitFailed
| | | ^
| v | |
*<- WaitSeed -----------+-----/
| ||| ^ |
| ||| \--------*-----/
| ||| |
| vvv v----+----> ComputeProofFailed
*<- Committing |
| | ^--> CommitFailed
| v ^| SubmitCommit || | || v |
*<- CommitWait ---/
| |
| v
| FinalizeSector <--> FinalizeFailed
| |
| v
*<- Proving
|
v
FailedUnrecoverable