Nimbus client can be used for staking on various supported chains. Client installation is always only one, used by services with an individual configuration (different service name, data path and ports in use).
Add Nimbus validator
One-page interactive guide to install Nimbus client and configurate it for running on supported chain.
Disclaimer
This guide is for informational purposes only. The author nor website owner does not guarantee accuracy of the information in this guide and is not responsible for any damages or losses incurred by following the guide.
Launch validator instance / validator(s)
-
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/nimbus/vi1
-
Load keystores to
:/var/lib/nimbus/vi1
sudo /usr/local/bin/nimbus-validator import data-dir=/var/lib/nimbus/vi1 $HOME/keystores/ddk_i1
NOTE: If you have used different passwords for each of your validators you will get an error. Run the process multiple times, providing each of the different passwords until they are all imported. Use the accounts list command to verify.
Create a service user for the validator instance
sudo useradd --system --no-create-home --shell /bin/false nimbus-vi1
Set ownership of
/var/lib/nimbus/vi1
tovalidators-i1
usersudo chown -R nimbus-vi1:nimbus-vi1 /var/lib/nimbus/vi1
Create configuration service file for
nimbus-vi1
service-
Open the configuration file
sudo nano /etc/systemd/system/nimbus-vi1.service
-
Copy the configuration below into the file.
[Unit] Description=Nimbus Validator Instance (Ethereum Mainnet) Wants=network-online.target After=network-online.target [Service] User=teku-vi1 Group=teku-vi1 Type=simple Restart=always RestartSec=5 ExecStart=/usr/local/bin/nimbus/nimbus_validator_client \ --network=mainnet \ --data-dir=/var/lib/nimbus/vi1 \ --beacon-node=http://127.0.0.1:5052 \ --suggested-fee-recipient=0xXXXXXXXXXXXXXXXX \ --graffiti="Nethermind+Nimbus" # --payload-builder=true --payload-builder-url=https://${HOST}:${PORT}/ [Install] WantedBy=multi-user.target
See more flags at https://nimbus.guide/options.html
[Unit] Description=Nimbus Validator Instance (Gnosis Network) Wants=network-online.target After=network-online.target [Service] User=nimbus-vi1 Group=nimbus-vi1 Type=simple Restart=always RestartSec=5 ExecStart=/usr/local/bin/nimbus/nimbus_validator_client \ --network=gnosis \ --data-dir=/var/lib/nimbus/vi1 \ --beacon-node=http://127.0.0.1:5052 \ --suggested-fee-recipient=0xXXXXXXXXXXXXXXXX \ --graffiti="Nethermind+Nimbus" [Install] WantedBy=multi-user.target
See more flags at https://nimbus.guide/options.html
-
Press
CTRL
+X
thenY
thenENTER
to save and exit the config file.
-
Other configurations
Nothing to do. You are ok.Extend Staking manager clients.conf
Insertnimbus-vi1
into clients.conf file that is used by Staking Manager.sudo nano /usr/local/etc/staking/config/clients.conf
Stop running validator instance
nimbus-vi1
sudo systemctl stop nimbus-vi1
Extend
/var/lib/nimbus/vi1
for new keystoressudo /usr/local/bin/nimbus-validator import data-dir=/var/lib/nimbus/vi1 $HOME/keystores/ddk_i1
NOTE: If you have used different passwords for each of your validators you will get an error. Run the process multiple times, providing each of the different passwords until they are all imported. Use the accounts list command to verify.
-
Load processed changes to the system
sudo systemctl daemon-reload
-
Start the validator instance
sudo systemctl start nimbus-vi1
-
Check the running validator instance
systemctl status nimbus-vi1
journalctl -fu nimbus-vi1
-
Activate service to start automatically on OS startup
$ sudo systemctl enable nimbus-vi1