Skip to main content

Run Validator Node

This is an updated guide on setting up a mainnet validator once Kava Node is setup using the process outlined in Node Setup Guide. Note that this is a minimal guide and does not cover more advanced topics like sentry node architecture and double signing protection. It is strongly recommended that any parties considering validating do additional research. If you have questions, please join the active conversation in the #validators thread of our Discord Channel.

Prerequisites

Ensure that you have a Kava node setup and syncing

To check on the status of syncing:

kava status --log_format json | jq '.sync_info'

This will give output like:

{
"latest_block_hash": "920E4D32F02CFF8064D26DD7D34C65DC623F4026C65C192BBCD7DBF19AFB5630",
"latest_app_hash": "442E7E55982109D9F73467EA0E374312B402AE620DEC81CB3441E949ED0D0A29",
"latest_block_height": "2437",
"latest_block_time": "2022-05-25T23:07:36.752766828Z",
"earliest_block_hash": "9D2AF876309BB9174604004A813DCFEE94F4947B08C5BB4C1A042F318488851E",
"earliest_app_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"earliest_block_height": "1",
"earliest_block_time": "2022-05-25T17:00:00Z",
"catching_up": true
}

The main thing to watch is that the block height is increasing. Once you are caught up with the chain, catching_up will become false. At that point, you can start using your node to create a validator.

Creating a Validator

First, create a wallet, which will give you a private key / public key pair for your node.

# Replace <your-key-name> with a name for your key that you will remember
kava keys add <your-key-name>
# To see a list of wallets on your node
kava keys list

Be sure to write down the mnemonic for your wallet and store it securely. Losing your mnemonic could result in the irrecoverable loss of KAVA tokens.

To see the options when creating a validator:

kava tx staking create-validator -h

An example of creating a validator with 50KAVA self-delegation and 10% commission:

# Replace <key_name> with the key you created previously
kava tx staking create-validator \
--amount=50000000ukava \
--pubkey=$(kava tendermint show-validator) \
--moniker="choose moniker" \
--website="optional website for your validator" \
--details="optional details for your validator" \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1" \
--from=<your-key-name> \
--chain-id=kava_2222-10 \
--gas=auto \
--gas-adjustment=1.4

To check on the status of your validator:

kava status --log_format json | jq '.ValidatorInfo'

After you have completed this guide, your validator should be up and ready to receive delegations. Note that only the top 100 validators by weighted stake (self-delegations + other delegations) are eligible for block rewards. To view the current validator list, checkout one of the Kava block explorers:

If you have questions, please join the active conversation in the #validators thread of the Kava Discord Channel.