# 矿工更换服务器教程
本文档介绍矿工如何更换服务器。
# 准备工作
在更换服务器前,您需要做以下准备工作:
如果您已配置好新的服务器并安装完成 TOPIO,可跳过准备工作,直接开始 更换服务器。
# 1. 配置新服务器
配置一台新的服务器用于运行 TOPIO。建议您租用云服务器,然后在您个人计算机上通过 SSH 终端远程访问。
操作系统要求
操作系统 | 版本 |
---|---|
Linux | CentOS 7,64 位,内核 3.10 及以上版本(含 CentOS 8) |
Ubuntu 16.04,64 位,内核 4.4 及以上版本 |
服务器最低配置
不同的类型矿工对服务器的配置要求不同,最低配置请参见下表。
矿工类型 | 最低硬件配置 |
---|---|
边缘矿工(edge) | 1CPU/1GB mem 40GB SSD 100Mb/s |
验证矿工(validator) | 2CPU/2GB mem 60GB SSD 100Mb/s |
高级矿工(advance) | 2CPU/4GB mem 100GB SSD 200Mb/s |
配置流入端口
请对以下端口流入公网放行,否则节点将无法加入 TOP AI Network 网络:
- TCP:19081、19082、19085、8080
- UDP:9000、9001
# 2. 安装 TOPIO
# 安装 wget 下载工具
连接新服务器,在 SSH 终端页面执行以下命令安装 wget 下载工具。
CentOS 和 Ubuntu 安装命令分别如下,根据您的服务器操作系统使用相应的命令。
CentOS
sudo yum install wget -y
Ubuntu
sudo apt install wget -y
# 下载并安装 TOPIO
执行以下命令下载并安装 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
当安装页面打印以下内容时,安装完毕:
install topio done
now run command to check md5: topio -v
now run command for help info: topio -h
此时需验证安装是否成功。
验证安装结果
在命令行中执行 topio -v
,如果输出以下信息,则证明安装成功:
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
# 更换服务器
准备工作完成后,即可开始更换服务器。
# 1. 在旧服务器中导出私钥
在旧服务器的 TOPIO 中运行
topio wallet exportAccount
,随后会打印钱包私钥和 keystore 文件内容。样例如下:
Export successfully. Keystore file: /root/topnetwork/keystore/T80000968927100f3cb7b23e8d477298311648978d8613 Account Address: T80000968927100f3cb7b23e8d477298311648978d8613 Private-Key: b0032f8057051b611a7c0ea373da4d7a6764351030ed497e6134fd9e11775b19 { "account_address" : "T80000968927100f3cb7b23e8d477298311648978d8613", "address" : "968927100f3cb7b23e8d477298311648978d8613", "crypto" : { "cipher" : "aes-128-ctr", "cipherparams" : { "iv" : "e40a554c807b913c6e882e933ee6c103" }, "ciphertext" : "762381ac2219511c647d27424761e81fecc14170eeff6e20412d6c9311149060", "kdf" : "scrypt", "kdfparams" : { "dklen" : 32, "n" : 262144, "p" : 1, "r" : 8, "salt" : "69c473d9a1ae16ad7cbab057101ccb9632d4109bf7f44e7ff2eba59e269f9932" }, "mac" : "7d3c31b6aa3f43885682259e6e632b44799700cc7030bdbc1dddb2f587066dac" }, "hint" : "", "id" : "b2951865-c391-9d98-ff85-83e149f88990", "key_type" : "owner", "public_key" : "BK2CfxnSP0cL9/dbi6b3krWUlQP1jP4EIHu5Y5c2vMBNLMYMOE8K3mqOubDPQXBXc/D4ydtR0LDyWUEyxHO/ZZU=", "version" : 3 }
将打印的钱包私钥和 keystore 文件内容复制到本地进行保存。
其中:
Keystore file
为 keystore 文件在旧服务器中的存储路径。Account Address
为钱包地址。Private-Key
为您的钱包私钥。- 花括号 { } 中的内容为 keystore 文件内容。
在本地妥善保存钱包私钥和 keystore 文件内容后,即可前往新服务器进行导入。
# 2. 在新服务器中导入私钥
运行导入私钥命令:
在新服务器的 TOPIO 中运行
topio wallet importAccount
导入私钥。设置密码:
在导入私钥时需要设置密码(需输入两次)。
Please set a password for the account keystore file.
输入私钥:
当页面中显示如下内容时,输入您从旧服务器中导出的私钥(Private-Key),支持粘贴。
Please input private key.
按 Enter 运行后,页面打印如下内容:
Successfully import an account.
并会打印地址以及公钥,此时账户已成功导入至新服务器中。
# 3. 下载数据库(推荐)
对于新服务器,推荐您在启动节点前先下载数据库,这样可以减少数据同步时间,尽早开始产生收益。
在 SSH 终端中运行以下命令:
如果您是高级矿工,则必须下载数据库。
topio db download https://nyc3.digitaloceanspaces.com/top-mainnet-space/db_20220906_adv_5391f0d4430ed1e7c5b2505cfb5e2e0a.tar.gz
在返回信息中,如果下载进度为 100%,且包含以下内容,则证明数据库下载成功:
download database ok.
md5sum check ok.
# 4. 启动节点
成功导入账户后,需要启动节点进程,即可重新开始挖矿。
在 TOPIO 中执行以下命令以启动节点进程:
topio node startNode
若返回以下信息,则成功启动节点进程。
Start node successfully.
执行以下命令查询节点是否成功加入网络。
topio node isJoined
- 若返回
topio not ready
,说明 TOPIO 暂未准备好,请等待一分钟后再次运行命令重试。 - 若返回
YES
,则节点成功入网,进入节点候选池,等待选举。 - 若返回
No
,则节点入网失败,可能因为网络故障,网络抖动。