🦏
ETH Home Staking Collection
DVT Home Staking Curriculum
DVT Home Staking Curriculum
  • The DVT Home Staking Curriculum
  • Curriculum breakdown & timeline
  • Understanding ETH validators
    • Introduction to ETH Validators
    • Roles & Responsibilities of a node operator
    • Rewards and penalties
    • Importance of client diversity
    • Distributed Validator Technologies (DVTs)
    • Economics of using DVTs (WIP)
      • Diva Staking (WIP)
      • Obol (WIP)
      • SSV (WIP)
    • Bonded Validators
    • Economics of bonded validators (WIP)
  • Hardware & systems setup
    • Setup Overview
    • Hardware & system requirements
    • Procuring your hardware
    • Assemble your hardware
    • Practicing for free on Cloud VMs
      • Google Cloud
      • Alibaba Cloud
  • Linux OS, Networking, & Security
    • Install and prepare the OS
    • Networking & network security
    • Device level security setup
    • Verifying checksums
  • Installing & configuring your EL+CL clients
    • Set up and configure execution layer client
      • Nethermind
      • Besu
      • Geth
      • Erigon
      • Reth
    • Set up and configure consensus layer client
      • Teku BN
      • Nimbus BN
      • Lodestar BN
      • Lighthouse BN
      • Prysm BN
  • Keystore generation & MEV-Boost
    • Validator key generation
    • Set up and configure MEV-boost
  • Native Solo Staking Setup
    • Validator client setup
      • Teku VC
      • Nimbus VC
      • Lodestar VC
      • Lighthouse VC
      • Prysm VC
    • Depositing 32 ETH into your validator
    • Exiting your validator
  • Monitoring, Maintenance, and Updates
    • Set up monitoring suite
      • Installing & configuring Prometheus
      • Installing & configuring Node Exporter
      • Installing & configuring Grafana
      • Beaconcha.in App API
      • Client Uptime Check
    • Maintenance & Updates
      • Nethermind
      • Besu
      • Teku
      • Nimbus
      • Lodestar
      • Updating the monitoring suite
      • Preparing for Pectra
  • DVT Setup
    • Diva Staking
      • Diva Staking client setup
        • Default - All-in-one setup
        • Advanced - with standalone Lodestar VC
      • Registering your Diva node
      • Updating your Diva client
      • Monitoring your Diva Node
    • Obol
      • Techne Bronze Speedrun (Launchpad)
      • Obol + Bonded Validators (Techne Silver)
        • Obol + Lido CSM
    • SSV
      • SSV + Lido CSM (WIP)
      • SSV Operator
      • SSV Staker
  • Bonded Validators Setup
    • Lido CSM
      • Generating CSM keystores
      • Set Fee Recipient Address
        • Method 1: Configure on validator keys
        • Method 2: Configure on separate validator client
        • Verifying Fee Recipient Registered on MEV Relays
      • Upload/Remove/View validator keys
      • Rewards & bonds
      • Exiting CSM validators
        • "Lazy" exits (TESTNET ONLY)
        • Proper Exits
      • Role/Address management
      • Monitoring
      • Automations
        • CSM with ETHPillar
        • CSM with ETH Docker
        • CSM with Dappnode
    • Puffer
      • Non-Enclave: 2 ETH
    • Ether.fi
      • Receive distributed validator keyshares
    • Stader (WIP)
    • Rocketpool (WIP)
  • Liquid Staking Vaults
    • Stakewise V3
  • Mainnet
    • Mainnet Deployment
    • Heroglpyhs (WIP)
  • Best practices
    • Slashing prevention
    • Maximising uptime and performance
    • Optimising security
    • Managing your withdrawal wallet
  • Tips
    • Advanced networking
    • Downloading files from your node
  • Useful resources
    • General resources
    • Holesky Faucets
  • Automation/tools
    • ETHPillar
    • ETH Docker
    • Automated power on/off
      • Wake-on-LAN (WoL)
      • Network UPS Tools (NUT)
    • Validator Healthcheck Alerts
  • Solo Stakers Guild
    • Lido CSM+SSV+Obol (Testnet)
Powered by GitBook
On this page
  • Download and install Grafana
  • Start the Grafana server.
  • Configure the Grafana Dashboard
  • Screenshot samples of Grafana Dashboard
  • [Optional] Pushgateway
  1. Monitoring, Maintenance, and Updates
  2. Set up monitoring suite

Installing & configuring Grafana

PreviousInstalling & configuring Node ExporterNextBeaconcha.in App API

Last updated 5 months ago

Download and install Grafana

Install Grafana using the APT package manager - Download the Grafana GPG key, add Grafana to the APT sources, refresh the apt cache, and check that Grafana has been added to the APT repository.

wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt update
apt-cache policy grafana

Expected output: Ensure the top-most version matches with latest version here -

grafana:
  Installed: (none)
  Candidate: 10.0.3
  Version table:
     10.0.3 500
        500 <https://packages.grafana.com/oss/deb> stable/main amd64 Packages
     10.0.2 500
        500 <https://packages.grafana.com/oss/deb> stable/main amd64 Packages
     10.0.1 500
        500 <https://packages.grafana.com/oss/deb> stable/main amd64 Packages

Run the installation command.

sudo apt install -y grafana

Start the Grafana server.

sudo systemctl start grafana-server
sudo systemctl status grafana-server

The output should say Grafana is “active (running)”. Press CTRL-C to exit and Grafana will continue to run.

Use the following command to check the logs for any warnings or errors:

sudo journalctl -fu grafana-server -o cat | ccze -A

Press CTRL-C to exit.

If the Grafana service is running smoothly, we can now enable it to fire up automatically when rebooting the system.

sudo systemctl enable grafana-server

Configure the Grafana Dashboard

  1. go to http://<yourserverip>:3000/

  2. Enter admin for both username and password

  3. Setup dashboards - On the left menu bar, click on Dashboards >> Import

    • Execution client dashboard

      • Besu: Enter the dashboard ID - 10273

      • Geth: Enter the dashboard ID - 13877

    • Consensus client dashboard

      • Teku: Enter the dashboard ID - 16737

        • Nimbus: Paste the JSON text from the options below

  4. Select Prometheus from the "Select a Prometheus data source here" drop down field.

Screenshot samples of Grafana Dashboard

Execution client:

Consensus client:

Node Exporter:

[Optional] Pushgateway

This dependency is specific to the Nethermind execution layer client to enable the Grafana monitoring dashboard to work properly if you are following along the Nethermind documentation.

curl -LO https://github.com/prometheus/pushgateway/releases/download/v1.10.0/pushgateway-1.10.0.linux-amd64.tar.gz
echo "e2310c978da19362f2c7f91668550fdbbbb7421f7dfc8eb81a927e017f7b8d17  pushgateway-1.10.0.linux-amd64.tar.gz" | sha256sum --check

Expected output: Verify output of the checksum verification

pushgateway-1.10.0.linux-amd64.tar.gz: OK

If checksum is verified, extract the files and move them into the (/usr/local/bin) directory for neatness and best practice.

tar xvf pushgateway-1.10.0.linux-amd64.tar.gz
cd pushgateway-1.10.0.linux-amd64
sudo cp pushgateway /usr/local/bin

Then, clean up the duplicated copies.

cd
rm -r pushgateway-1.10.0.linux-amd64 pushgateway-1.10.0.linux-amd64.tar.gz

Create an account (pushgateway) without server access for Pushgateway to run as a background service.

sudo useradd --no-create-home --shell /bin/false pushgateway

Create the systemd configuration file to run Pushgateway.

sudo nano /etc/systemd/system/pushgateway.service

Paste the following contents into the configuration file.

[Unit]
Description=Prometheus Pushgateway
After=network.target
Wants=network.target

[Service]
User=pushgateway
Group=pushgateway
Type=simple
Restart=always
RestartSec=5
ExecStart=/usr/local/bin/pushgateway

[Install]
WantedBy=default.target

Once you're done, save with Ctrl+O and Enter, then exit with Ctrl+X.

Start the Pushgateway service.

sudo systemctl daemon-reload
sudo systemctl start pushgateway
sudo systemctl enable pushgateway
sudo systemctl status pushgateway

Expected output: The output should say Pushgateway is “active (running)”. Press CTRL-C to exit and Pushgateway will continue to run.

Monitor for causes of error messages otherwise.

sudo journalctl -fu pushgateway -o cat | ccze -A

Select Data Sources and click on Add data source , then choose Prometheus and enter for the URL

Nethermind: Paste the JSON text from

Lodestar: Paste the JSON text from

Lighthouse: Paste the JSON text from

Prysm: Paste the JSON text from

Node Exporter dashboard - Paste the JSON text

the latest version and the checksums list.

https://grafana.com/grafana/download
http://localhost:9090
here
Nimbus Github
Metanull
here
here
here
here
Download