filecoin lotus 测试网络挖矿

1. 软硬件配置

  • 8核/128G内存/2个1.7T本地ssd硬盘/无显卡/20M带宽(阿里云ecs.i2.4xlarge)
  • ubuntu1804

注:官方推荐使用RTX2080、GTX1080以上的显卡

2. 编译安装

2.1 更新升级系统软件

apt update
apt-get upgrade -y

2.2 安装构建依赖

 apt-get install software-properties-common -y
 add-apt-repository ppa:longsleep/golang-backports
 apt install golang-go build-essential manpages-dev git bzr jq   pkg-config ocl-icd-*  mesa-opencl-icd   opencl-headers  -y

2.3 安装rustup (proofs build)

curl https://sh.rustup.rs -sSf | sh
source $HOME/.cargo/env
rustup

2.4 安装lvm、clang (proofs build)

echo "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main" >> /etc/apt/sources.list
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - 
apt update
apt-get install clang-7 lldb-7 lld-7 
apt install llvm-runtime
clang-7 --version

2.5 下载源码,开始编译安装

export GO111MODULE=on
export GOPROXY=https://goproxy.io

git clone https://github.com/filecoin-project/lotus.git
cd lotus/
make clean && make all &&make install

3. 创建工作目录、设置环境变量

3.1 挂载磁盘及创建目录

## 数据挂载目录
mkdir /data
## 提前分好区(略过),推荐使用lvm,后面可扩容
mount  /dev/vdXX /data
##存储矿工工作目录
mkdir -p /data/lotuswork/lotusstorage
##全节点lotus deamon工作目录
mkdir -p /data/lotuswork/lotus
##矿工远程工作节点工作目录
mkdir -p /data/lotuswork/lotusworker
## 复制证明参数目录
mkdir -p /data/filecoin-proof-parameters-v20
mkdir -p /data/lotuswork/tmpdir

3.2 设置系统环境变量

vim ~/.bashrc
export LOTUS_PATH=/data/lotuswork/lotus
export LOTUS_STORAGE_PATH=/data/lotuswork/lotusstorage
export WORKER_PATH=/data/lotuswork/lotusworker
export FIL_PROOFS_PARAMETER_CACHE=/data/filecoin-proof-parameters-v20
export TMPDIR=/data/lotuswork/tmpdir
source ~/.bashrc
echo $LOTUS_STORAGE_PATH

4 启动全节点、创建钱包和矿工

4.1 启动全节点守护进程

nohup lotus daemon >> /data/lotus.log 2>&1 &

4.2 查看peer状态及区块同步状态

很耗时,需要几个小时

lotus net peers
lotus sync status
lotus sync wait

查看测试链最新状态(区块高度等):https://stats.testnet.filecoin.io/

4.3 创建钱包地址

lotus wallet new bls
lotus wallet list

4.4 领取测试币

点击[Send Funds],复制钱包地址

4.5 创建矿工地址

点击[Create Miner],复制钱包地址,点击创建后,需要等待几分钟

wallet adress:t3vfa6hi2oiut3ev7c6iar2qtvpodyqeiusvsk4bdxj4w57rx53egobngw3bp5pyvx6jim7gmfdqkexmmcbiua

Gas Funds:   bafy2bzacednewasxqz5ncds2umpjj72rqkwekl2kxrmwkicb75qhh3gkicvn6 - OK
Miner Actor: bafy2bzaceczbeynliazu45vjnvzjwiuzwtvc3lmmwfalsg2b7iqwqzpxihdpa - OK
New storage miners address is: t021449

4.6 查看账户余额

lotus wallet balance t021449
lotus wallet balance  t3vfa6hi2oiut3ev7c6iar2qtvpodyqeiusvsk4bdxj4w57rx53egobngw3bp5pyvx6jim7gmfdqkexmmcbiua

4.7 查看抵押代币

查看创建一个矿工需要的抵押数量,不用担心创建矿工的时候官方已经给你了

lotus state pledge-collateral

5. 开始挖矿

5.1 下载Filecoin证明参数

注: 约60GB数据,耗时较长

  • 使用lotus命令下载
IPFS_GATEWAY="https://proof-parameters.s3.cn-south-1.jdcloud-oss.com/ipfs/" lotus fetch-params --proving-params 32GiB &
  • 使用wget下载
    这里从京东云节点下载,下载后,解压到/data/filecoin-proof-parameters-v20,推荐使用wget下载,因为参数文件有十多个,压缩过,体积要小,比从ipfs下载快。
wget https://s3.cn-south-1.jdcloud-oss.com/proof-parameters/filecoin-proof-parameters-v20-testnet.tar.gz

5.2 初始化存储矿工

lotus-storage-miner init --actor=t021449 --owner=t3vfa6hi2oiut3ev7c6iar2qtvpodyqeiusvsk4bdxj4w57rx53egobngw3bp5pyvx6jim7gmfdqkexmmcbiua

5.3 启动存储矿工

nohup lotus-storage-miner run  >/data/miner.log 2>&1 &

5.4 启动远程工作矿工

待存储矿工启动成功后,再启动远程工作矿工

nohup lotus-seal-worker run >/data/work.log 2>&1 &

远程工作矿工主要分担存储矿工的密封压力,当然这件事存储矿工也可以做。
这里存储矿工和远程矿工在同一个节点,如果远程矿工在另外一个节点,启动远程节点时需要配置STORAGE_API_INFO=token:TOKEN:STORAGE_NODE_MULTIADDR,以便和存储矿工通信,组件工作集群。
TOKEN创建lotus auth create -perm admin

5.5 创建扇区及自动挖矿

扇区序号从1开始,以当前的配置密封完一个扇区(32G)大概需要12个小时,配置低的话更慢,密封完后再执行一遍就会开始密封第二个扇区,一共需要密封512G数据,才会显示算力(Power)

lotus-storage-miner pledge-sector

查看矿工节点信息(挖矿情况)

lotus-storage-miner info
tail -f /data/miner.log
tail -f /data/work.log

6. 更新到master最新版本

git pull 
rm -f /usr/local/bin/lotus  
rm -f /usr/local/bin/lotus-storage-miner
rm -f /usr/local/bin/lotus-seal-worker
make clean all && make all && make install

遇到的问题

- 在存储节点上,如果一个扇区正在证明,此时创建一个新的扇区,会导致正在证明的扇区无法再证明
- 工作节点异常退出或出错,此时如果正在密封,这个扇区下载启动也不会再密封

参考

lotus v0.2.2 安装
官方document

发布了14 篇原创文章 · 获赞 0 · 访问量 149

猜你喜欢

转载自blog.csdn.net/kk3909/article/details/104813815