πΎInstallation
Lighthouse Validator client installation guide.
Create Aliases
echo "alias lighthouse-validator-log='journalctl -f -u lighthousevalidator.service -o cat | ccze -A'" >> ~/.bashrc
echo "alias lighthouse-validator-start='sudo systemctl start lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-stop='sudo systemctl stop lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-restart='sudo systemctl restart lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-status='sudo systemctl status lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-config='sudo vim /etc/systemd/system/lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-enable='sudo systemctl enable lighthousevalidator.service'" >> ~/.bashrc
echo "alias lighthouse-validator-disable='sudo systemctl disable lighthousevalidator.service'" >> ~/.bashrc
source ~/.bashrc
Lighthouse VC - Configure Service
Create lighthousevalidator
user and set permissions.
sudo useradd --no-create-home --shell /bin/false lighthousevalidator
sudo mkdir -p /var/lib/lighthouse/validators
sudo chown -R lighthousevalidator:lighthousevalidator /var/lib/lighthouse/validators
# <THIS IS NEEDED SO THE VALIDATOR CAN IMPORT THE KEYSTORES>
sudo chmod 700 /var/lib/lighthouse/validators
Configure lighthousevalidator
service using the command line flags.
sudo vim /etc/systemd/system/lighthousevalidator.service
[Unit]
Description=Lighthouse Ethereum Client - Validator Client
After=network-online.target
Wants=network-online.target
[Service]
User=lighthousevalidator
Group=lighthousevalidator
Type=simple
Restart=always
RestartSec=5
Environment=NETWORK= # E.g. mainnet or holesky
Environment=DATADIR= # Default: /var/lib/lighthouse
Environment=GRAFFITI= # E.g. For the merge!
Environment=METRICS_PORT= # Default: 5064
Environment=MONITORING_ENDPOINTS=
Environment=SUGGESTED_FEE_RECIPIENT=
Environment=BEACON_NODES=
ExecStart=/usr/local/bin/lighthouse vc \
--network ${NETWORK} \
--datadir ${DATADIR} \
--graffiti ${GRAFFITI} \
--metrics \
--metrics-port ${METRICS_PORT} \
--monitoring-endpoint ${MONITORING_ENDPOINTS} \
--enable-doppelganger-protection \
--suggested-fee-recipient ${SUGGESTED_FEE_RECIPIENT} \
--builder-proposals \
--beacon-nodes ${BEACON_NODES}
[Install]
WantedBy=multi-user.target
Start the service and check it's working as expected.
Command Aliases
daemon-reload # Reload any changes made to the lighthousevalidator.service
lighthouse-validator-enable # Enable the lighthousevalidator.service
lighthouse-validator-start # Start the lighthousevalidator.service
lighthouse-validator-status # View the status of the lighthousevalidator.service
lighthouse-validator-log # View the lighthousevalidator.service logs
At this point, the lighthousevalidator.service
is running with no keystores.
So it will just show a message saying something like No validators present
which is fine.
Last updated