Solana Mainnet Validator - Zero Downtime Migration
🚀 Zero Downtime Migration Procedure
This guide explains how to migrate an existing Solana mainnet validator to a new server without downtime.
Prerequisites
Ensure that the following two validator nodes are already set up:
- Active Mainnet Validator Node (Source, From)
- New Mainnet Validator Node (Destination, To)
⚠️ Both nodes must be set up using the
slv v init command.Make sure you already have a spare server available. If you do not have a spare server, executing this procedure could halt your active validator, causing a system crash.
Both nodes must be fully synchronized to the latest slot (verify with
solana catchup command; slot difference must be 0).In this example, the validator nodes are named as follows:
- Source (Active, From) Name:
main-node - Destination (New, To) Name:
spare-node
⚠️ Both nodes must have identical configurations, except for IP addresses (ansible_host) and names.
Public keys used for both nodes:
Setting Up the New Spare Node
Set up the new spare node by executing:
Deploying and Synchronizing the Destination Node
Deploy the destination node first:
Verify synchronization is complete and the slot difference is 0.
Verify Configuration of Source and Destination Nodes
Confirm the configurations for both nodes are identical using:
⚠️ Both nodes must have identical settings, except
ansible_host (IP address) and name.Executing Validator Node Migration
Execute the node migration with the following commands:
1. Select Solana Network
2. Enter Source Validator Name
3. Enter Destination Validator Name
Upon successful migration, you will see output similar to:
Your validator node migration is now complete.