# 背景
考虑到庞大的初始硬件和 Filecoin 质押投资 (opens new window)以及相关的运营成本,开始 Filecoin 存储提供是一项艰巨的任务。囊括了分布式部署架构,订单服务和算力服务,Venus 将帮助存储提供者,如社区所说,把全职工作 (opens new window)变成为一个对运维更加友好的解决方案。希望本教程能让您立即开始存储提供!
# 如何提供存储服务
有两种方法可以开始使用 Venus 来提供存储服务。
- 部署最少的硬件并获得第三方智子服务的帐号。欢迎了解
Venushub
的孵化器项目 (opens new window),并加入Venus
团队提供的免费智子服务。 - 自行部署智子服务。请参阅这个教程以了解更多信息。
在遵循其余的教程和成功部署后,您可以开始封装扇区,增加算力并通过您对网络存储容量的贡献最终获得区块奖励!
# venus 产品介绍
根据其在挖矿集群中的作用,模块可以大致分为两类:智子服务产品和 SP 本地产品。智子服务可以被认为是开始封装扇区所需的基础。大多数与区块链的交互,如链同步、发送消息、赢得赢票等,都是由智子服务处理的。这允许了许多存储提供者都可以共用一套智子服务,从而减少维护成本。SP 本地产品提供了一整套算力服务。如果您选择使用第三方托管的智子服务,您只要将花费大部分时间在 SP 本地产品上。
name | role | product |
---|---|---|
venus (opens new window) | daemon for chain interactions | venus |
sophon-miner (opens new window) | block winning and proving | sophon service |
sophon-messager (opens new window) | chain message management | sophon service |
sophon-auth (opens new window) | utility for authorized use of shared modules | sophon service |
sophon-gateway (opens new window) | utility for controlled access point of shared modules | sophon service |
venus-wallet (opens new window) | addresses/keys management | venus |
damocles (opens new window) | job scheduling, sealing and proving | damocles |
droplet (opens new window) | storage deal making & data retrieval | droplet |
‼️Deprecated; |
# 服务架构
下图展示了 venus 模块如何相互交互。
# 硬件要求
在此处 (opens new window)了解有关硬件要求的更多信息。或者参阅我们的单机配置示例 (opens new window)。
注意
使用 damocles
时,请参阅 damocles
性能测试 (opens new window)中,社区成员使用的硬件,并作出对自己的最优调整。如有问题可以寻求Venus Master (opens new window)的帮助。
# Venus 产品构建
本文档各组件以 TAG:v1.0.0
为例说明,实际场景中按需检出。
每个组件的构建相互独立,无顺序之分。
# 环境准备
系统需要安装 Go
,Rust
等必要软件,可以参考 lotus
文档中的相应部分 building-from-source (opens new window)。
Venus
各产品均在 github
开源,通常用 git
管理,git
命令使用可参考 Branching-Remote-Branches (opens new window)
部分组件依赖 filecoin-ffi
,Filecoin
官方提供了编译好的静态库文件。如果需要源码编译此静态库,可参考 native-filecoin-ffi (opens new window),通常 damocles
源码编译此库以提升扇区封装效率。
# venus
$ git clone https://github.com/filecoin-project/venus.git
$ cd venus
$ git checkout -b v1.0.0 v1.0.0
$ git submodule update --init --recursive
$ make deps
$ make
# sophon-auth
$ git clone https://github.com/ipfs-force-community/sophon-auth.git
$ cd sophon-auth
$ git checkout -b v1.0.0 v1.0.0
$ make
# sophon-gateway
$ git clone https://github.com/ipfs-force-community/sophon-gateway.git
$ cd sophon-gateway
$ git checkout -b v1.0.0 v1.0.0
$ git submodule update --init --recursive
$ make
提示
如果遇到编译错误:github.com/dgraph-io/badger/v3@v3.2011.1/fb/BlockOffset.go:6:2: missing go.sum entry for module providing package github.com/google/flatbuffers/go (imported by github.com/dgraph-io/badger/v3/table); to add: go get github.com/dgraph-io/badger/v3/table@v3.2011.1
,先执行:
$ go get github.com/google/flatbuffers@v1.12.1
# sophon-messager
$ git clone https://github.com/ipfs-force-community/sophon-messager.git
$ cd sophon-messager
$ git checkout -b v1.0.0 v1.0.0
$ make
# sophon-miner
$ git clone https://github.com/ipfs-force-community/sophon-miner.git
$ cd sophon-miner
$ git checkout -b v1.0.0 v1.0.0
$ git submodule update --init --recursive
$ make
# venus-wallet
参考 venus-wallet
项目的 readme
文档中 Build (opens new window)
# droplet
参考 droplet
的产品文档 (opens new window)。
# damocles
参考 damocles
的产品文档 (opens new window)
部署智子服务 →