Before proceeding to create a validator, first make sure that your Initia node
is fully synced to the latest height. You can verify this by comparing your
node’s latest block height with the network’s.
1
Create the Validator Account
First, you need to create an account for your validator. This account will be
used to run the validator node. To do so, you can run the following command:You then need to fund the account with the network’s gas token.
2
Register the Validator
Once you have funded the validator account, you can send a
Once the message is submitted and successfully confirmed, your validator will be
active and participating in the network.
CreateValidator
transaction to the network to register as a validator.| Flag | Description |
|---|---|
bond_amount | This is the amount of tokens you wish to self-bond. It can be in uinit or other tokens that are whitelisted as liquidity provider (LP) tokens. |
pubkey | The public key necessary for validator consensus. Typically, this is obtained from the output of the initiad tendermint show-validator command. |
your_moniker | A human-readable name for your validator. This should match either the moniker you used in the initiad init command or a moniker registered in the ~/.initia/config/config.toml file. |
chain_id | The ID of the chain you wish to join as a validator. It must correspond with the ID specified in the genesis.json file. |
key_name | The account address or name used to submit the transaction. The output of initiad keys show <key name> should correctly display your account details. If not, verify the accuracy of your key_name or keyring settings. A fee is required to submit the transaction, paid in the blockchain’s native tokens. |
identity | An optional field for adding your Keybase identity information, which allows displaying an icon for your validator. This requires a 16-digit string associated with your Keybase account. Without this, no icon will be displayed in user interfaces. |
commission-rate | The commission rate you charge delegators, expressed as a fraction. It must be set above the min_commission_rate parameter specified by the mStaking protocol. |
commission-max-rate | The maximum commission rate you can charge as a validator. |
commission-max-change-rate | The maximum daily change in commission rate that is permissible for the validator. |
3
Checking Validator Activeness
Finally, to check whether your validator is active, you can run the following
command:If the command returns a result, your validator is active and is proposing and
signing blocks.
Only the top 100 validators in voting power are included in the active validator set. This means that even if your
CreateValidator transaction passes, your validator might not be active until it has sufficient token delegations.4
Running the Connect Oracle Sidecar
Initia validators are also required to run the Connect Oracle Sidecar. For more information on how to run the sidecar, please refer to the Skip Connect documentation.
Secure Your Validator Keys
Protecting your keys and having a contingency backup plan will help mitigate catastrophic hardware or software failures of the node. It is a good practice to test your backup plan on a testnet node in case of node failure. Also, always back up your validator node’s mnemonic andpriv_validator_key.json somewhere safe and secure in case you ever need to
recover your validator node on a new machine.