ParaState Node Setup Guideline
Hello for all nodes runners!
Let’s start!
Requirements
- CPU: 2.0 GHz x86–64 CPU
- Memory: 8GB RAM
- Disk: 500GB High-Speed Storage (SSD)
First steps
Install some useful tools, you can skip this step if you have all of them
# Classic
apt update
apt install -y \
software-properties-common \
wget \
cmake \
ninja-build \
curl \
git \
libboost-all-dev \
llvm-dev \
liblld-10-dev \
clang
# Install nodejs
curl -sL https://deb.nodesource.com/setup_14.x | bash
apt install -y nodejs
# Install yarn
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list
apt update && apt install -y yarn
# Install rust
curl https://sh.rustup.rs -sSf | sh -s -- -y
source $HOME/.cargo/env
rustup update nightly && rustup update stable
rustup target add wasm32-unknown-unknown --toolchain nightly
Also you need to open some ports 30333, 9933, 9944
sudo ufw allow 30333
sudo ufw allow 9933
sudo ufw allow 9944
Get your keys
You need to generate and save!! sr25519 & ed25519 keys and addresses.
# Install subkey tool
curl https://getsubstrate.io -sSf | bash -s -- --fast
cargo install --force subkey --git https://github.com/paritytech/substrate --version 2.0.1 --locked# Generate a mnemonic and see the sr25519 key and address
subkey generate --scheme sr25519# Use the same mnemonic to see ed25519 key and address
subkey inspect --scheme ed25519 "<Your Mnemonic>"
Here is an example:
Secret phrase `word word word word word word word word word word word word` is account:
Secret seed: 0x......
Public key (hex): 0x....
Public key (SS58): abc....
Account ID: 0x....
SS58 Address: abc....
Run node
Choose your node name, in my case it was ‘biba’, and run this command:
# I use tmux for running node in a background
tmux new -s stategit clone https://github.com/ParaState/frontier.git
cd frontier# Don't forget to replace 'biba' with your node name
cargo run — release — bin frontier-template-node — \
— execution=Native \
— base-path ./data \
— chain ./specs/2021–04–22-spec-raw.json \
— port 30333 \
— rpc-port 9933 \
— ws-port 9944 \
— validator \
— telemetry-url ‘wss://telemetry.polkadot.io/submit/ 0’ \
— name ‘biba’ \
— bootnodes /ip4/13.67.57.72/tcp/30333/p2p/12D3KooWNwpkJk3f4fUEc9cjSzLC5xE3opf25pjt7izfNGc1v5Tu
Wait until standart node output:
And then you can check your node here Polkadot Telemetry
Add key to your node
First you need to run command on your device with UI (your PC)
ssh -N -L 9944:127.0.0.1:9944 root@yourip
Now you will see all you need at Polkadot-JS Apps UI
Click Developer -> RPC Call then choose author and insertKey
Here you need your seed phrase and hex public keys of sr25519 and ed25519
- keytype: aura
- suri: <Your Mnemonic>
- publicKey: <0x… Your Raw sr25519 Key>
And the same actions with ed25519
- keytype: gran
- suri: <Your Mnemonic>
- publicKey: <0x… Your Raw ed25519 Key>
Also in the future you can make request to join validator set, if you have some tokens. Here is the link for request instructions
Thanks for reading!