# 成为矿工
矿工是运行 TOP AI Network 节点,赚取 TOP token 的账户。
节点是在 TOP AI Network 区块链网络中提供计算、存储、路由能力的计算机或服务器,不同网络对应不同类型的节点,比如边缘网络的边缘节点等等。由于一台计算机或服务器可以加入不同网络,因此可以担任多种类型的节点。
本章的内容将说明如何在 TOP AI Network Staking DApp (opens new window) 上申请成为主网矿工。
成为矿工,您需要:
# 步骤 1 配置云主机
在 TOP Staking 中,点击 配置云主机 (opens new window)。
# 创建云主机
创建一台用于运行 TOPIO 的服务器,建议您租用云服务器,然后在您个人计算机上通过 SSH 终端远程访问。
说明
在配置云主机时,若需要配置端口,可参考 配置流入端口。
# 远程控制云主机
您可以通过 SSH 终端远程控制您的云主机。
# 安装公链程序
安装 TOPIO 会使用一些 Linux 系统命令,如您对 Linux 系统命令较为陌生,请前往 安装 TOPIO,按照指南,安装 TOPIO。
如您对 Linux 较为熟悉且已安装过 wget 下载工具,请直接在 SSH 终端页面执行以下命令下载并安装 TOPIO。
root 用户可直接执行以下命令,而非 root 用户需要管理员权限才可执行,您可 点击此处 查看如何对 非 root 用户添加管理员权限。
wget https://github.com/telosprotocol/TOP-chain/releases/download/v1.14.0/topio-1.14.0-release.tar.gz -O topio-1.14.0-release.tar.gz && tar zxvf topio-1.14.0-release.tar.gz && cd topio-1.14.0-release && sudo bash install.sh && source /etc/profile && bash set_topio.sh && source ~/.bashrc && ulimit -n 65535
安装完成后,执行 topio -v
验证 TOPIO 是否安装成功,如果输出以下信息,证明安装成功。
topio version: 1.14.0
git commit info: d42d833c2
git submodule: xbase:4b3b8a4|xdepends/GSL:8e6d4e2|xdepends/boringssl:10fef972e|xdepends/googletest:ec44c6c1|xdepends/gperftools:bf8b714|xdepends/jemalloc:46c0af68|xdepends/libevent:5df3037d|xdepends/xquic:53a8708|
build date: Nov 17 2023 14:35:36
build options: release
MD5:47491e1e1e7d65b5335699b0ffda1121
注意
如 MD5 码与官网展示的对应安装包 MD5 码不一致,您虽然安装成功,但是安装文件存在被篡改的可能性!
# 下载数据库(推荐)
对于新服务器,推荐您在启动节点前先下载数据库,这样可以减少数据同步时间,尽早开始产生收益。
如果您想成为高级矿工,则必须下载数据库。
在 SSH 终端中运行以下命令:
topio db download https://nyc3.digitaloceanspaces.com/top-mainnet-space/db_20220906_adv_5391f0d4430ed1e7c5b2505cfb5e2e0a.tar.gz
在返回信息中,如果下载进度为 100%,且包含以下内容,则证明数据库下载成功:
download database ok.
md5sum check ok.
# 步骤 2 创建 TOP 账户
在 TOP Staking 中点击左侧导航栏中的 注册矿工。
复制上图中的命令,到 SSH 终端执行该命令创建一个 TOP 账户。
topio wallet createAccount
说明:通过此命令创建 TOP 账户需要设置一个密码,请您保管好账户密码,详情参见 创建账户。
执行此命令后会打印账户地址(如 T8000085a8e8acd53c72dca85dcb002a6710796975b4ba)、owner key 的公钥。
WARNING
您的账户地址、公私钥等信息都存储在 keystore 文件中,请妥善保管好您的 keystore 文件,且不要与他人分享您的 keystore 文件,如文件丢失,您将失去对此账户中所有资金的控制权!
keystore 文件默认存储目录:
root 用户:
/root/topnetwork/keystore
非 root 用户:
/home/您登陆服务器的用户名/topnetwork/keystore
# 步骤 3 获取 TOP token
在 TOP Staking 中输入创建的 TOP 账户地址,并向此账户中充值 TOP。
您可通过以下方式获取 TOP token。
通过交易所购买 TOP:如果您是首次参与过 TOP 挖矿,可通过 Hotbit 交易所购买 TOP(验证矿工需要至少 502,000 TOP,高级矿工需要至少 1,002,000 TOP)。
通过其他账户转账 TOP:如果您的其他账户中已有主网 TOP 币,可从其它 TOP 账户转账 TOP 币到创建的 TOP 挖矿账户。
通过映射 Dapp 兑换 TOP:如果您曾经在以太坊中购买过 TOP(ERC20),可通过 映射 Dapp 将以太坊中的 TOP(ERC20)兑换为 TOP 公链上的 TOP。
随后,点击 下一步。
# 步骤 4 注册矿工与节点入网
# 注册矿工
在 TOP Staking 中选择矿工类型、输入矿工名称、设置分红比例后,复制页面中生成的命令。
在 SSH 终端粘贴并执行该命令注册矿工,并设置矿工名称以及分红比例:
以注册高级矿工为例,命令示例如下:
topio mining registerMiner 1000000 advance miner_name --dividend_ratio 50
其中:
1000000
为矿工的质押保证金,高级矿工为至少 1,002,000 TOP,验证矿工为至少 502,000 TOP,边缘矿工为至少 202,000 TOP(额外的 2,000 为 gas 费)。advance
为矿工类型,此示例中的 advance 为高级矿工。miner_name
为矿工名称,可自定义。4-16 个字符,只支持字母、数字或下划线。--dividend_ratio 50
为分红比例,此示例中的分红比例为 50%。高级矿工 可设置分红比例,您收到的全部奖励(包括但不限于工作量奖励和选票奖励),将按照分红比例分到支持您的投票者账户。分红比例 ∈ [0,100]。分红比例每 14 天可以修改一次。
注册其他类型的矿工的命令如下:
注册矿工类型 | 命令示例 | 说明 |
---|---|---|
边缘矿工(edge) | topio mining registerMiner 200000 edge miner_name |
|
验证矿工(validator) | topio mining registerMiner 500000 validator miner_name |
|
高级矿工(advance) | topio mining registerMiner 1000000 advance miner_name --dividend_ratio 50 |
|
运行命令后如返回以下信息,证明矿工注册成功。
Successfully registering to the mining pool.
# 节点入网
矿工注册成功后,需要启动节点进程,让节点加入 TOP AI Network 网络。
执行以下命令以启动节点进程:
topio node startNode
若返回以下信息,则成功启动节点进程。
Start node successfully.
执行以下命令查询节点是否成功加入网络。
topio node isJoined
- 若返回
topio not ready
,说明 TOPIO 暂未准备好,请等待一分钟后再次运行命令重试。 - 若返回
YES
,则节点成功入网,进入节点候选池,等待选举。 - 若返回
No
,则节点入网失败,可能因为网络故障,网络抖动。
稍等 1~2 分钟后,您可以前往 TOP AI Network 区块浏览器 TOPScan (opens new window) 查询节点当选信息。
# 其他操作
# 修改矿工资料
矿工注册、节点启动完成后,您可登录 TOP Staking 并进入 矿工资料 页面设置您的矿工资料,包含地区、logo、宣言等内容,这些信息会展示在 Staking DApp 节点列表页面。
登录方式如下:
- 在 TOP Staking 欢迎页,点击登录。
- 在登录框中输入您的矿工账户的 keystore 内容以及账户密码。
- keystore 获取方式:在 TOPIO 中运行命令
cat ~/topnetwork/keystore/账户地址
可打印地址的 keystore 信息,复制并粘贴至登录框中即可。 - 密码:为您在创建 TOP 账户时设置的密码。
- keystore 获取方式:在 TOPIO 中运行命令
- 点击登录,即可成功登录 TOP Staking。