Campaign | Parami Dāna Testnet Node Running Tutorial (good for round 2)
Step 0: Overview
This tutorial is divided into 5 steps and does not require any previous experience. Most of the steps are illustrated with screenshots.
- Step 1:Preparation, you will fill out a form, download a browser (if need be)
- Step 2:Renting a server, you will learn how to rent a cloud server (without actually paying if you use Google Cloud)
- Step 3:Operating the server, you will learn how to run the node program on the server
- Step 4:Validating the node, you will learn how to make your node a validator node and claim reward
- Step 5:Joining the community, stay in touch with the Parami staff and the community
Nota Bene for returning users
Welcome back, Paramilies!
Overall, there is no major change but slight changes as follows:
- For Step 2.3, it is suggested to delete data on the old server, or delete the instance and start a new one;
- For Step 3.2, it is suggested to make a new directory for parami node program
- For Step 3.3, the download command of Parami node program is changed, download at the new address
wget https://github.com/parami-protocol/parami-blockchain/releases/download/3.1.2/parami-3.1.2-4.linux-amd64.tar.gz
4. For Step 3.4, the unzip command of Parami node program is changed, unzip by the new file name (“parami-3.1.2–4.linux-amd64.tar.gz”)
tar xvf parami-3.1.2-4.linux-amd64.tar.gz
5. For Step 3.5, the parameter is changed, use the new running command (Don’t forget to change COOL_NAME with your own name)
./parami --name COOL_NAME --validator --chain dana-v5.json --base-path ./node-data --unsafe-ws-external --rpc-cors all --unsafe-rpc-external --rpc-methods=Unsafe
6. Skip Step 3.7
7. For Step 4.6, change the session key for your security. You might have to repeat Step 4.4 to get session key.
Reference
- You will find useful links and commands here
Download node-running program at
github.com/parami-protocol/parami-blockchain/releases/
Command to run the node
./parami --name COOL_NAME --validator --chain dana-v5.json --base-path ./node-data --unsafe-ws-external --rpc-cors all --unsafe-rpc-external --rpc-methods=Unsafe
Remember to remove
--rpc-methods=Unsafe
after all done.
Use Apps
polkadot.js.org/apps/ Use
wss://dana.parami.io
as the custom endpoint, top-left button.
types json
github.com/parami-protocol/parami-blockchain/blob/main/parami-types.json
Command to get session key
curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc": "2.0", "method": "author_rotateKeys", "params":[]}' localhost:9933
Step 1: Preparation
Step 1.1: Download and install the browser
- Download and install Google Chrome browser, or Firefox browser
- This tutorial uses Google Chrome as an example
🔗 Visit the website
https://www.google.cn/intl/zh-CN/chrome
⚡Browser
Please use Chrome or Firefox browser throughout, because some key steps call the wallet plugin, which only supports Chrome and Firefox. If you use other browsers, you may get stuck in some key steps.
Step 1.2: Fill in the questionnaire, join the community, with something optional
Fill in the form so that the administrators can give you test token $AD3
Join the Parami community so you can talk to the administrators
Something optional
- (Optional) Prepare a credit card (VISA/MasterCard, etc.) to get Google server credit (no charge)
- (Optional) Prepare a VPN for access to Google
Step 1.3: Set up a Polka Wallet account
Step 1.3.1: Install the browser plugin Polka and set up your own account
🔗Visit the website
- Choose “Download for Chrome” or “Download for Firefox”. My browser is Chrome so I go for the “Chrome” option. The browser will proceed to Chrome Web Store.
- In the new website of polkadot{.js} extension, click “Add to Chrome”
- Confirm “add extension”
- Continue if you see this prompt
Step 1.3.2: Add Polkadot account
- Open the “polkadot{.js}” plugin you just installed, click the “plus” sign, and “Create a new account”
You will see orange English words, these are you mnemonic seed
❗ Warning
adapt toddler sting way ***** release palm firm ***** attitude ***** solar
This is a mnemonic seed
Do not let anyone know your mnemonic seed, because it can be used to restore your account without knowing your password. Knowing your mnemonic seed means liberty to do anything to your account, including transfer token to another account. The recommended method to save is pen and paper. If you insist on a digital method, do not save in any location with internet connection.
Create an account, enter your account name, enter your password and repeat password, and click “Add Account”.
There you go! Preparation is complete!
Step 2: Rent (without paying) a server
If you have a VISA/MasterCard credit card, you can continue
Now, you need to register a Google account, or you might have registered a Google account before, but it is your first time to use Google Cloud services. In this case, Google will give you $300 credit, so we can use Google Cloud services without actually paying for a period of time (roughly 6 months)
Step 2.1: Register and sign in to your Google account
This step requires access to Google. There are many detailed tutorials about registering Google accounts, so this step will be skipped.
Step 2.2: Go to Google Cloud Platform
🔗 Visit the website
- Log in your Google account, find the “$300 credit” prompt in the website
Go to the website, enter your credit card information and submit
⚡Tips
You need fill out the payment information, usually, a credit card (like VISA or MasterCard), to receive the $300 credit, specifically, the number, billing address, expiration month and year, CCV. In addition to a credit card, you can also use PayPal or an international bank card (such as a US debit card).
After the $300 credit is used up, it stops automatically and requires manual confirmation by the user to continue the service. Don’t worry about automatic billing.
According to the practical experience, the server expense is about $40–60 a month, so $300 is enough for about six months.
After payment information, go to the console
Step 2.3: Create a new project, create a new instance
In the console, start a new project, enter that project
Go to Navigation Menu -> Compute Engine -> VM instances -> Enable this API
Create an instance
Configure a server
⚡Tips
This is our suggested configuration of a server
Operation system: Ubantu 20 or higher
Bandwidth: minimum 5M, recommended 10M and more
Hard disk: recommended between 200–250G
Memory: 8G
⚡Tips
Region and Zone
If you are in China, then choose Hong Kong, Japan, Singapore nodes
If you are in a country without network blocking, you can choose any node that is close to your actual address
Make sure your configuration is as above.
Click on “Create”, wait for a few moments as the server is starting.
Continue if you see this, it means the server is setup successfully
Continue to run cloud shell
Step 3: Access the server and connect to Parami Dāna Testnet
Step 3.1: Run the cloud shell
⚡ Tips
In the next steps, we will be entering command and executing commands in the cloud shell (ths black window below)
Welcome to the world of code, don’t panic yet! Follow the steps and we can make it work!
In order to avoid mistakes, try to
1. copy (control+c) commands into a text tool (such as Notepad for Windows, Text Editor for Mac, or Sublime Text),
2. remove the extra newlines added by Medium
3. paste (control+v) the command
(for Mac users, copy (command+c), paste (command+v)) the command, Also, commands are strictly case-sensitive.
In the cloud shell
❓What if the following prompt appears?
Solution: Click on “Connect without Identity-Aware Proxy”.
Step 3.2: Create a new directory and enter the new directory
⌨️ Enter the command
mkdir parami2
Press enter to execute the command
The command means: Create a new directory named “parami2”
⌨️ Enter the command
cd parami2
Press enter and execute the command
The command means: Switch to a new directory named “parami2”
⚡Tips
When you feel that there is too much content on the screen, you can use the “clear” command to clear the current screen, it will not affect the commands already entered
Continue if you see this window
Step 3.3: Download and unzip the node-running program
The next steps is still to enter the commands and execute them in the cloud shell
⌨️ Enter the command
wget https://github.com/parami-protocol/parami-blockchain/releases/download/3.1.2/parami-3.1.2-4.linux-amd64.tar.gz
(Note: Because Medium editor automatically add a new line here, you have to remove the new line by copying and pasting the command in a text editor and editting accordingly)
Press enter to execute the command
The command means: Download a file named “parami-3.1.2–4.linux-amd64.tar.gz” to the server
Next, a download progress bar will appear in the window, wait for a while until the progress is complete.
Step 3.4: Unzip the node-running program
⌨️ Enter the command
tar xvf parami-3.1.2-4.linux-amd64.tar.gz
Press enter to execute the command
The command means: Unzip this “parami-3.1.2–4.linux-amd64.tar.gz” archive to the server
Step 3.5: Run the Parami node program
⌨️ Enter the command
(but don’t rush, read through before executing)
./parami --name COOL_NAME --validator --chain dana-v5.json --base-path ./node-data --unsafe-ws-external --rpc-cors all --unsafe-rpc-external --rpc-methods=Unsafe
(Note: Because Medium editor automatically replace two “-”s with “ — “, you have to reverse the “ — “ back to two “-”s by copying and pasting the command in a text editor and replacing accordingly)
(Note: Because Medium editor automatically add a new line or space, you have to remove the new line by copying and pasting the command in a text editor and editting accordingly)
Note that the COOL_NAME here stands for the name of the node, you should enter the name of node you set, entering someone else’s name mean he/she takes the credit of your work.
For example
./parami --name EthanDaddy --validator --chain dana-v5.json --base-path ./node-data --unsafe-ws-external --rpc-cors all --unsafe-rpc-external --rpc-methods=Unsafe
Here I changed the name to “EthanDaddy”
Press enter and execute the command
The command means: Run the node program with many parameters
This is going to take 3–5 minutes, depending on your internet connection.
(For returning users, we have updated the code, so it takes longer than before to boost the node)
The Parami Dāna Testnet node is now up and running! Do not close the window yet, we will be back later. Continue to make your node a validator node.
❓What if the window is closed
Go back to step 3.1 and do it again
Step 3.6: Connect to Parami Dāna Testnet
Open a browser and go to the test network
🔗Visit the website
Click on the top left corner of the page, there is a tiny down arrow, click it
Click it and the following page will appear, but your window may not be the same as mine, go to the last item “DEVELOPMENT” anyway
In the “custom endpoint” of DEVELOPMENT, delete the original address and paste the following address
⌨️Enter the address
wss://dana.parami.io
Please copy and paste
Paste the address and click “Switch” to go to Parami Dana Testnet, wait a moment
Continue if you see this window (Don’t worry about the FATAL error, we’ll address it later)
Step 3.7: Resolving Errors
- After connecting, an error is reported “unknown type”
FATAL: Unable to initialize the API: createType(ChainId):: Cannot construct unknown type ChainId
Solution
🔗Visit the webpage
https://github.com/parami-protocol/parami-blockchain/blob/main/parami-types.json
Copy the content within the red box
Go back to Parami Dana Testnet and find Setting -> Developer
Paste it in the new pop-up window, click “Save” and refresh the page
The error message will no longer pop up, which means the error is solved and Parami Dana Testnet is successfully accessed.
The Parami Dāna Testnet is successfully accessed
⚡ Tips
Note the curly brackets here
If you copy the code in the red box above exactly, you should remove the curly brackets in Developer before pasting it; if you copy the code in the red box above without copying the curly brackets before and after, do not remove the curly brackets in Developer window.
Step 3.8: View your node on Polkadot Telementry
Visit the website
Find the button with three dots in the upper right corner of the webpage, click on it and the following prompt appears
Press “Ctrl+F” or “Command+F” to use your browser’s search, type in “Parami Dana”, and press “Enter”,
Click the “Parami Dāna” test site and enter
⚡Hint
If It is not Parami Testnet, not Parami PC2, those two are no longer in use
You’ll see your node running successfully!
Step 4: Make your node a finalizing node (validator)
Step 4.1: Request some initial funds
- Join the community, fill out the questionnaire, and contact the administrators to send you testing token $AD3
- Form: https://forms.gle/7poaDpBBiTfqJy1E6
- DISCORD community: https://discord.com/invite/bxFuekgvYJ
⚡ Tips
How to check your AD3 balance
In Parami Dana Testnet, follow the steps to click Accounts -> Accounts. The following window will appear, and you will see the balance
Step 4.2: Staking
- In Parami Dana Testnet, follow the steps and click on Network -> Staking -> Account Actions -> Stash
❓What if I don’t see the Staking option
Please make sure you are using Chrome/Firefox browser and have Polkadot plugin installed.
⚡ Tips
Why do you need Staking
Only after you perform Staking can you (your node) become a validator, generate blocks and claim rewards
❓What if I don’t have $AD3 tokens?
If you don’t have $AD3 tokens, please go back to step 1.2, fill out the questionnaire, join the community and contact the administrators to send you initial tokens
Enter how many $AD3 tokens you want to stake in this step
❗ Do not stake all your balance
In addition to staking, it is recommended to spare about 10–20 $AD3 in your account for later transaction fees.
For example, if you received 1000 $AD3, pledge up to 980 $AD3 instead of staking all, otherwise the subsequent operations cannot be executed with no fee.
Enter the amount and click “Bond”
Click “Sign and Submit”, the Polka Wallet plugin will pop up, enter your password and confirm
The staking is complete. Next, we need to get the Session Key from the server. This is how you tell Parami Dana Testnet that it was your account that just staked.
Step 4.3: Set Session Key (I)
After staking, the following screen will appear, click on “Session Key”, a pop-up window will appear asking for the Session Key
We will have to go back to the server to get it, and the cloud shell we just left open will come in handy at this point (refer to step 3.5)
Step 4.4: Get session key
- Go back to your Google Cloud console, keep the last cloud shell, and open a new cloud shell.
⌨️ Enter the command
curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc": "2.0", "method": "author_rotateKeys", "params":[]}' localhost:9933
(Note: Because Medium editor automatically add a new line here, you have to remove the new line by copying and pasting the command in a text editor and editting
Press enter to execute the command
The command means: Request the parameters of the ongoing session
❓What if the command doesn’t get back the proper result
Solution: You should keep the first cloud shell running, otherwise the command will be invalid; if you close the first cloud shell, please go back to Step 3.5 Run the Parami node program
Get the session key, every session is unique, mine this time is
{“jsonrpc”: “2.0”, “result”:”0xe30575c62526a082617de8aadc5689e738aa0d96a180e3ce7441171fa1f91edae26e123a29d8538acc19fddba280fcf49cea62fc6749b31ac66e10301143883ddc046ca59e6e8028912755eac029152e148f17163fb110fd0b4c38748002ec303897174fd3b4ae8628dbe0e5a816faf21f69f7b294293a56a0d7a78f39eb4846", “id”:1}
Note: it is not the whole string, only the quoted string after “result”
0xe30575c62526a082617de8aadc5689e738aa0d96a180e3ce7441171fa1f91edae26e123a29d8538acc19fddba280fcf49cea62fc6749b31ac66e10301143883ddc046ca59e6e8028912755eac029152e148f17163fb110fd0b4c38748002ec303897174fd3b4ae8628dbe0e5a816faf21f69f7b294293a56a0d7a78f39eb4846
Step 4.5: Set Session Key (II)
Go back to the Session Key window opened in step 4.3 and paste the Session Key you just got
❓What if I cannot click the Set Session Key button
Paste the session key into a text tool (such as Notepad for Windows, Text Editor for Mac, or Sublime Text), remove the spaces or lines between characters, and then paste it again as the session key.
Click “Sign and Submit”, the Polkadot Wallet plugin will pop up, enter your password and confirm
Continue if you see the window
Step 4.6: Go to the account actions and perform the authentication operation
Click “Validate” in the window
In the pop-up window, set the block commission: 3%, and click on “Validate”.
- Because we are running node on the testnet, the percentage doesn’t matter, 3% is suggested.
Click “Sign and Submit”, the Polkadot Wallet plugin will pop up, enter your password and confirm
continue if you see the window
Check if there is your Parami wallet in the “Waiting”
Step 4.7: Go back to Overview and wait for the next era
- Within 1 era (1 hour) you will see your node become the new validator
Step 5: Join the community and stay in touch!
We will give a small mainnet $AD3 reward based on your validator node’s performance.
In order to receive the reward, please make sure that you have
- filled in the node running form and correctly filled in your Parami address
https://forms.gle/7poaDpBBiTfqJy1E6
- joined the Parami Discord community to follow the latest progress and chat
https://discord.com/invite/bxFuekgvYJ
- joined the Parami Telegram community
$AD3 |Parami Protocol — English
$AD3|Parami Protocol — 中文
$AD3 |Parami Protocol — Việt Nam
$AD3 |Parami Protocol — 한국어
$AD3 |Parami Protocol — Skandinavisk
https://t.me/ParamiProtocolSCA
$AD3 |Parami Protocol — Español
https://t.me/ParamiProtocolESP
$AD3 |Parami Protocol — Portuguese
https://t.me/ParamiProtocolPOR
$AD3|Parami Protocol — پاکستان
$AD3 |Parami Protocol — Bangladeshi