# 超~全的Opside Validators V3部署教程啦

By [Nyahunters](https://paragraph.com/@nyahunters) · 2023-07-13

---

> ### 参与Opside PoS有什么好处？
> 
> _验证者为Opside网络的平稳运行和未来发展做出贡献。作为回报，他们可以获得IDE形式的区块奖励，IDE可以按预定比例兑换成积分。这些积分将来可以兑换成Opside主网代币。_

本文将详细介绍部署Opside Validators V3的流程，涉及到白名单的申请，主机的选择，结点的运行，验证者运行状况和奖励的查看，增加验证者的方法，验证者的不同主机间的迁移，以及各种可能出现的问题与解答~

关注我的推特叭，@nyahunters

[https://twitter.com/nyahunters](https://twitter.com/nyahunters)

抽奖活动持续进行中！

I PoS白名单的申请
===========

白名单的用处仅仅是官方给我们提供足够的IDE代币来质押（stake）哦，在目前的测试网中运行一个Validator需要质押25000IDE，如果大家钱包里有足够的IDE，或者说通过测试网的DEX从GETH（之类的）换成IDE的话，就可以跳过这个环节啦。

*   填写表单，地址是：
    
    > _pos白名单申请持续中，每周五会统计一下，更新领水的白名单地址，同时我们将在一周内不定时的审查和批准pos申请。_
    
    [https://docs.google.com/forms/d/e/1FAIpQLSdMNJQjHHgCJdgTBeHAR9GrcFvMg16r660-O0go25RskBgSLg/viewform?usp=send\_form](https://docs.google.com/forms/d/e/1FAIpQLSdMNJQjHHgCJdgTBeHAR9GrcFvMg16r660-O0go25RskBgSLg/viewform?usp=send_form)
    
    为了增加通过概率，在填写经历的地方，可以稍微吹捧一下自己运行服务器的能力，以及为诸如Taiko、Starknet等项目运行过节点的经历，只要敢说，在人类的能力范围之类的经历都是可以哒！
    
    这里填写的EVM地址指的就是申请白名单的地址，用途仅仅是从官方那里获得25001IDE，和后续需要填写的地址完全可以不一样哦。（这多出来的1IDE蕴含着官方的体贴哦，之后会提到哒。）
    
*   B. 邮件申请
    
    通过发送邮件至[validator@opsi.de](mailto:validator@opsi.de) ，可以一次申请多个白名单。通过邮件我第一次申请了 10个白，放在两台服务器上，后来觉得太浪费了，就又申请了10个，这样每台服务器10个看上去好像挺合理的，对叭。邮件的内容当然是自由发挥啦，这里可以涉及到许许多多社会工程学的知识，比如简单阅读一下Opside的白皮书，复述一下Opside引以为豪的概念创新之类的，表示自己很懂，然后强调自己有着多年Linux使用经验，以及有满腔热诚为了Opside干活之类的balabala……不过不要忘记把你的钱包地址放进去啦，然后采用deepl翻译下，中英都放上会比较好。因为Opside项目方里既有华人也有歪果仁。
    
    （如果需要的话，我可以在新的一篇文章里简单讲一讲社会工程学的各种技巧？）
    
    前段时间邮件申请是很方便的，我发的邮件大概两个小时就收到回复了。在7月初的时候，Opside的节点运行突然增多，超越了10000大关，那段时间估计官方审核很松，而在这两天陆续有人反馈邮件申请没有收到回复，或者一口气申请了20个却只白了10个，作为一种猜测，官方可能受到了一些诸如“一台服务器可以运行好多个节点真的太不去中心化啦”的指责，同时，在7月初的激增，导致了许多不是很会（放心，看完这篇文章绝对很会）的人让节点掉线之类的事情，所以增加了审核的难度。
    

在这里公开一下我申请用的邮件啦，请根据自己的理解来写，不要直接抄作业哦！同时，由于是六月末申请的，审核难度和审核要求与当下会有区别，仅供参考啦。（仅截取中文部分）

![](https://storage.googleapis.com/papyrus_images/28afdbc359e520c390b07f1b8f0a6715e9b06331d3033bcea9bf44e788eabbd7.png)

![](https://storage.googleapis.com/papyrus_images/e239c9c87a02a48b563894005c772e81ba2d58a61a86d4a66f80d96645be6b56.png)

从表单申请的话，申请成功是没有反馈的，所以你需要在Opside discord的for-validators频道尝试领水来查看申请结果。再重申一遍，白名单只是用来拿IDE的，最后如果要一口气运行多个节点的话需要传到一个主钱包里来统一质押啦。

II 选择什么主机运行好捏？
==============

官方给出的配置要求是：

> _Hardware_
> 
> _OS: 64-bit Linux, Mac OS X 10.14+, Windows 10+ 64-bit_
> 
> _CPU: 4+ cores @ 2.8+ GHz_
> 
> _Memory: 16GB+ RAM_
> 
> _Storage: SSD with at least 500GB free space(we recommend 2TB on mainnet)_

实际运行下来完全不需要这样的配置，如果采用这种配置来部署的话，建议一台主机运行10个以上的验证者。（不过不要太多哦！）

这是我用相近配置运行的结果，这台服务器上运行了10个，可以看出是相对非常非常空闲的。（空闲得仿佛…在运行Windows系统一样哈哈哈）

![aaPanel](https://storage.googleapis.com/papyrus_images/f9188ff03402f1ea6bfc1eb56b0512ad15901edfb1a4a862416113216728475b.png)

aaPanel

那我们开始物色一下主机吧。首先用自己闲置的电脑运行是完全没有问题的，唯一需要注意的就是在你觉得它快要不行的时候，或者因为某些原因要断网的时候，手动主动退出节点运行，这样就不会受到惩罚。退出方法后文会写啦。

A 租用VPS
-------

最保险和安心的做法就是租VPS，换句话说就是租云服务器。有好多好多好多的服务商可以选择，如果不吝啬于研究比对价格的话，可以查一下各个商家的价位，服务器地址以及连接速度之类的。各处对比下来…Contabo家是最便宜的，不过相对之下超卖的问题也比较严重。

注意：你使用的科学上网IP属地要和你填写的地址相同。最好不挂梯子。

[https://contabo.com/en/pricing/](https://contabo.com/en/pricing/)

Contabo不同的地区和计价单位下价格不同，选用欧元计价相对最便宜，**在右上角国家和货币选为China和EUR**。

![选择国家和货币](https://storage.googleapis.com/papyrus_images/304580b839469133950b313b45b5afe9e736dcb8ad79aefc99592525595fd87c.png)

选择国家和货币

一般来说M款是足够的，我租了两台M的，根据需求来就好啦。比如打算运行五个节点的话，S刚刚好满足。

**选中一款点击Select。**

![注意预算哦](https://storage.googleapis.com/papyrus_images/b1b8772c8f3b8235345639602945f91d6335a25d1d39594d9fc4b3e7261b0063.png)

注意预算哦

\*\*第一项选择租期。\*\*Opside 目前处于pre-alpha测试网，在8月23日过渡到alpha测试网的时候，验证者可以平滑过渡，所以我们可以一直做到年末，直到明年主网上线。不过具体选择多久就根据大家的预算和对项目的预期啦。

**第二项选择德国就可以啦。**

**第三项选择硬盘大小**，由于目前pre-alpha测试网运行了两个多月，总共占用的硬盘资源约15GB，所以400GB相对来说是足够的。当然不放心的话可以花一点点钱扩容。

![](https://storage.googleapis.com/papyrus_images/82b1c6cb53caa19d04e526b21357d516442758a93d3ce42ccdeba67e5586053b.png)

**第四项选择系统**，官方推荐是**Ubuntu 20.04+**，不过如果你和我一样是从小到大的Debian本家党，也可以在OS栏里（就是Popular右边）选择Debian 12。

**第五项设置root用户的密码**，看着填不要忘记啦，好像没法特殊字符（？）。

第六、七项不用管啦。

**随后确认要租用的VPS数量，点击Next。**

![](https://storage.googleapis.com/papyrus_images/017f23aab21c8c4f3d517c2d2e7d25013369e2f381f5d8ef245f8c776f651c47.png)

**用英文尽量真实填写信息**啦，电话号码前输入+86，邮箱用来接收VPS的参数信息的，也可能用来登录Contabo账户，很重要。确认无误之后点击Next。

![](https://storage.googleapis.com/papyrus_images/f62babf1b4ceeef8b41562d492bc33e29d9f8d5814db5063824fc8c5c926ee8f.png)

这里支持Paypal，Visa，Mastercard之类的付款方式，租用是按时计费的，前两个选项会持续在卡或者Paypal里扣款，第三个选项，也就是Other里的One-off payment，指的是一次性把必要的钱打给Contabo中你的账户里，然后Contabo会按时在账户里扣款。

**确认信息之后就可以付款啦。**

等几分钟之后邮箱里就会收到Contabo的邮件

![](https://storage.googleapis.com/papyrus_images/fea2f7d99f100d7f87da1e1557b8e7fd16f151e055561d409f991177d589430b.png)

**记住IP address**

![](https://storage.googleapis.com/papyrus_images/eaa0a11a84d126899428f8d5985655b2fa64c7b32988cf570663c75f0b57cefb.png)

另一封邮件是你的Contabo账号登录信息，在管理服务器的时候需要用到。

* * *

B 通过SSH连接VPS
============

以后操作VPS用这一步就行。

**输入Win+X，点击Windows终端（管理员）**（就是打开Powershell啦，方法很多请随意）

输入，其中xxx.xxx.xxx.xxx替换为你的IP Addresss

    ssh root@xxx.xxx.xxx.xxx
    

**第一次连接**会出现提示fingerprint，**输入yes回车**

**填写你在购买服务器的时候设置的密码**

**退出ssh的方法：终端输入exit**

C 安装aaPanel（可选）
---------------

用来管理服务器的面板，不过在整个部署过程中用处不是很大。

    wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh aapanel
    

记下用户名和密码，以及访问链接

浏览器访问即可

![](https://storage.googleapis.com/papyrus_images/d6f836dfc3434a3f99e5b0c5968f332d195dd6c8957ed8fc655c14d4ba848fc5.png)

* * *

附：个人Windows主机的配置方法(可选）
----------------------

要求：Windows版本1903以上，专业版适用，家庭版和学生版请另行谷歌咯

如果不打算租用VPS，可以在自己闲置的电脑上运行节点。在Windows上，我们采用WSL来使用Ubuntu子系统（如果你的主机和我一样是Linux系统话…应该本来就很懂了叭）。

这里提供两个纯命令行的操作办法

**输入Win+X，点击Windows终端（管理员）**（打开Powershell）

依次输入下面代码就好啦。

* * *

启动WSL和虚拟化。（第三步如果是家庭版和学生版会报错，解决办法请谷歌“家庭版启动HyperV报错”（很简单哒，不过放上来会使这篇很长的文章变得更加长，就不放咯））

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    

    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
    

安装Ubuntu 22.04版本。

    Invoke-WebRequest -Uri https://cloud-images.ubuntu.com/wsl/jammy/current/ubuntu-jammy-wsl-amd64-wsl.rootfs.tar.gz -OutFile $ENV:HOMEDRIVE$ENV:HOMEPATH\Downloads\ubuntu-22.04-jammy-wsl.tar.gz -UseBasicParsing
    

在C盘创建UbuntuJammy目录。

    mkdir c:\UbuntuJammy
    

设置WSL为版本2。

    wsl --set-default-version 2
    

把下载的Ubuntu导入WSL。

    wsl.exe --import UbuntuJammy C:\UbuntuJammy $ENV:HOMEDRIVE$ENV:HOMEPATH\Downloads\ubuntu-22.04-jammy-wsl.tar.gz
    

运行！

（以后运行只需要打开Powershell然后输入wsl即可）（或者通过Windows搜索Ubuntu，点击图标）

注意：需要在CMD（管理员模式）中切换成默认进入root用户

**打开CMD（管理员模式）**

输入

    ubuntu2204 config --default-user root
    

* * *

III 部署Opside Validators V3
==========================

以下适用于选择VPS以及用个人Windows主机的用户

* * *

A 初次部署Validators
================

**通过ssh连接上VPS**（VPS用户，方法见上文），或者**以管理员身份运行Powershell，输入wsl**（Windows用户，方法见上文）

更新源（root用户下执行）：

    apt-get update -y && apt-get upgrade -y
    

    apt install -y wget build-essential libssl-dev cmake screen git htop
    

使用自动部署程序v3：

    wget -c https://pre-alpha-download.opside.network/testnet-auto-install-v3.tar.gz && tar -C ./ -xzf testnet-auto-install-v3.tar.gz && chmod +x -R ./testnet-auto-install-v3 && cd ./testnet-auto-install-v3 && ./install-ubuntu-1.0.sh
    

（解释：&&表示顺序执行命令，用来连接两个或多个命令，wget是下载 自动部署程序v3的压缩包，tar -xvf 用来解压，chmod +x 是赋予整个testnet-auto-install-v3文件夹可执行权限，cd (+目录）表示进入该目录，使用cd ..退回上级目录，./install-ubuntu-1.0.sh 执行安装程序，只需使用一次。）

1.  **选择同步模式**，输入1或2回车
    
    1.  Fast mode （快速模式）{同步速度快，推荐使用，如果出现同步错误，可以尝试切换到普通模式}。
        
    2.  Normal mode（普通模式） {节点数更多、更稳定，但速度更慢} 。
        
2.  **选择助记词导入方式**
    
    1.  创建新的助记词
        
    2.  导入现有助记词
        
        （如何选择：如果你是第一次运行Validator，选择1；如果你打算把已有的Validators迁移到新的VPS，或者打算增加Validator数量，选择2。）
        
3.  **输入想要运行的Validators数量**，程序会根据助记词自动生成相应数量的私钥以及对应的keystore文件。
    
4.  **输入用于提款的EVM钱包地址**，Validators运行的产生奖励会每隔一段时间发送到这个钱包里。可以和质押用的EVM钱包地址不一样（质押用的地址是把相应的IDE发送到对应的Validators的地址上，除此之外没有别的用处。）
    
5.  **创建一个用来加密keystore文件的密码**，不要忘啦。（长度大于8个字符）
    

![](https://storage.googleapis.com/papyrus_images/64c6e7ebb6b17c425e1a9e8398d35545a9fd537921b0b25123565510351a816b.png)

（接下来的步骤，根据CLI prompts，如果有疑惑可以Deepl翻译）

1.  **重复用于提款的EVM钱包地址**
    
2.  **重复用来加密keystore文件的密码**
    
3.  **记忆生成的24字符助记词，请保存在安全的地方。**
    
4.  **重复24字符助记词**，可以复制粘贴，允许只输入前四个字符（如果想要偷懒的话）
    

![蓝色的地方就是你的keys的存放文件夹啦（可爱的小犀牛](https://storage.googleapis.com/papyrus_images/239723ca60935386dfdea191b856a8dd6547e74ee311ede7030224c994df59d8.png)

蓝色的地方就是你的keys的存放文件夹啦（可爱的小犀牛

如果没有别的想做的事情的话，退出ssh就行啦。（方法见上文）（或者退出wsl）

* * *

（对VPS用户）接下来我们通过scp把validator\_keys文件夹传输到C盘根目录（当然可以存在你想存的位置，只要把C:\\替换为对应的位置就行，比如说C:\\Users\\(你的用户名）\\Documents\\，存到你的“文档”文件夹里）

**输入**（xxx.xxx.xxx.xxx替换为你的IP Address）

    scp -r root@xxx.xxx.xxx.xxx:/root/testnet-auto-install-v3/validator_keys C:\
    

需要**填写你在购买服务器的时候设置的密码**

现在你可以在C盘根目录里看到这个文件夹

![](https://storage.googleapis.com/papyrus_images/568f82df63a3b7f618a0799611ff34f8921e5626ac335fe18d915694584bb6a3.png)

这个JSON文件使用来Deposit的，里面储存着你这一次添加的Validators的公钥pubkey，提款认证，金额（25000IDE/Validator），签名等

可以用记事本打开，比如我的这一个json里面存了5个Validators的信息，蓝色的部分就是第一个Validator的公钥。

![](https://storage.googleapis.com/papyrus_images/c2b9ec895ac77e3b394718f0206169c66620f1f5cb7e24f77df09a39c3ac1f46.png)

（对Windows用户)

**打开文件资源管理器**

在上方索引栏输入

    //wsl$
    

![](https://storage.googleapis.com/papyrus_images/758cbff2b9122413c7ef243869f7f8a6cfcb52e95b4d4c670d9421c433c13cc8.png)

然后**依次打开root文件夹，testnet-auto-install-v3文件夹**，可以看到validator\_keys文件夹

* * *

### 在质押之前，确认是否同步完成。确认方法：

**通过ssh连接上VPS**（VPS用户，方法见上文），或者**以管理员身份运行Powershell，输入wsl**（Windows用户，方法见上文）

进入opside-chain文件夹

    cd /root/testnet-auto-install-v3/opside-chain
    

运行control-panel

    ./control-panel.sh
    

依次输入5，回车，1，回车

等Block height difference为0时表示同步完成。

![](https://storage.googleapis.com/papyrus_images/7b8c708bd881c7daa5b2c49c0b9c627f60c9ebb9d88a79d84e85df96bf5c7692.png)

* * *

B 质押（确保同步完成）
------------

进入网站

[https://opside.network/validator/deposit](https://opside.network/validator/deposit)

仔细阅读说明，点击Continue或Accept，随后将JSON文件托放到此处

![](https://storage.googleapis.com/papyrus_images/98872fed4242f1e569115f6448e513804fafc6e9a778f7984a676edb0c9ea083.png)

或者把json里面的内容粘贴到红框里

![](https://storage.googleapis.com/papyrus_images/de2af70d1974bca49fb7b73eb4e5c43a7e89d1bc82cfb795ae8ce4a84bdb3db5.png)

确认之后点击Continue，随后连接钱包质押就好啦。如果一次运行多个节点，这边Rent的金额会显示相应的数量，这个时候仍然是连接一个钱包质押，所以如果申请到多个白名单，需要把这些白名单钱包的IDE转到付款用的一个钱包当中，因此官方给白名单的时候会多给一个IDE啦（用来支付Gas）。

![](https://storage.googleapis.com/papyrus_images/73be4391a722ad96f336cc29a1c51eab86305f695977fa19c9f786dd53d4263a.png)

质押完后需要等待16至24小时，随后节点就会运行啦。

* * *

C 查看你的Validators
----------------

进入网站，查看单个Validator状态

[https://opsi.de/validator/overview](https://opsi.de/validator/overview)

输入前面JSON文件里的pubkeys查询（记得加上0x）比如这个节点是我后面新添加的Validator，节点序号的11375，一般来说同时质押的一批Validators，节点序号是连续的，只需要查询到第一个Validator的序号，之后就可以输入序号来查询。

![](https://storage.googleapis.com/papyrus_images/eb0445ac9a5026c0af840308a1c198820411870131dceea66159e8ed40fdb8bb.png)

![](https://storage.googleapis.com/papyrus_images/03f566912b65a5d15026f664d3eb16c95db7028c2d116e9e130ed2092c7f2d51.png)

你还可以通过Dashboard来集中查看你运行的Validators

[https://pre-alpha-beacon.opside.info/dashboard](https://pre-alpha-beacon.opside.info/dashboard)

依次输入各个节点的序号，比如这是我运行了半个月的20个节点。

![](https://storage.googleapis.com/papyrus_images/2a122a9ba49d06bcc5b5c52d166ca5203f163e8861915be9709f200751832e90.png)

* * *

D 增加Validators
--------------

（B 是和前面 A初次部署相对的，因为已经在很前面很前面惹，所以提示一下）

### **打开control-panel** （后面就不重复写如何打开啦）

**通过ssh连接上VPS**（VPS用户，方法见上文），或者**以管理员身份运行Powershell，输入wsl**（Windows用户，方法见上文）

进入opside-chain文件夹

    cd /root/testnet-auto-install-v3/opside-chain
    

运行control-panel

    ./control-panel.sh
    

依次输入6，回车（选择Validator Management），1，回车（Add Validators），2，回车（导入现有的助记词）

**随后输入你想要添加的Validator数量**

我这里添加了2个，就是橙色部分。

随后是你初次部署时候填的提款EVM地址，初次部署时的密码，以及24位的助记词

![](https://storage.googleapis.com/papyrus_images/9708a353e483e4f2d85f70b4060c19a0f4d9ac1491a79cba39f6e73fa7351d5e.png)

你会遇到：

![](https://storage.googleapis.com/papyrus_images/c3eeedca67ec757d060403270f6c77f4f53845d8bf81e23ced240b93099c3887.png)

在这里你需要输入已经通过你导入的助记词生成的Validators数量，因为每组助记词根据BIP协议可以生成许多私钥，这些私钥的生成是有顺序的，比如说在metamask里添加账户，从不同的钱包里用同样的助记词添加的账户，它们的公钥私钥对应的值和生成顺序都是一样哒。

简单地说，**填写你使用这个助记词创建过的Validators的数量。**

包括，初次创建的数量，以前添加过的数量，在另一台服务器上用这个助记词创建的数量等等。

和初次部署同样的方法**找到JSON文件**，不过不要记混啦，你可以通过查看文件时间，或者通过查询里面的pubkey对应的Validator状态来判断你需要的JSON 文件。

然后按前面的方法**质押**就可以啦。

* * *

E 迁移Validators
==============

根据D板块

> _在这里你需要输入已经通过你导入的助记词生成的Validators数量，因为每组助记词根据BIP协议可以生成许多私钥，这些私钥的生成是有顺序的，比如说在metamask里添加账户，从不同的钱包里用同样的助记词添加的账户，它们的公钥私钥对应的值和生成顺序都是一样哒。_

迁移Validators，原理上就是在新的主机里提供你需要迁移的那些Validators的私钥，和D中添加Validators的过程相仿

### **打开control-panel**

依次输入6，回车（选择Validator Management），1，回车（Add Validators），2，回车（导入现有的助记词）

**随后输入你想要迁移的Validator数量**

假设你在旧的VPS上有5个Validators，你想要迁移4个到新的VPS上，就输入4

随后同样是EVM地址，密码，助记词

当你遇到

![](https://storage.googleapis.com/papyrus_images/c3eeedca67ec757d060403270f6c77f4f53845d8bf81e23ced240b93099c3887.png)

你需要稍微计算一下（花点时间思考一下助记词和私钥的对应关系（一个助记词可以有序生成多个私钥）就可以啦）

比如按照前面的假设，你需要在这里输入1，这表示你将在这台VPS上从第二个私钥开始，有序生成4个私钥。

当然，Validators的迁移和添加可以同时进行，对应前面的原理。

* * *

IV 可能出现的问题和解答
=============

### A 如何停止运行Validators？

在control-panel里选择stop the clients，stop all（如果没有特殊需求的话）

### **B ssh连接超时，IP地址ping不上怎么办？**

有可能是VPS供应商出现了问题，我之前就遇到过，如果采用Contabo的话，可以通过输入前面所说的邮件里提供的用户名（邮箱）和密码进入Contabo账户

![](https://storage.googleapis.com/papyrus_images/8619158045eb9e9bdfef2199211d5047f964b82ceb884a53f04cb6fc6a1a6362.png)

左侧栏里**选择VPS control**（原谅我啦，电脑屏幕是4k的所以局部截图会变得看上去很大很大…）

![](https://storage.googleapis.com/papyrus_images/73e7d4cf6c1cc7a25546992f368d39d1e56a692c57cf910d86c220ad25ddcacc.png)

找到你登陆不上的服务器，然后让它重启。

重启之后你需要在control-panel里，选择2 restart the clients

### C 出现Permission Denied怎么办？

这种情况大概是没有给部署文件添加可执行权限，只需要输入

    chmod +x -R /root/testnet-auto-install-v3
    

* * *

更多信息请阅读官方FAQ文档啦

[https://docs.opside.network/validators-pos/validator-faq](https://docs.opside.network/validators-pos/validator-faq)

写到这里这篇长长的教程就要结束啦，我学识有限，难免出现疏忽错误，还请谅解！

如果在整个过程中有任何问题请私信我的推特啦

@nyahunters

欢迎提出各种疑问，指出错误，也可以提出各种建议，或者单纯找我玩也是很欢迎哒。我会不断修改更新完善这篇文章。

关注我叭，一起成为赌喵，nya~

（抽奖活动持续进行中！！！）

---

*Originally published on [Nyahunters](https://paragraph.com/@nyahunters/opside-validators-v3)*
