Running a Testnet Validator Node

  • Minimal
    • 4 GB RAM
    • 250 GB SSD Storage
    • 1.4 GHz x2 CPU
  • Recommended
    • 8 GB RAM
    • 500 GB SSD Storage
    • 2.0 GHx x4 CPU

  • Run the following to generate a wallet. Save the mnemonic displayed on the output, which can be used for scenarios where you would like to import your wallet address.
hid-noded keys add <key-name>
  • If you already have a BIP39 mnemonic, you can import your wallet by running the following. Enter the mnemonic string in the prompt and the wallet will be imported.
hid-noded keys add <key-name> --recover

  • Initialise the node with a moniker name.
hid-noded init <moniker-name> --chain-id jagrat
Configuration files of the node are stored in the default location: $HOME/.hid-node. If you want to specify a different location, append the flag --home <hid-node-home-directory> to the above command.
  • Replace genesis.json present in <hid-node-home-directory>/config with the Testnet genesis here.
  • Copy the final peers from here. Open <hid-node-home-directory>/config/config.toml and the add the peers in the field persistent_peers.
  • Set the minimum-gas-price in <hid-node-home-directory>/config/app.toml.

Cosmovisor is a tool which will enable automatic upgrade of a blockchain, once a software upgrade governance proposal is passed. More information on Cosmovisor here.
  • Download and Install Cosmovisor
wget https://github.com/cosmos/cosmos-sdk/releases/download/cosmovisor%2Fv1.2.0/cosmovisor-v1.2.0-linux-amd64.tar.gz && tar -C /usr/local/bin/ -xzf cosmovisor-v1.2.0-linux-amd64.tar.gz
  • Export the following environment variables which are needed by cosmovisor
export DAEMON_NAME=hid-noded
export DAEMON_PATH=<Complete Path of Blockchain Binary>
export DAEMON_HOME=<Blockchain Config Path Directory>/.hid-node # Example: $HOME/.hid-node
  • Create a cosmovisor and copy the existing blockchain binary to the following location
mkdir -p $DAEMON_HOME/cosmovisor/genesis/bin
cp $DAEMON_PATH $DAEMON_HOME/cosmovisor/genesis/bin
  • Start node using Cosmovisor
cosmovisor run start

  • Acquire some $HID tokens. (TODO: Mention the approach to acquire tokens: faucet or Discord group)
  • Perform a validator creation transaction.
hid-noded tx staking create-validator \
--from <key-name> \
--amount 1000000000000uhid \
--pubkey "$(hid-noded tendermint show-validator)" \
--chain-id jagrat \
--moniker="<validator-name>" \
--commission-max-change-rate=0.01 \
--commission-max-rate=1.0 \
--commission-rate=0.07 \
--min-self-delegation="500000000000" \
--details="XXXXXXXX" \
--security-contact="XXXXXXXX" \

Having significant stake in the blockchain comes with reward in the form of tokens. The redemption of rewards needs to be done manually. Run the following to redeem rewards:
hid-noded tx distribution withdraw-rewards <validator-addr> --from <validator-wallet-address>
  • <validator-addr> - Validator's Operator address. (Prefix is hidvaloper)
  • <validator-wallet-address> - Validator's wallet address from which they have stake tokens. (Prefix hid)
If you also want to withdraw validator commission, append the --commission flag to the above command.
To check the outstanding validator rewards.
hid-noded q distribution validator-outstanding-rewards <validator-addr>
  • <validator-addr> - Validator's Operator address. (Prefix is hidvaloper)
Copy link
Edit on GitHub
On this page
Hardware Requirements
Generate Wallet
Configure the Full Node
Run Full Node using Cosmovisor
Promotion of Full Node to Validator Node
Redeem Stake Rewards