What is a Celo L2 node?
A Celo L2 node is made up of two core services, plus an optional third:- Rollup node (
op-node) — derives L2 blocks from L1 data, analogous to a consensus client. - Execution client — executes those blocks and exposes the standard Ethereum JSON-RPC API.
- Legacy L1 (optional) — serves stateful queries for blocks and transactions from before the L2 transition.
Node types
- Minimal node — follows the chain on the smallest disk footprint, pruning aggressively. It validates every block and serves latest-state queries, but little historical RPC.
- Full node — follows the chain and serves recent state. Starts from an empty datadir — bootstrap it from a published snapshot (or sync from genesis on Celo Sepolia), with no migrated L1 datadir required. This is the right choice for most operators.
- Archive node — additionally preserves all historical state, at the cost of terabytes of storage. See Running an archive node.
Execution client
- op-reth — Celo’s primary execution client, built on
reth. The guides in this section useop-reth. - op-geth — the previous execution client. Support ended on each network’s switch date; a node still running it can follow the wrong chain.
Guides
- Run a node with Docker — the fastest way to get a full node syncing (also covers building from source).
- Run an archive node — preserve access to all historical state.
- Run a public RPC node — operate a public JSON-RPC endpoint (and optionally earn rewards).
- Monitoring & metrics — enable the Grafana/Prometheus stack and watch sync health.
- Upgrades & maintenance — upgrade clients, restart safely, and back up your data.
- Troubleshooting — fixes for common node issues.
- Configuration reference — the
.envvariables and key client flags. - Network Config & Assets — bootnodes, container images, and downloadable artifacts.