How to run a validator node on Coreum

Zeeve
Zeeve News
Published in
7 min readApr 5, 2023
validator node

As the demand for advanced blockchain protocols grows, Coreum has emerged as a fast, modular, and secure layer-1 blockchain protocol that offers a modern and highly feasible build ecosystem for web3 developers. With its enterprise-grade blockchain (EGB) standard, Coreum provides essential tools and frameworks for building future-safe and customized decentralized applications quickly.

Now to make the most out of the Coreum blockchain, you need to run nodes– fullnodes for all your development needs and validator nodes for transaction validation, block propagation and obviously to get block rewards.

This guide takes you through the step-by-step process of running your validator node on the Coreum blockchain. We’ll discuss the general approach based on coding and a no-code Coreum validator node deployment with the Zeeve platform.

Before diving into the deployment instructions, let’s quickly learn what you get becoming a validator on Coreum.

Why run a validator node on Coreum?

Running a validator node on Coreum offers numerous benefits, including robustness, scalability, and excellent staking rewards. Coreum leverages the Tendermint Consensus Engine and Cosmos SDK to provide a fast and powerful blockchain capable of processing up to 7,000 transactions per second with the support of 32 rotating validators.

As a validator, you benefit from a range of rewards and incentives that encourage active participation in the consensus and network security. For instance:

  • Voting Power: Validators receive voting power proportional to the amount of staked assets, which allows them to participate in crucial decision-making related to the network’s mechanism.
  • Incentives/Rewards: Coreum incentivizes validators with its native token, $CORE, which validators must stake at least 20,000 tokens to run a validator node. By staking tokens, validators can earn rewards of up to 25% current APR with a locking period of 183 days.
  • Contribution to the network: Furthermore, validators play a critical role in ensuring seamless blockchain operation by directly contributing to the network’s security. Validators help enforce decentralization and invariants, ensure consistent consensus on each event, and maintain the integrity and stability of the network.

How to run a validator node on Coreum?

Setup prerequisites

  • Cores-8
  • RAM- 64GB
  • Storage- 500GB- 2TB
  • Internet connection- 100+ MBPS
  1. Running validator node

Note: This guide explains node deployment on the Coreum TestNet. You can follow the same instructions for the MainNet deployment. A validator node is built and managed on top of the full node. Hence, you must be familiar with the full node instructions to run the Coreum validator node successfully.

Also, store the below files at a safe place as you’ll require these to recover the validator node.

$COREUM_HOME/config/node_key.json  
$COREUM_HOME/config/priv_validator_key.json

Run the following command to set the moniker variable to reuse:

export MONIKER="validator"

Set the waiting window between validators as it prevents double signing. Run the following command:

(meanwhile, check if $COREUM_NODE_CONFIG is properly set. It is required to be there of you are following the instructions properly)

crudini --set $COREUM_NODE_CONFIG consensus double_sign_check_height 10

Create a new account (if you don’t have an existing one). This account supports validator control, delegation, and retrieval of staking rewards/commissions. Run the following command:

cored keys add $MONIKER --keyring-backend os 
--chain-id=$COREUM_CHAIN_ID

This action will ask you to generate the keyring passphrase. Save this passphrase to a safe place since you need it to access the private key.

Here’s an example of how output should look like:

- name: validator
type: local
address: testcorevaloper15fr7w6trtx8nzkjp33tcqj922q6r82tp05gdpe
pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AwzsffiidUiFtmNng5pLTH6cj1hv4Ufa+zKZpmRVGfNk"}'
mnemonic: ""
**Important** keep this mnemonic phrase in a safe place.It's the only means to recover your account if you forget the password.nice equal sample cabbage demise online winner lady theory invest clarify organ divorce wheel patient gap group endless security price smoke insane link position

Do not create a new mnemonic phrase if you already have an existing one. Run the following command to import your phrase:

cored keys add $MONIKER --keyring-backend os --recover 
--chain-id=$COREUM_CHAIN_ID

This action will require you to “Enter keyring passphrase” and “Enter your bip39 mnemonic”.

Extract the validator-operator address for validator node creation.

cored keys show $MONIKER --bech val --address --keyring-backend os 
--chain-id=$COREUM_CHAIN_ID
# output example:
# testcorevaloper15fr7w6trtx8nzkjp33tcqj922q6r82tp05gdpe
  1. Fund your account

> We recommend you hold at least 20300 CORE tokens to be a validator on the Coreum. However, the self-delegation staking requires 20K CORE.

> As we are deploying a validator node on the Coreum Testnet, we first need to request test (dummy) tokens from the faucet.

Now, verify if you hold enough CORE to create the validator node (as said, the minimum requirement is 20K). Run the following command:

echo "catching_up: $(echo  $(cored status) | jq -r 
'.SyncInfo.catching_up')"

If the output comes catching_up: false, it means your node is synced properly.

  1. Create the validator

Run the following command to set up the validator configuration

# COREUM_VALIDATOR_DELEGATION_AMOUNT default is 20k, must be grater or equal COREUM_MIN_DELEGATION_AMOUNT.
# We suggest setting 30k, in case of slashing you will be able to unjail validator without replenishing your balance.
# (Otherwise your validator balance will went below 20k and to start it you should transfer tokens first)
export COREUM_VALIDATOR_DELEGATION_AMOUNT=20000000000 # (Required)
export COREUM_VALIDATOR_NAME="" # (Required) update it with the name which is visible on the explorer
export COREUM_VALIDATOR_WEB_SITE="" # (Optional) update with the site
export COREUM_VALIDATOR_IDENTITY="" # (Optional) update with identity id, which can generated on the site https://keybase.io/
export COREUM_VALIDATOR_COMMISSION_RATE="0.10" # (Required) Update with your commission rate
export COREUM_VALIDATOR_COMMISSION_MAX_RATE="0.20" # (Required) Update with your commission max rate
export COREUM_VALIDATOR_COMMISSION_MAX_CHANGE_RATE="0.01" # (Required) Update with your commission max change rate
export COREUM_MIN_DELEGATION_AMOUNT=20000000000 # (Required) default
20k, must be greater or equal min_self_delegation parameter on the current chain

Run the following command to create the validator.

cored tx staking create-validator \
--amount=$COREUM_VALIDATOR_DELEGATION_AMOUNT$COREUM_DENOM \
--pubkey="$(cored tendermint show-validator --chain-id=$COREUM_CHAIN_ID)" \
--moniker="$COREUM_VALIDATOR_NAME" \
--website="$COREUM_VALIDATOR_WEB_SITE" \
--identity="$COREUM_VALIDATOR_IDENTITY" \
--commission-rate="$COREUM_VALIDATOR_COMMISSION_RATE" \
--commission-max-rate="$COREUM_VALIDATOR_COMMISSION_MAX_RATE" \
--commission-max-change-rate="$COREUM_VALIDATOR_COMMISSION_MAX_CHANGE_RATE" \
--min-self-delegation=$COREUM_MIN_DELEGATION_AMOUNT \
--gas auto \
--chain-id=$COREUM_CHAIN_ID \
--from=$MONIKER \
--keyring-backend os -y -b block $COREUM_CHAIN_ID_ARGS

Troubleshooting (optional)

Error:

Error: rpc error: code = NotFound desc = rpc error: code = NotFound 
desc = account testcore15fr7w6trtx8nzkjp33tcqj922q6r82tp077avs not found: key not found

The above indicates that your node is under the sync up process; wait for it to sync fully.

Error:

Enter keyring passphrase: Error: invalid character 'o' looking for beginning of value Usage: cored tx staking create-validator [flags]

One of the reasons this error persists could be using the –home tag during the full node creation process while missing that tag during validator node creation. Also, the error can occur due to your confusion about DevNet and Testnet. Therefore, take great care of the validator commands and configurations specific to the build network.

Upon completing each step correctly, you will see your validator node at Block Explorer under the validators section.

How to run a Coreum validator node with Zeeve platform?

Zeeve offers a no-code deployment of all the leading blockchain nodes and networks, including Coreum. For this guide, we will be deploying a Coreum validator node on the TestNet. You can choose to deploy a Coreum node on MainNet as required.

To run your validator node on Coreum with the Zeeve platform, you must have access to a Coreum-supported blockchain wallet like Keplr.

Follow the given step-by-step instructions to run a new validator node on the Coreum blockchain.

  1. Use this link to download Keplr wallet. Click on “Connect to coreum-testnet-1” to install and set up the wallet.
  1. Add wallet extension to Chrome. You can either create a new wallet or import your existing wallet.

If you create a new wallet, you will receive a 12 or 24-word (as shown in the image) secret phrase that helps recover your wallet if you forget the password. Be sure to write this mnemonic in a safe place. Or else you will lose access to the wallet.

For this guide, we will import an existing wallet. Hence, we already have a mnemonic seed and Keyring phrase to log in to the wallet and continue deploying the Coreum validator node.

Next, we will connect the wallet to the Coreum TestNet, as shown in the image below:

Once the wallet is connected to the Testnet, we request “test tokens” from the faucet. Access the faucet from here. Note that 20,000 CORE tokens are the minimum delegation account to become a validator on Coreum. Therefore, requesting more than 20,000 CORE from the faucet is recommended.

Now, it’s time to fast forward your deployment using Zeeve.

  1. If you still don’t have an account, create one from here. Once your e-mail is confirmed, you can access the Zeeve dashboard.

The dashboard allows you to manage your existing services or set up a new one. This guide focuses on setting up a ‘Staking Node’ for Coreum testnet.

2. Go to “Staking Nodes” under “Buy Services” in the side panel. It will show different blockchain protocols. Click on Coreum to proceed. This action will open a page with subscription details such as cloud type, node type, cost per node, number of nodes, and the total cost (refer the image below)

Originally published at https://www.zeeve.io on March 27, 2023.

--

--

Zeeve
Zeeve News

Zeeve is an Enterprise Blockchain Management Platform that helps deploy, benchmark and manage Blockchain networks​. https://www.zeeve.io/