Node setup
So you want to install an SSV node? You've come to the right place!
In this section, we will walk through the process of installing the SSV Node stack using the standard Docker-based setup. This will install and configure the node itself with the monitoring stack:
SSV Node
Prometheus
Grafana
Process Overview
At a high level, here is what involved in installing an SSV Node:
Install Docker and Git
Download the SSV Node stack
Adjust your configuration
Run it!
Please note the process implies you will setup Execution and Beacon clients on your own, before installing the SSV Node.
Once you have your node running you'll be able to participate in multiple validator clusters and earn rewards 🥳
Make sure to check out Node hardware specs and requirements before proceeding with the setup.
Pre-requisites
1. Enable SSH
You will need to be able to connect to your server:
2. Install Docker
3. Install Git
4. Adjust Firewall
Make sure to expose the ports on your SSV node machine's firewall, otherwise your node won't be able to run correctly. The default P2P ports are 12001 UDP and 13001 TCP; additional ones are 15000 TCP for Metrics and 16000 TCP for Health endpoint.
If you don't want to use the default ports, they can be changed on the next step.
Install SSV Node stack
Download the SSV Node stack
Copy the configuration example file
Configure your node
Edit the ssv.env
file and adjust the settings to your needs. The minimum you need to change is:
BEACON_NODE_ADDR
- HTTP address of the Beacon node (e.g.http://1.2.3.4:5052
)ETH_1_ADDR
- WebSocket address of the Execution node (e.g.ws://1.2.3.4:8546
)NETWORK
- The network you are running on (mainnet
,holesky
)
If you already have encrypted key and password files: copy/move them to ./ssv-node-data
(default directory that will be mounted to the docker container's /data/
folder) and edit the environment variables to the correct file names, e.g.:
PRIVATE_KEY_FILE=/data/encrypted_private_key.json
PASSWORD_FILE=/data/password
If this is not done correctly, new keys will be automatically generated, and you will see a message in the console indicating this.
All existing settings are listed on the Configuration Reference page.
Custom ports
We recommend using the default ports for ease of the setup.
If you wish to change any of the ports — change them in both ssv.env
and docker-compose.yaml
, then get back to exposing those ports in your firewall.
Changes to those files will be applied after a restart of the node (if you already started your node).
Start the Node
To start your node use the following command
Or you can start it in the background, so there won't be logs in your CLI
On the first start the Node will generate a random password
and encrypted private_key
files.
Both files are needed to run SSV Node and DKG Node. You can find them under ~/ssv-stack/ssv-node-data
directory.
Backup those files on a separate device, if any of the two are lost — you will lose access to your operator without a chance to recover.
Other setup options
The same setup can be recreated manually. The steps are described on the Manual Node setup page.
Alternatively, SSV Node setup is also available using eth-docker and Stereum Launcher.
What's next?
You might want to configure MEV to increase your rewards for block proposals.
You can enable DKG node to increase your chances of being included in a cluster.
You might want to learn how to use your Monitoring stack, to stay on top of your performance.
If you run into some issues while running the node, try and take a look at the troubleshooting page.
Last updated