What this module covers
- What it means to run a “node” vs a “validator”
- Execution Layer (EL) and Consensus Layer (CL) client roles
- Client pairing and communication
Node vs validator
Running a node and running a validator are related but not the same:
- A node:
- Runs execution + consensus clients
- Syncs and follows the chain
- Can exist without any validator keys
- A validator:
- Is an identity registered on the consensus layer
- Uses validator keys to perform duties
- Requires a synced node to operate correctly
Execution and Consensus clients
Running a node requires two clients that work together:
- Execution Layer (EL)
- Executes transactions and smart contracts
- Maintains Ethereum’s execution state
- Examples: Geth, Nethermind, Besu, Erigon
- Consensus Layer (CL)
- Handles proof-of-stake consensus
- Manages fork choice and finality
- Performs validator duties once keys are added
- Examples: Lighthouse, Prysm, Teku, Nimbus, Lodestar
If their connection breaks, the node will fall out of sync and validators will miss duties and penalties will accrue.
Syncing the chain
Before running validators, both clients must be fully synced. Some considerations:
- Initial sync can take hours on testnets, or a day or more on mainnet
- Checkpoint syncs for consensus clients can dramatically reduce initial sync time
During sync, clients expose a progress indicator in the logs (the exact format depends on the client implementation).
Execute this step
You are now expected to set up your node using the official Lido CSM documentation.
Follow the beginner node setup guide here:
Dappnode | Lido Docs
Dappnode is an open-source node management software with a highly abstracted user interface. Perfect for beginners or operators seeking maximum comfort in their setup.
docs.lido.fi
Complete:
- EL and CL client setup
- EL ↔ CL connection
- Initial sync
Read more here
- Nodes and clients overview https://ethereum.org/developers/docs/nodes-and-clients/
- Execution vs consensus layers https://ethereum.org/developers/docs/consensus-mechanisms/pos/
- Client diversity and recommended pairings https://clientdiversity.org/
- Checkpoint sync explanation https://ethereum.org/developers/docs/nodes-and-clients/#checkpoint-sync
End of the module
Before continuing, make sure you can confidently answer: