Solana Mainnet Validator - Quickstart
Introduction
To deploy a Solana mainnet validator, you'll use the SLV command-line tool.
This quickstart guide explains how to launch and deploy a mainnet validator hot spare.
You must have Ubuntu 24.04 LTS clean installed on your server.
Preparing a Baremetal Server
While it is possible to run a Solana node on VPS or virtual machines (VM), achieving optimal performance and stable operation is challenging. Solana officially recommends the use of baremetal servers.
Mainnet validators should be provisioned to stay stable during congestion.
Below is a guideline based on the official Solana / Agave / Firedancer documentation.
Below is a guideline based on the official Solana / Agave / Firedancer documentation.
Agave Validator (official requirements and recommendations)
SOL requirements
- There is no strict minimum SOL requirement
- The Vote Account needs 0.02685864 SOL to be rent-exempt
- Voting transactions can cost up to ~1.1 SOL / day
Hardware requirements (guideline)
| Component | Validator | RPC Node (reference) |
|---|---|---|
| CPU | 2.8GHz+ / AMD Gen3+ / Intel Ice Lake+ / SHA extensions / AVX2 | 16 cores / 32 threads+ |
| RAM | 256GB+ | 512GB+ |
| Disk | NVMe Gen3 x4 or better / Accounts-Ledger-Snapshots separation recommended | Larger capacity recommended |
| GPU | Not required | Not required |
Note:
Clock speed and effective throughput are considered more important than core count.
Firedancer (Frankendancer)
Firedancer (Frankendancer) currently depends on Agave,
so at minimum it assumes the Agave recommended configuration or higher.
so at minimum it assumes the Agave recommended configuration or higher.
Minimum
- 24-core CPU @ >2.8GHz
- 256GB RAM
- 2TB NVMe (High TBW)
Recommended
- 32-core CPU @ >3GHz (AVX512 supported)
- 512GB RAM (ECC)
- Accounts / Ledger separation
- Network bandwidth of 1Gbps or higher
For a balanced cost-performance setup, Agave with a 24-core CPU and 384GB RAM is a practical guideline.
When you run the
slv v init command, you will be asked whether your baremetal server is already set up:This tutorial assumes you select
yes.If you have not yet prepared your baremetal server, please refer to the Baremetal Server Setup Guide.
Additionally, you may find these resources helpful:
Deploy Solana Mainnet Firedancer Jito Validator
New SLV deployments always use
unstaked-keypair.json as the identity key.
This is a best practice to prevent double voting and other issues.Therefore, after deployment, please use
slv v set:identity to set the authorized identity key.In most mainnet validator operations, you will use
slv v switch to change the identity key.
For no-downtime migration, please refer to this guide.Select the Solana Network
Select the Solana Network you want to deploy.
Input Server's Default Username
Most of the time, the default username is
ubuntu or root.Input Server's IP Address
Input the IP address of the server.
Set RSA Key for SSH
β» Please set the path to your RSA key. The default path is
~/.ssh/id_rsa.Then SLV will check the connection to the server. If the connection is
successful, the next step will be prompted.
Select Solana Validator Type
Select the type of Solana validator.
Set Commission Rate
Set the commission rate for your validator.
β» 1000 equals 10%.
Generate or Set the Solana Validator Identity Key
You can generate a new identity key or set an existing identity key.
This example shows how to set an existing identity key with the name "epics-sub".
Please place your identity key in
~/.slv/keys/<your-pubkey>.json.Automatic Region Detection
Next, the system will ping each block engine from your configured node to automatically detect the nearest region. By measuring actual ping values, you can select the optimal region.
Generate or Set the Solana Validator Vote Account Key
You can generate a new vote account key or set an existing vote account key.
This example shows how to set an existing vote account key.
The validator node information will be saved to
~/.slv/inventory.mainnet.validators.yml.Deploy the Validator
Once you confirm the configuration, the deployment will start.
It's done! Your Solana Validator is now deployed. It will take some time to
sync with the Solana network.
Debugging & Monitoring
After deployment, you can debug and monitor within the Solana RPC node.
You can check the status of the Solana RPC node using the following commands:
solv is an alias for agave-validator -l /mnt/ledger.
This setting is added to ~/.profile during the RPC node deployment.Change the Identity Key
After deployment, you need to change the unstaked key to the authorized identity key.
This command will change the identity key to the authorized identity key.
β» For no-downtime migration, please refer to this guide.