Cover photo

SUPER detailed Opside Validators V3 deployment tutorial !!

What are the benefits of participating in Opside PoS?

Validators contribute to the smooth operation and future development of the Opside network. In return, they can receive block rewards in the form of IDEs, which can be exchanged for credits in predetermined proportions. These points can be exchanged for Opside mainnet tokens in the future.

This article will introduce in detail the process of deploying Opside Validators V3, which involves whitelist application, host selection, node operation, verification of validator status and rewards, method of adding validators, and migration of validators between different hosts , as well as various possible questions and answers~

Follow me on Twitter Nyahunters.love

I Application for PoS whitelist

The use of the whitelist is only to provide us with enough IDE tokens to stake. To run a Validator in the current testnet requires a pledge of 25,000 IDE. If you have enough IDE in your wallet or swap them from GETH, this step can be skipped.

  • Choice A: Fill out the form:

    The pos whitelist application is ongoing, and we will count every Friday to update the whitelist address. At the same time, we will review and approve the pos application from time to time within a week.

    Form for WL application

    In order to increase the probability of getting whitelisted, in the place of filling in the experience, you can brag a little about your ability to run the server, and the experience of running nodes for projects such as Taiko and Starknet. As long as you dare to say, experiences within the scope of human ability is Yes!

    The EVM address filled in here refers to the address for applying for the whitelist. The purpose is only to obtain 25001IDE from the official team, and it can be completely different from the address that needs to be filled in later. (The extra 1IDE contains official team's thoughtfulness (lol), which will be mentioned later.)

  • Choice B. Application by email

    By sending an email to validator@opsi.de , you can apply for multiple whitelists at once.

    I applied for 10 wls for the first time through email, and put them on two servers. Later, I felt that it was too wasteful, so I applied for 10 more, so 10 for each server seems reasonable. The content of the email is of course free to play. There can be a lot of social engineering knowledge involved here, such as simply reading Opside’s white paper, retelling the concept innovation that Opside is proud of, and expressing that you understand it well, and then emphasize that you have many years of experience in using Linux, and are full of enthusiasm for working for Opside (balabala) ... But don't forget to put your wallet addresses in it.

    (Shall I briefly touch on the various techniques of social engineering in a new article if needed?)

If you apply from the form, there will be no feedback if the application is successful, so you need to try to get testnet tokens in the for-validators channel of the Opside discord to see the application result. Again, the whitelist is only used to get the IDE. Finally, if you want to run multiple nodes at one go, you need to transfer them to a main wallet for unified deposition.

II What host to choose to run well?

The official configuration requirements are:

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)

In actual operation, such a configuration is not required at all. If this configuration is used for deployment, it is recommended that one host run more than 10 validators. (But not tooooo much!)

This is the result of running with a similar configuration. There are 10 running on this server, and it can be seen that it is relatively very, very idle. (Idle as if...running a Windows system hahaha)

So let's start looking for a host. First of all, it is no problem to run it with your idle computer. The only thing you need to pay attention to is that when you think it is about to fail, or when you want to disconnect from the network for some reason, you can manually quit the node operation, so that you will not be punished. . The exit method will be written later.

A Rent a VPS

The safest way is to rent a VPS, in other words, rent a cloud server. There are many, many, many service providers to choose from. If you are not stingy in researching and comparing prices, you can check the prices, server addresses, and connection speeds of various merchants. After comparing various places... Contabo is the cheapest, but the problem of oversold is relatively serious.

Note: The IP domain you use must be the same as the address you filled in. It is best not to use VPN.

\Contabo\

Contabo has different prices in different regions and pricing units. The price in Euro is relatively the cheapest, and China and EUR are selected as the country and currency in the upper right corner .

Select country and currency
Select country and currency

Generally speaking, the M model is enough. I rented two M models, and it’s fine to come as needed. For example, if you plan to run five nodes, S is just enough.

Choose one and click Select.

Pay attention to the budget
Pay attention to the budget

Choose the term length.

Opside is currently in the pre-alpha test network. When it transitions to the alpha test network on August 23, validators can transition smoothly, so we can continue until the end of the year until the main network goes live next year. However, how long you choose depends on your budget and expectations for the project.

Use the default "Region" (European Union (Germany)).

Choose Storage Type . Since the pre-alpha test network has been running for more than two months, the total hard disk resources occupied are about 15GB, so 400GB is relatively sufficient. Of course, if you are not at ease, you can spend a little money to expand the capacity.

post image

Choose the system . The official recommendation is Ubuntu 20.04+ , but if you are a Debian-fan like me, you can also choose Debian 12 in the OS column (right side of Popular).

Set the password of the root user . Don’t forget to fill it in.

Don't worry about the sixth and seventh items.

Then confirm the quantity of VPS to rent and click "Next".

post image

Fill in the information in English as truthfully as possible . The email is used to receive the VPS login information, and it may also be used to log in to the Contabo account, which is very important. After confirming that it is correct, click "Next".

post image

Payment methods such as Paypal, Visa, and Mastercard are supported here. Contabo will deduct the money from the account monthly.

After confirming the information, you can pay.

After a few minutes, you will receive two emails from Contabo in your mailbox

post image

Remember the IP address

post image

The other email is your Contabo account login information, which is needed when managing the server.


B Connect to the VPS via SSH

Use this step to operate the VPS in the future.

Enter Win+X, click Terminal (Administrator) (that is used to open Powershell, and there are many methods)

Enter the command below, where xxx.xxx.xxx.xxx is replaced with your IP Addresss

ssh root@xxx.xxx.xxx.xxx

A fingerprint will be prompted for the first connection , enter yes and press Enter

Fill in the password you set when purchasing the server

The method of exiting ssh: input "exit" in the terminal and enter

C install aaPanel (optional)

The panel is used to manage the server, but not very useful in the overall deployment process.

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

Make a note of the username and password, and the access link

use a browser to access

post image

Attachment: Configuration method of a personal Windows host (optional)

Requirements: Windows version 1903 or above, professional version is applicable, please Google for home version and student version

If you don't plan to rent a VPS, you can run the node on your own idle computer. On Windows, we use WSL to use the Ubuntu subsystem (if your host is a Linux system like mine... you should already understand it).

Here are two pure command line operation methods

Enter Win+X, click Windows Terminal (Administrator) (Open Powershell)

Just enter the code below.


Start WSL and virtualization. (In the third step, if it is the home version and the student version, an error will be reported. For the solution, please Google "Starting HyperV error in the home version" (very simple, but putting it up will make this very long article even longer, so don't put it ))

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

Install Ubuntu 22.04 version.

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

Create the UbuntuJammy directory on the C drive.

mkdir c:\UbuntuJammy

Set WSL to version 2.

wsl --set-default-version 2

Import the downloaded Ubuntu into WSL.

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

run!

(In the future, you only need to open Powershell and enter wsl) (or search for Ubuntu through Windows and click the icon)

Note: You need to switch to the root user by default in CMD (administrator mode)

Open CMD (Administrator Mode)

enter

ubuntu2204 config --default-user root

III Deploy Opside Validators V3

The following applies to users who choose VPS or use personal Windows hosts


A Initial deployment of Validators

Connect to the VPS via ssh (for VPS users, see the method above), or run Powershell as an administrator, and enter wsl (for Windows users, see the method above)

Update source (executed under root user):

apt-get update -y && apt-get upgrade -y
apt install -y wget build-essential libssl-dev cmake screen git htop

Using auto-deployer 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

(Explanation: && means to execute commands in sequence, used to connect two or more commands. wget is to download the compressed package of automatic deployment program v3. tar -xvf is used to decompress. chmod +x is to endow the entire testnet-auto-install-v3 folder executable permission. cd (+directory) means to enter the directory, and use cd .. to return to the parent directory. ./install-ubuntu-1.0.sh executes the installation program, and only needs to be used once.)

  1. Select synchronization mode , enter 1 or 2 and press Enter

    1. Fast mode (recommended)

    2. Normal mode {more nodes, more stable, but slower}.

  2. Select the mnemonic import method

    1. Create a new mnemonic

    2. Import an existing mnemonic

      (How to choose: If you are running Validator for the first time, choose 1; if you plan to migrate existing Validators to a new VPS, or plan to increase the number of Validators, choose 2.)

  3. Enter the number of Validators you wish to run , and the program will automatically generate a corresponding number of private keys and corresponding keystore files based on the mnemonic.

  4. Enter the EVM wallet address for withdrawal , and the rewards generated by the Validators operation will be sent to this wallet at regular intervals. It can be different from the EVM wallet address used for pledge (the address used for pledge is to send the corresponding IDE to the address of the corresponding Validators, and has no other use.)

  5. Create a password to encrypt the keystore file , don't forget it. (length greater than 8 characters)

post image
  1. Repeat the EVM wallet address used for withdrawals

  2. Repeat the password used to encrypt the keystore file

  3. Write down the generated 24-character mnemonic, please keep it in a safe place.

  4. Repeat the 24-character mnemonic , which can be copied and pasted, allowing only the first four characters to be entered (if you want to be lazy)

The blue place is the storage folder of your keys (cute little rhino
The blue place is the storage folder of your keys (cute little rhino

The blue place is the storage folder of your keys (cute little rhino!!)

If there is nothing else you want to do, just exit ssh. (see above for the method) (or exit wsl)


  • (For VPS users)

Next, we transfer the validator_keys folder to the root directory of the C drive through scp (of course, it can exist in the location you want, just replace C:\ with the corresponding location, for example, C:\Users\( your username)\Documents\, in your "Documents" folder)

Enter (xxx.xxx.xxx.xxx is replaced by your IP Address)

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

You need to fill in the password you set when purchasing the server

Now you can see this folder in the root directory of the C drive

post image

This JSON file is used for Deposit, which stores the public key pubkey of the Validators you added this time, withdrawal authentication, amount (25000IDE/Validator), signature, etc.

It can be opened with Notepad. For example, my json contains the information of 5 Validators, and the blue part is the public key of the first Validator.

post image
  • (for Windows users)

open file explorer

Enter in the upper index bar

//wsl$
post image

Then open the root folder, testnet-auto-install-v3 folder in turn , you can see the validator_keys folder


Before staking, confirm whether the synchronization is complete. Confirmation method:

Connect to the VPS via ssh (for VPS users, see the method above), or run Powershell as an administrator, and enter wsl (for Windows users, see the method above)

Enter the opside-chain folder

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

run control-panel

./control-panel.sh

Enter 5, enter, 1, enter in sequence

When the Block height difference is 0, the synchronization is complete.

post image

B Deposit (make sure that the synchronization is completed)

enter the website

https://opside.network/validator/deposit

Read the instructions carefully, click Continue or Accept, and then drop the JSON file here

post image

Or paste the contents of json into the red box

post image

After confirming, click Continue, and then connect the wallet to deposit. If you run multiple nodes at a time, the amount of Rent here will display the corresponding amount. At this time, you are still connecting to a wallet for deposition, so if you apply for multiple whitelists, you need to transfer the IDE of these whitelist wallets to the one used for payment.

post image

After deposition, you need to wait for 16 to 24 hours, and then the node will be activated.


C View your Validators

Enter the website to view the status of a single Validator

https://opsi.de/validator/overview

Enter the pubkeys query in the previous JSON file. For example, this node is the Validator I added later, and the node serial number is 11375. Generally speaking, for a batch of Validators activated at the same time, the node serial numbers are continuous.

post image
post image

You can also use the Dashboard to centrally view the Validators you are running

https://pre-alpha-beacon.opside.info/dashboard

Enter the serial numbers of each node in turn. For example, this is the 20 nodes that I have been running for half a month.

post image

D Add Validators

Open the control-panel (I won’t repeat how to open it later)

Connect to the VPS via ssh (for VPS users, see the method above), or run Powershell as an administrator, and enter wsl (for Windows users, see the method above)

Enter the opside-chain folder

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

run control-panel

./control-panel.sh

Enter 6, Enter (select Validator Management), 1, Enter (Add Validators), 2, Enter (import an existing mnemonic)

Then enter the number of Validators you want to add

I added 2 here, which is the orange part.

Then there is the withdrawal EVM address you filled in when you first deployed, the password when you first deployed, and the 24-digit mnemonic

post image

You will encounter:

post image

Here you need to enter the number of Validators that have been generated by the mnemonic you imported, because each set of mnemonics can generate many private keys according to the BIP protocol, and these private keys are generated in order.

Simply, fill in the number of Validators you have created using this mnemonic.

Including, the quantity created for the first time, the quantity added before, the quantity created with this mnemonic on another server, etc.

Find the JSON file in the same way as the first deployment , but don’t get confused, you can judge the JSON file you need by checking the last modified time, or by querying the Validator status corresponding to the pubkey inside.

**Then deposit according to the previous method .


E Migration Validators

According to D

_Here you need to enter the number of Validators that have been generated by the mnemonic you imported, because each set of mnemonics can generate many private keys according to the BIP protocol, and these private keys are generated in order.

The principle of migrating Validators is to provide the private keys of the Validators you need to migrate in the new host, which is similar to the process of adding Validators in D

open control-panel

Type: 6, Enter (select Validator Management), 1, Enter (Add Validators), 2, Enter (import an existing mnemonic)

Then enter the number of Validators you want to migrate

Suppose you have 5 Validators on the old VPS, and you want to migrate 4 to the new VPS, so you should enter 4

Followed by the same EVM address, password, mnemonic

when you meet

post image

You need to do a little calculation (take a moment to think about the correspondence between mnemonics and private keys (one mnemonic can generate multiple private keys in an orderly manner))

For example, according to the previous assumption, you need to enter 1 here, which means that you will generate 4 private keys in order from the second private key on this VPS.

Of course, the migration and addition of Validators can be performed at the same time, corresponding to the previous principle.


IV Possible Questions and Answers

A How do I stop validators from running?

Select stop the clients, stop all in the control-panel (if there is no special requirement)

B What should I do if the ssh connection times out and the IP address cannot be pinged?

There may be a problem with the VPS provider. I have encountered it before. If you use Contabo, you can enter the Contabo account by entering the username (email) and password provided in the email mentioned above.

post image

Select VPS control in the left column (forgive me, the computer screen is 4k, so partial screenshots will become very large...)

post image

Find the server you can't log in to and let it restart.

After restarting, you need to select 2 restart the clients in the control-panel

C What should I do if "Permission Denied" appears?

In this case, the executable permission is probably not added to the deployment file, just enter

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

For more information, please read the official FAQ document

https://docs.opside.network/validators-pos/validator-faq

This loooooooong tutorial is coming to an end. My knowledge is limited, and it is inevitable that I will make mistakes. Please forgive me!

If you have any questions during the whole process, please private message me on twitter

https://twitter.com/nyahunters

You are welcome to raise all kinds of questions, point out mistakes, and you can also make various suggestions, or simply ask me to play with you. I will continue to modify and update this article.

Follow me and become a airdrop hunter together, nya~