Setting up a Solana Validator

A deep dive into the costs, profits, pros and cost of running a validator on the Solana blockchain


Setting up a Solana Validator

Starting from scratch

What is it?

A Solana validator is a participating node of the network. Baically, it keeps track of the state of the blockchain, while participating in the consensus process by voting on new blocks.

Many people get confused between a validator and an RPC node. And both are pretty similar. The RPC node is a node that serves data to the users, thus has to also keep track of the state of the network, but it doesn't participate in the consensus process, meaning, it doesn't vote on new blocks.

However, in order to serve the most up-to-date data, it has to keep track of the state of the network, and so, also executed the transactions. But just locally, without broadcasting it to the network, thus not participating in the consensus process.

Going back to the validators, they also put up a quite fair economic presence in the ecosystem. Which is also why so many people want to run one.

For newcomers to this post, I will keep it simple. Validators are the voice of the network, they are given a speaker and trusted to speak on favor of the network wellbeing. For that matter, indivdidual users of the network, can delegate their tokens to such validators, in order to make their voice be heard louder. The higher the tokens (also known as stake), the validator has, the louder it will speak.

Translating this metaphor to real-world sceanrio, validators speak in the network by producing blocks, thus, the more blocks they product, the more they speak for the network.

Of course, speaking for the network, as pretty as it could sound, is not done just for the sake of it, but also for the economic benefits. The more blocks a validator produces, the more rewwards if would get.

It should be also said that running a validator is not for everyone as there are some technical and economic requirements that need to be met.

How much does it really cost to run a validator ?

Let's start with just the on-chain rewards and fees.

Validators can, natively, earn rewards by voting on produced blocks and by producing the right blocks.

But validators are not always capable of producing blocks due to a system design decission in solana called Leader Schedule, that is one of the keys of Solana's high TPS.

Time in solana is measured different as one might think. The comparison of day, would be epochs in solana, lasting around 2 days give or take. But these epochs are not the smallest time unit in solana, as epochs are divided into slots, each slot is approximately 400ms and it is a well divided into an smaller unit called tick, approximately 100ms.

Each slot of the epoch, has a validator assigned to it, that will be the one calling the shots (producing blocks) for that slot. As block time in solana is 400ms, we could say that a validator in average can produce a block every 400ms, without taking into account slots where no block is produced due to several other reasons, like the validator being offline or it not being up-to-date with the current state of the network.

When this happens, the validator is taken as delinquent and that affects its performance in the network, and its future slot assignment in the future.

Bear in mind, slots assigned === opportunities to produce a block === reward when the block is included in the chain. So, not being delinquent is actually a big deal.

But producing this block is not as costly as it is voting for other blocks. As we mentioned before a block can be produced every slot, and there are a lot of slots (around 432,000) in an epoc And the validator has to vote on those blocks, signing and sending a transaction, which pays fees.

These fees accrue for around 1.1 SOL daily, which montly is around 30 SOL, that, at current prices ($200), is around $6,000, and not avaialble for everyone.

Moving onto more tangible matters, the validator in essence is nothing more than a server. A server that has to perform like a top-notch computer to not miss any slot an be tagged as delinquent.

Based on Solana's (Anza) official requirements. A validator needs to have at least the following hardware:

validator-hardware

However, this is just the beggining, the least one needs to spin it up. Although let's see how much that hardware would cost nowdays.

  • CPU: For the requirements, we could be talking about an Intel Core i9 or a Ryzen 9. At current prices, around $300-$400, being a AMD Ryzen 9 7950X the most suited option.
  • RAM: For the requirements, and given we would need at least 1TB, the prices are around $300-400 as well
  • SSD: Next, we have the SSD. For this, we could be talking about a 1TB or 2TB of PCIe Gen3 x4 NVME SSD, which would cost around $100-150 each, so $400-$500.
  • Electricity: Around $200 per month (REVIEW)

So taking into account the hardware, we would be talking about an inital investment of $7k, and a fixed cost of $6.2K per month just for the most basic requirements needed, that will likely not be enough to run a competent validator.

Webs like Cogent Crypto have calculators to help you estimate the costs of running a validator.

How much can I earn running a validator?

How to get started?