Move your validator to a new host

This guide outlines the steps to safely migrate a dHealth validator from Server A (original server) to Server B (new server) without risking double signing.

Prerequisites

  • Backup your priv_validator_key.json from ~/config/ on Server A.
  • Ensure you have the recovery seed phrase for the active key on Server A (as a precaution).

Steps

1. Sync Server B

Set up Server B as a fresh node and let it fully sync with the network.

2. Stop Server A

Shut down the validator node on Server A to halt signing activity.

3. Remove Keys from Server A

Delete priv_validator_key.json from ~/config/ on Server A to prevent accidental restarts from signing.

4. Verify Server A’s Voting Power

Run dhealthd status on Server A and confirm voting power is 0.

5. Transfer Keys to Server B

Copy priv_validator_key.json from your backup to ~/config/ on Server B.

6. Start Server B

Launch the validator node on Server B. It will now take over signing.

Notes

  • Ensure Server A is stopped before starting Server B to avoid double signing (signing the same block from two nodes).
  • The chain will advance past the last height in priv_validator_state.json during the switch, eliminating double-signing risk.