Nimbus

Installing and configuring the Nimbus Beacon Node.

Nimbus

Nimbus is a research-driven Ethereum client designed for efficiency and resource-constrained devices. It is written in Nim and is optimized to perform well even on lightweight hardware like Raspberry Pis or mobile devices, making it an incredibly robust choice for institutional setups that prioritize low overhead.

🛡️ Role: Nimbus combines the Beacon Node and Validator Client into a single binary (though they can be run separately). This guide configures it primarily as a Beacon Node to drive your Execution Client.


1. Install Dependencies

Nimbus requires a few standard libraries to handle cryptographic operations and networking.

Bash

# Update repositories
sudo apt update

# Install build tools and libraries
sudo apt install -y curl build-essential libpcre3-dev

2. Download & Install

We will download the latest pre-built binary from the official Status.im repository.

A. Create the Application Directory

Bash

B. Set Permissions Ensure the ethereum user owns the directory.

Bash


3. Configure Systemd Service

We will configure Nimbus to run as a background service.

⚡ Checkpoint Sync: Nimbus handles checkpoint sync efficiently. We use the --trusted-node-url flag to point to a public beacon node for instant syncing.

Create the service file:

Bash

Paste the following configuration:

Ini, TOML

🔍 Flag Explanation:

  • --web3-url: The connection to Geth/Nethermind/Besu (Engine API).

  • --trusted-node-url: Trusted endpoint to perform a fast Checkpoint Sync.

  • --rest: Enables the REST API (Essential for checking sync status).

  • --metrics: Enables Prometheus metrics.

Note: Nimbus uses a helper script (run-mainnet-beacon-node.sh) included in the release to simplify setting default mainnet flags.


4. Start the Service

Reload the systemd daemon and start the beacon node.

Bash


5. Verify Status

Check the logs to ensure Nimbus is syncing and connected.

Bash

Expected Output:

  1. Eth1 Chain: Eth1 chain monitored (Success! It found your EL).

  2. Syncing: Syncing in progress or Slot processed.

  3. Peers: Peers: 50 indicates a healthy network connection.

Last updated