Launch validator instance / validator(s)
Validators are defined by validator keys. Based on the network you are going to stake on, check Gnosis validator keys / Ethereum validator keys generation guide.
- :
- :
-
Validator Instance service config
- :
- :
- :
-
Do you want to create a new validation instance or extend exisiting instance for more validators?
Create a directory for validator instance data
sudo mkdir -p /var/lib/lighthouse/vi1-
Load keystores to
:/var/lib/lighthouse/vi1sudo /usr/local/bin/lighthouse --network mainnet account validator import --reuse-password --directory $HOME/keystores/ddk_i1 --datadir /var/lib/lighthouse/vi1sudo /usr/local/bin/lighthouse --network gnosis account validator import --reuse-password --directory $HOME/keystores/ddk_i1 --datadir /var/lib/lighthouse/vi1- Insert keystores encryption password (the one used during keystores generation) on request
- If there are keystores with different encryption password, repeat the process for each encryption password
Create a service user for the validator instance
sudo useradd --system --no-create-home --shell /bin/false lighthouse-vi1Set ownership of
/var/lib/lighthouse/vi1tovalidators-i1usersudo chown -R lighthouse-vi1:lighthouse-vi1 /var/lib/lighthouse/vi1Create configuration service file for
lighthouse-vi1service-
Open the configuration file
sudo nano /etc/systemd/system/lighthouse-vi1.service -
Copy the configuration below into the file.
[Unit] Description=Lighthouse Validator Instance (Mainnet) Wants=network-online.target After=network-online.target [Service] User=lighthouse-vi1 Group=lighthouse-vi1 Type=simple Restart=always RestartSec=5 ExecStart=/usr/local/bin/lighthouse vc \ --network mainnet \ --datadir /var/lib/lighthouse/vi1 \ --beacon-nodes http://localhost:5052 \ --suggested-fee-recipient 0xXXXXXXXXXXXXXXXX \ --graffiti "Nethermind+Lighthouse" [Install] WantedBy=multi-user.target[Unit] Description=Lighthouse Validator Instance (Gnosis Network) Wants=network-online.target After=network-online.target [Service] User=lighthouse-vi1 Group=lighthouse-vi1 Type=simple Restart=always RestartSec=5 ExecStart=/usr/local/bin/lighthouse vc \ --network gnosis \ --datadir /var/lib/lighthouse/vi1 \ --suggested-fee-recipient 0xXXXXXXXXXXXXXXXX \ --beacon-nodes http://localhost:5052 \ --graffiti "Nethermind+Lighthouse" [Install] WantedBy=multi-user.target -
Press
CTRL+XthenYthenENTERto save and exit the config file.
-
Stop running validator instance
lighthouse-vi1sudo systemctl stop lighthouse-vi1Extend
/var/lib/lighthouse/vi1for new keystoressudo /usr/local/bin/lighthouse --network mainnet account validator import --reuse-password --directory $HOME/keystores/ddk_i1 --datadir /var/lib/lighthouse/vi1sudo /usr/local/bin/lighthouse --network gnosis account validator import --reuse-password --directory $HOME/keystores/ddk_i1 --datadir /var/lib/lighthouse/vi1- You will be requested to insert keystores encryption password (the one used during keystores generation)
- If there are keystores with different encryption password, repeat the process for each encryption password
- Already existing keystores in the directory will be skipped
-
Load processed changes to the system
sudo systemctl daemon-reload -
Start the validator instance
sudo systemctl start lighthouse-vi1 -
Check the running validator instance
systemctl status lighthouse-vi1journalctl -fu lighthouse-vi1 -
Activate service to start automatically on system startup
sudo systemctl enable lighthouse-vi1Note
This option requires the following installed utils:
A guide to install the util is attached on the Github.
- Open Delayed Start shell
sudo nano /usr/local/bin/delayed-start.shConfigurate service start inside it
systemctl start lighthouse-vi1.service - Be sure,
delayed-start.serviceservice controllingdelayed-start.shis enabled for auto start with system startupsudo systemctl enable delayed-start.service
Note
This option requires the following installed utils:
A guide to install each util is attached on the Github.
Configurate Staking Manager util
- Open the configuration file
sudo nano /usr/local/etc/staking/config/clients.confIf the file is empty, generate it with command
sudo /usr/local/bin/staking.sh init - Set link to proper service. It should be as follow:
validatorServices="lighthouse-vi1"If you place more services to the category, separate them with a space, see
validatorServices="service1 service2 service3 ..."
- Open the configuration file
-
Activate service to start automatically on OS startup
- Open Start with delay util
sudo nano /usr/local/bin/delayed-start.sh - Place or uncomment a command to start the validator client(s)
/usr/local/bin/staking.sh start validators - Verify, that a service `
delayed-start.service` exists and is automatically launched on system start.sudo systemctl enable delayed-start.service
- Open Start with delay util
- Open Delayed Start shell