From 321acf08f1c2d80e2e9062dfe69feec0bd58bc4a Mon Sep 17 00:00:00 2001 From: Leandro Ferrigno Date: Thu, 23 Oct 2025 15:39:29 -0300 Subject: [PATCH 1/7] add initial hw requirements --- docs/getting-started/hardware_requirements.md | 112 ++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 docs/getting-started/hardware_requirements.md diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md new file mode 100644 index 00000000000..0f521ff0030 --- /dev/null +++ b/docs/getting-started/hardware_requirements.md @@ -0,0 +1,112 @@ +# Getting started + +Ethrex is a minimalist, stable, modular and fast implementation of the Ethereum protocol in [Rust](https://www.rust-lang.org/). +The client supports running in two different modes: + +- As a regular Ethereum execution client +- As a multi-prover ZK-Rollup (supporting SP1, RISC Zero and TEEs), where block execution is proven and the proof sent to an L1 network for verification, thus inheriting the L1's security. Support for based sequencing is currently in the works. + +We call the first one "ethrex L1" and the second one "ethrex L2". + +## Quickstart L1 + +Follow these steps to sync an ethrex node on the Hoodi testnet. + +### MacOS + +Install ethrex and lighthouse: + +```sh +# install lightouse and ethrex +brew install lambdaclass/tap/ethrex +brew install lighthouse + +# create secrets directory and jwt secret +mkdir -p ethereum/secrets/ +cd ethereum/ +openssl rand -hex 32 | tr -d "\n" | tee ./secrets/jwt.hex +``` + +On one terminal: + +```sh +ethrex --authrpc.jwtsecret ./secrets/jwt.hex --network hoodi +``` + +and on another one: + +```sh +lighthouse bn --network hoodi --execution-endpoint http://localhost:8551 --execution-jwt ./secrets/jwt.hex --checkpoint-sync-url https://hoodi.checkpoint.sigp.io --http +``` + +### Linux x86 + +Install ethrex and lighthouse: + +```sh +# create secrets directory and jwt secret +mkdir -p ethereum/secrets/ +cd ethereum/ +openssl rand -hex 32 | tr -d "\n" | tee ./secrets/jwt.hex + +# install lightouse and ethrex +curl -L https://github.com/lambdaclass/ethrex/releases/latest/download/ethrex-linux-x86_64 -o ethrex +chmod +x ethrex +curl -LO https://github.com/sigp/lighthouse/releases/download/v7.1.0/lighthouse-v7.1.0-x86_64-unknown-linux-gnu.tar.gz +tar -xvf lighthouse-v7.1.0-x86_64-unknown-linux-gnu.tar.gz +``` + +On one terminal: + +```sh +./ethrex --authrpc.jwtsecret ./secrets/jwt.hex --network hoodi +``` + +and on another one: + +```sh +./lighthouse bn --network hoodi --execution-endpoint http://localhost:8551 --execution-jwt ./secrets/jwt.hex --checkpoint-sync-url https://hoodi.checkpoint.sigp.io --http +``` + +For other CPU architectures, see the [releases page](https://github.com/lambdaclass/ethrex/releases/). + +## Quickstart L2 + +Follow these steps to quickly launch a local L2 node. For advanced options and real deployments, see the links at the end. + +### MacOS + +```sh +# install ethrex +brew install lambdaclass/tap/ethrex +ethrex l2 --dev +``` + +### Linux x86 + +```sh +# install ethrex +curl -L https://github.com/lambdaclass/ethrex/releases/latest/download/ethrex-linux-x86_64 -o ethrex +chmod +x ethrex +./ethrex l2 --dev +``` + +For other CPU architectures, see the [releases page](https://github.com/lambdaclass/ethrex/releases/). + +## Where to Start + +- **Want to run ethrex in production as an execution client?** + + See [Node operation](../l1/running) for setup, configuration, monitoring, and best practices. + +- **Interested in deploying your own L2?** + + See [L2 rollup deployment](../l2/deploy.md) for launching your own rollup, deploying contracts, and interacting with your L2. + +- **Looking to contribute or develop?** + + Visit the [Developer resources](../developers) for local dev mode, testing, debugging, advanced CLI usage, and the [CLI reference](../CLI.md). + +- **Want to understand how ethrex works?** + + Explore [L1 fundamentals](../l1/fundamentals) and [L2 Architecture](../l2/architecture) for deep dives into ethrex's design, sync modes, networking, and more. From bca4dabb71897442dfc6e7528ec44fe193707acd Mon Sep 17 00:00:00 2001 From: Leandro Ferrigno Date: Thu, 23 Oct 2025 15:42:17 -0300 Subject: [PATCH 2/7] add requirements to summary --- docs/SUMMARY.md | 2 +- docs/getting-started/hardware_requirements.md | 117 +++--------------- 2 files changed, 18 insertions(+), 101 deletions(-) diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index eec9bf3c8aa..57d7bcedee8 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -3,7 +3,7 @@ # Introduction - [Getting started](./getting-started/README.md) - - [Hardware requirements]() + - [Hardware requirements](./getting-started/hardware_requirements.md) - [Installation](./getting-started/installation/README.md) - [Binary distribution](./getting-started/installation/binary_distribution.md) - [Package manager](./getting-started/installation/package_manager.md) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index 0f521ff0030..2a590d0a509 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -1,112 +1,29 @@ -# Getting started +# Hardware Requirements -Ethrex is a minimalist, stable, modular and fast implementation of the Ethereum protocol in [Rust](https://www.rust-lang.org/). -The client supports running in two different modes: +Hardware requirements depend primarily on the **network** you’re running — for example, **Hoodi**, **Sepolia**, or **Mainnet**. -- As a regular Ethereum execution client -- As a multi-prover ZK-Rollup (supporting SP1, RISC Zero and TEEs), where block execution is proven and the proof sent to an L1 network for verification, thus inheriting the L1's security. Support for based sequencing is currently in the works. +## General Recommendations -We call the first one "ethrex L1" and the second one "ethrex L2". +Across all networks, the following apply: -## Quickstart L1 +- **Disk Type:** Use **high-performance NVMe SSDs**. For multi-disk setups, **RAID 0** improves both speed and space utilization. +- **RAM:** Sufficient memory minimizes sync bottlenecks and improves stability under load. +- **CPU:** + - 4–8 cores for standard nodes + - 8–16 cores for heavy or archival workloads -Follow these steps to sync an ethrex node on the Hoodi testnet. -### MacOS +--- -Install ethrex and lighthouse: +## Disk and Memory Requirements by Network -```sh -# install lightouse and ethrex -brew install lambdaclass/tap/ethrex -brew install lighthouse -# create secrets directory and jwt secret -mkdir -p ethereum/secrets/ -cd ethereum/ -openssl rand -hex 32 | tr -d "\n" | tee ./secrets/jwt.hex -``` -On one terminal: +| Network | Disk (Minimum) | Disk (Recommended) | RAM (Minimum) | RAM (Recommended) | +|------|------------------|--------------------|----------------|-------------------| +| **Ethereum Mainnet** | 750 GB | 2 TB | 16 GB | 32 GB | +| **Ethereum Sepolia** | 500 GB | 750 GB| 16 GB | 32 GB | +| **Ethereum Hoodi** | 200 GB | 400 GB | 16 GB | 32 GB | -```sh -ethrex --authrpc.jwtsecret ./secrets/jwt.hex --network hoodi -``` +--- -and on another one: - -```sh -lighthouse bn --network hoodi --execution-endpoint http://localhost:8551 --execution-jwt ./secrets/jwt.hex --checkpoint-sync-url https://hoodi.checkpoint.sigp.io --http -``` - -### Linux x86 - -Install ethrex and lighthouse: - -```sh -# create secrets directory and jwt secret -mkdir -p ethereum/secrets/ -cd ethereum/ -openssl rand -hex 32 | tr -d "\n" | tee ./secrets/jwt.hex - -# install lightouse and ethrex -curl -L https://github.com/lambdaclass/ethrex/releases/latest/download/ethrex-linux-x86_64 -o ethrex -chmod +x ethrex -curl -LO https://github.com/sigp/lighthouse/releases/download/v7.1.0/lighthouse-v7.1.0-x86_64-unknown-linux-gnu.tar.gz -tar -xvf lighthouse-v7.1.0-x86_64-unknown-linux-gnu.tar.gz -``` - -On one terminal: - -```sh -./ethrex --authrpc.jwtsecret ./secrets/jwt.hex --network hoodi -``` - -and on another one: - -```sh -./lighthouse bn --network hoodi --execution-endpoint http://localhost:8551 --execution-jwt ./secrets/jwt.hex --checkpoint-sync-url https://hoodi.checkpoint.sigp.io --http -``` - -For other CPU architectures, see the [releases page](https://github.com/lambdaclass/ethrex/releases/). - -## Quickstart L2 - -Follow these steps to quickly launch a local L2 node. For advanced options and real deployments, see the links at the end. - -### MacOS - -```sh -# install ethrex -brew install lambdaclass/tap/ethrex -ethrex l2 --dev -``` - -### Linux x86 - -```sh -# install ethrex -curl -L https://github.com/lambdaclass/ethrex/releases/latest/download/ethrex-linux-x86_64 -o ethrex -chmod +x ethrex -./ethrex l2 --dev -``` - -For other CPU architectures, see the [releases page](https://github.com/lambdaclass/ethrex/releases/). - -## Where to Start - -- **Want to run ethrex in production as an execution client?** - - See [Node operation](../l1/running) for setup, configuration, monitoring, and best practices. - -- **Interested in deploying your own L2?** - - See [L2 rollup deployment](../l2/deploy.md) for launching your own rollup, deploying contracts, and interacting with your L2. - -- **Looking to contribute or develop?** - - Visit the [Developer resources](../developers) for local dev mode, testing, debugging, advanced CLI usage, and the [CLI reference](../CLI.md). - -- **Want to understand how ethrex works?** - - Explore [L1 fundamentals](../l1/fundamentals) and [L2 Architecture](../l2/architecture) for deep dives into ethrex's design, sync modes, networking, and more. From 6377f33024159938961f46b1dcf8e7fa1f67caaa Mon Sep 17 00:00:00 2001 From: Leandro Ferrigno Date: Thu, 23 Oct 2025 15:52:08 -0300 Subject: [PATCH 3/7] clarify its just l1 requirements --- docs/getting-started/hardware_requirements.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index 2a590d0a509..708a02986ac 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -1,5 +1,7 @@ # Hardware Requirements +> NOTE: The guidance in this document applies to running an L1 (Ethereum) node. L2 deployments (sequencers, provers and related infra) have different hardware profiles and operational requirements — see the "L2" section below for details. + Hardware requirements depend primarily on the **network** you’re running — for example, **Hoodi**, **Sepolia**, or **Mainnet**. ## General Recommendations @@ -27,3 +29,7 @@ Across all networks, the following apply: --- +## L2 + +TBD + From 4e28861c73e6efef460cfaba079dad78f2cd5b21 Mon Sep 17 00:00:00 2001 From: Klaus Date: Thu, 23 Oct 2025 16:21:54 -0300 Subject: [PATCH 4/7] Add clarification about software vs hardware RAID --- docs/getting-started/hardware_requirements.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index 708a02986ac..b3e5894b1e0 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -8,7 +8,7 @@ Hardware requirements depend primarily on the **network** you’re running — f Across all networks, the following apply: -- **Disk Type:** Use **high-performance NVMe SSDs**. For multi-disk setups, **RAID 0** improves both speed and space utilization. +- **Disk Type:** Use **high-performance NVMe SSDs**. For multi-disk setups, **software RAID 0** is recommended to maximize speed and capacity. **Avoid hardware RAID**, which can limit NVMe performance. - **RAM:** Sufficient memory minimizes sync bottlenecks and improves stability under load. - **CPU:** - 4–8 cores for standard nodes From 56bb831948311595cce2e67d06d6b53c1dd726b4 Mon Sep 17 00:00:00 2001 From: Leandro Ferrigno Date: Thu, 30 Oct 2025 15:34:21 -0300 Subject: [PATCH 5/7] revise disk space after WAL --- docs/getting-started/hardware_requirements.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index b3e5894b1e0..cb8bb6ce64d 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -23,9 +23,9 @@ Across all networks, the following apply: | Network | Disk (Minimum) | Disk (Recommended) | RAM (Minimum) | RAM (Recommended) | |------|------------------|--------------------|----------------|-------------------| -| **Ethereum Mainnet** | 750 GB | 2 TB | 16 GB | 32 GB | -| **Ethereum Sepolia** | 500 GB | 750 GB| 16 GB | 32 GB | -| **Ethereum Hoodi** | 200 GB | 400 GB | 16 GB | 32 GB | +| **Ethereum Mainnet** | 500 GB | 1 TB | 32 GB | 64 GB | +| **Ethereum Sepolia** | 200 GB | 400 GB| 32 GB | 64 GB | +| **Ethereum Hoodi** | 50 GB | 100 GB | 32 GB | 64 GB | --- From f95c4e8ebb620d4ad196e4e8848e1ab097571379 Mon Sep 17 00:00:00 2001 From: Javier Chatruc Date: Fri, 14 Nov 2025 12:14:46 -0300 Subject: [PATCH 6/7] Remove mention of archive node for now --- docs/getting-started/hardware_requirements.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index cb8bb6ce64d..eb154a92cfa 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -10,9 +10,7 @@ Across all networks, the following apply: - **Disk Type:** Use **high-performance NVMe SSDs**. For multi-disk setups, **software RAID 0** is recommended to maximize speed and capacity. **Avoid hardware RAID**, which can limit NVMe performance. - **RAM:** Sufficient memory minimizes sync bottlenecks and improves stability under load. -- **CPU:** - - 4–8 cores for standard nodes - - 8–16 cores for heavy or archival workloads +- **CPU:** 4-8 Cores --- From 7ac78eebb575577959b8ad8199285f459f88fe68 Mon Sep 17 00:00:00 2001 From: Pablo Deymonnaz Date: Fri, 14 Nov 2025 12:24:43 -0300 Subject: [PATCH 7/7] Specify that CPU must be compatible with AVX2 instruction set. --- docs/getting-started/hardware_requirements.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/hardware_requirements.md b/docs/getting-started/hardware_requirements.md index eb154a92cfa..b81f9d3e721 100644 --- a/docs/getting-started/hardware_requirements.md +++ b/docs/getting-started/hardware_requirements.md @@ -10,7 +10,8 @@ Across all networks, the following apply: - **Disk Type:** Use **high-performance NVMe SSDs**. For multi-disk setups, **software RAID 0** is recommended to maximize speed and capacity. **Avoid hardware RAID**, which can limit NVMe performance. - **RAM:** Sufficient memory minimizes sync bottlenecks and improves stability under load. -- **CPU:** 4-8 Cores +- **CPU:** 4-8 Cores. + - x86-64 bit Processors must be compatible with the instruction set AVX2. ---