Validator Setup
📶Running a Validator
Set environment
export MONIKER="YOUR_NODE_NAME_HERE"
export WALLET="YOUR_WALLET_NAME_HERE"
export DETAILS="YOUR_NODE_INFORMATION_HERE"
export WEBSITE="YOUR_WEBSITE_HERE"
export DISPLAY_PIC="YOUR_KEYBASE_IMAGE_PGP"
export CONTACT="YOUR_CONTACT"
Write env to .profile
echo 'export MONIKER=${MONIKER}' >> ~/.profile
echo 'export WALLET=${WALLET}' >> ~/.profile
echo 'export DETAILS=${DETAILS}' >> ~/.profile
echo 'export WEBSITE=${WEBSITE}' >> ~/.profile
echo 'export DISPLAY_PIC=${DISPLAY_PIC}' >> ~/.profile
echo 'export CONTACT=${CONTACT}' >> ~/.profile
source ~/.profile
Get Testnet WARD
You can obtain testnet tokens to fund your address from our WARD faucet:
curl -XPOST -d '{"address": "$(wardend keys show ${WALLET} -a)"}' https://faucet.buenavista.wardenprotocol.org
You can verify your balance with this command:
wardend query bank balances ${WALLET}
Create Validator
Obtain your validator public key by running the following command:
wardend comet show-validator
The output will be similar to this (with a different key):
{"@type":"/cosmos.crypto.ed25519.PubKey","key":"lR1d7YBVK5jYijOfWVKRFoWCsS4dg3kagT7LB9GnG8I="}
Create a file called validator.json
and put the details below:
{
"pubkey": {"@type":"/cosmos.crypto.ed25519.PubKey","key":"lR1d7YBVK5jYijOfWVKRFoWCsS4dg3kagT7LB9GnG8I="},
"amount": "1000000uward",
"moniker": "your-node-moniker",
"identity": "your-keybase-pgp",
"website": "optional website for your validator",
"security": "optional security contact for your validator",
"details": "optional details for your validator",
"commission-rate": "0.1",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.01",
"min-self-delegation": "1"
}
OR you can use this command to generate validator.json
tee validator.json > /dev/null <<EOF
{
"pubkey": $(wardend comet show-validator),
"amount": "1000000${DENOM}",
"moniker": "${MONIKER}",
"identity": "${DISPLAY_PIC}",
"website": "${WEBSITE}",
"security": "${CONTACT}",
"details": "${DETAILS}",
"commission-rate": "0.1",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.01",
"min-self-delegation": "1"
}
EOF
You can create your validator by using command below :
wardend tx staking create-validator ./validator.json \
--from=${WALLET} \
--chain-id=buenavista-1 \
--fees=500uward
Unjail Validator
When a validator is "jailed" for downtime, you must submit an Unjail
transaction from the operator account in order to be able to get block proposer rewards again (depends on the zone fee distribution).
wardend tx slashing unjail \
--from=${WALLET} \
--chain-id="buenavista-1" \
--fees=500uward
Halting Your Validator
When attempting to perform routine maintenance or planning for an upcoming coordinated upgrade, it can be useful to have your validator systematically and gracefully halt. You can achieve this by either setting the halt-height
to the height at which you want your node to shutdown or by passing the --halt-height
flag to wardend
. The node will shutdown with a zero exit code at that given height after committing the block.
Get last block height
curl -sX GET "https://warden-testnet-api.cryptonode.id/cosmos/base/tendermint/v1beta1/blocks/latest" -H "accept: application/json" | jq '.block.last_commit.height'
Halt Validator
wardend start --halt-height HALT_HEIGHT
Last updated
Was this helpful?