# SUPER detailed Opside Validators V3 deployment tutorial !! **Published by:** [Nyahunters](https://paragraph.com/@nyahunters/) **Published on:** 2023-08-04 **URL:** https://paragraph.com/@nyahunters/super-detailed-opside-validators-v3-deployment-tutorial ## Content 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.loveI Application for PoS whitelistThe 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 VPSThe 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 currencyGenerally 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 budgetChoose 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.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".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".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 mailboxRemember the IP addressThe other email is your Contabo account login information, which is needed when managing the server.B Connect to the VPS via SSHUse 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 Addresssssh 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 enterC 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 accessAttachment: 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) enterubuntu2204 config --default-user root III Deploy Opside Validators V3The following applies to users who choose VPS or use personal Windows hostsA Initial deployment of ValidatorsConnect 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.)Select synchronization mode , enter 1 or 2 and press EnterFast mode (recommended)Normal mode {more nodes, more stable, but slower}.Select the mnemonic import methodCreate a new mnemonicImport 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.)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.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.)Create a password to encrypt the keystore file , don't forget it. (length greater than 8 characters)Repeat the EVM wallet address used for withdrawalsRepeat the password used to encrypt the keystore fileWrite down the generated 24-character mnemonic, please keep it in a safe place.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 rhinoThe 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 driveThis 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.(for Windows users)open file explorer Enter in the upper index bar//wsl$ Then open the root folder, testnet-auto-install-v3 folder in turn , you can see the validator_keys folderBefore 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 foldercd /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.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 hereOr paste the contents of json into the red boxAfter 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.After deposition, you need to wait for 16 to 24 hours, and then the node will be activated.C View your ValidatorsEnter 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.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.D Add ValidatorsOpen 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 foldercd /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 mnemonicYou will encounter: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 ValidatorsAccording 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 Dopen control-panelType: 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 meetYou 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 AnswersA 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.Select VPS control in the left column (forgive me, the computer screen is 4k, so partial screenshots will become very large...)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-panelC What should I do if "Permission Denied" appears?In this case, the executable permission is probably not added to the deployment file, just enterchmod +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~ ## Publication Information - [Nyahunters](https://paragraph.com/@nyahunters/): Publication homepage - [All Posts](https://paragraph.com/@nyahunters/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@nyahunters): Subscribe to updates - [Twitter](https://twitter.com/nyahunters): Follow on Twitter