Quick reference
$VAL or $ACC.
Staking operations
Delegate more stake.Always leave enough LUME in the account to cover future fees. A validator that cannot pay for an
unjail transaction stays jailed.Setting a Keybase
identity makes your logo appear in explorers and delegation dashboards. Commission changes are capped by commission-max-change-rate and allowed once per 24 hours.Governance
Validators are expected to vote. Delegators who do not vote inherit your vote. Abstaining silently moves their stake too.yes, no, abstain, and no_with_veto.
Chain upgrades
Upgrades pass through governance and halt the chain at a set height until validators run the new binary. Missing one means downtime, and eventually a jail and slash. Testnet upgrades come more often than mainnet ones, which makes this the perfect place to practice the flow. Watch for pending upgrades.name and height. Both matter below.
Option A. Cosmovisor (recommended)
Cosmovisor swaps the binary automatically at the upgrade height without causing any downtime. Install Cosmovisor. It is a prebuilt binary, so no Go is required.name, for example v1.20.1.
Option B. Manual swap
If you are not using Cosmovisor, you must be present when the chain halts at the upgrade height.Monitoring
Health checks.
With
prometheus = true in config.toml, metrics are served on localhost:26660/metrics. Scrape them with Prometheus and build alerts in Grafana. Purpose-built options include tenderduty and cosmos-validator-watcher. Both page you on missed blocks directly.
Treat alerting as important even on testnet. At minimum, page a human on missed blocks. Practicing the alert flow here means it already works when you move to mainnet.
Troubleshooting
Re-syncing from scratch
If state becomes corrupted, wipe and re-sync. Your keys are untouched by this.unsafe-reset-all deletes chain data and resets the private validator state file. It never touches priv_validator_key.json or node_key.json. Your validator identity survives.Migrating to a new server
The dangerous part is the window where both machines could sign.- Set up the new server completely and sync it, without copying the consensus key.
- Stop the old node with
sudo systemctl stop lumeraand confirm withsystemctl is-active lumera. - Confirm the old node has stopped producing signatures in the explorer.
- Only then copy
priv_validator_key.jsonto the new server and start it. - Delete the key from the old server and disable its service with
sudo systemctl disable --now lumera.
Useful links
- Lumera releases
- Network configurations
- Validator operations manual
- SuperNode operator guide
- Testnet explorer
- Testnet snapshots
- Discord
Next steps
Run a SuperNode
Provide Cascade and Sense services alongside your validator.
Mainnet guide
Take everything you practiced here to production.