Налаштування архівної ноди Ethereum: Erigon, Reth, Arbitrum

Ми налаштовуємо архівні ноди для проєктів, де потрібен повний доступ до історичних даних блокчейну. Ви запускаєте `eth_call` на блоці 5 000 000 і отримуєте помилку `missing trie node` — full node не зберігає історичні стани. Звичайна повна нода тримає поточний стан і кілька тисяч останніх блоків, ал

Напрямки блокчейн-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1450
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1004
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1270
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1011

Ми налаштовуємо архівні ноди для проєктів, де потрібен повний доступ до історичних даних блокчейну. Ви запускаєте eth_call на блоці 5 000 000 і отримуєте помилку missing trie node — full node не зберігає історичні стани. Звичайна повна нода тримає поточний стан і кілька тисяч останніх блоків, але коли потрібен баланс на блоці 15 000 000 або стан смарт-контракту дворічної давності, full node безсила. Archive node зберігає state trie для кожного блоку, забезпечуючи повний доступ до історичних даних.

Archive node — це не розкіш, а необхідність для блокчейн-аналітики, аудиту та децентралізованих додатків, що працюють з історичними даними. Однак дискові вимоги колосальні:

Мережа Full Node Archive Node
Ethereum mainnet ~1 TB ~18+ TB
BSC ~1.5 TB ~3+ TB
Polygon PoS ~600 GB ~8+ TB
Arbitrum One ~300 GB ~4+ TB
Optimism ~200 GB ~2+ TB

Чому archive node вимагає 18+ ТБ диска?

Кожен блок Ethereum містить не тільки транзакції, але й знімок стану (state trie). Archive node зберігає цей знімок для кожного блоку, на відміну від full node, яка зберігає тільки останні стани. Це дозволяє виконувати eth_getBalance на будь-якому історичному блоці, але ціною величезного дискового простору. Для порівняння: повна синхронізація Ethereum mainnet з Erigon займає ~3 ТБ, а з Geth — до 18 ТБ. Erigon використовує staged sync, що радикально зменшує необхідне місце.

Коли реально потрібна archive нода?

Перш ніж розгортати archive, перевірте альтернативи: для аналітики — The Graph subgraph або Dune Analytics вже мають індексовані дані; для разових запитів — платні archive RPC (Alchemy, Infura). Але якщо у вас регулярні production-запити з високим обсягом, своя нода окупається: економія на RPC може сягати $2000/міс при 10M історичних запитів. Крім того, своя нода дає низьку затримку та конфіденційність — дані не йдуть до провайдера.

Як налаштувати Ethereum archive node з Erigon?

Erigon — альтернатива Geth, що зберігає archive дані значно компактніше (~3 TB для Ethereum). Згідно з документацією Erigon, archive режим вмикається флагом --prune=''.

Встановлення:

git clone https://github.com/ledgerwatch/erigon cd erigon make erigon 

Запуск archive режиму:

erigon \ --datadir=/data/erigon \ --chain=mainnet \ --prune='' \ --http \ --http.addr=0.0.0.0 \ --http.port=8545 \ --http.api=eth,erigon,web3,net,debug,trace,txpool \ --ws \ --torrent.download.rate=512mb \ --metrics --metrics.addr=0.0.0.0 --metrics.port=6060 

Процес налаштування включає кілька етапів:

  1. Підготовка сервера: CPU 16+ ядер, RAM 64 ГБ, диск 4 ТБ NVMe SSD, мережа 1 Гбіт/с.
  2. Встановлення та запуск Erigon з параметром --prune=''.
  3. Очікування синхронізації (5–14 днів на NVMe). Erigon синхронізується поетапно: Headers → Block Bodies → Senders → Execution (найдовший) → Hash State → Intermediate Hashes → History Index → Log Index → Tx Lookup → Finish.
  4. Перевірка працездатності через запит до старого блоку.
  5. Налаштування моніторингу та бекапів.

Як вибрати між Erigon та Reth?

Параметр Erigon Reth
Розмір диска ~3 TB ~2.5 TB
Швидкість синхронізації 5-14 днів 3-7 днів
Стабільність Висока Середня (менш зрілий)
Мова Go Rust

Reth синхронізується швидше, але на даний момент менш стабільний. Вибір залежить від пріоритетів. Якщо стабільність критична — беріть Erigon, якщо швидкість — Reth.

Моніторинг та бекапи

Після налаштування перевірте archive режим запитом до старого блоку:

curl -X POST http://localhost:8545 -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "0xF4240"],"id":1}' 

Erigon і Reth експортують Prometheus-метрики. Ключові: erigon_stages_progress, chain_head_block, system_disk_free. Налаштуйте алерт на вільне місце менше 500 ГБ — archive нода активно зростає.

Бекапи — критичні. Рекомендуємо робити снапшоти через LVM або rsync на окремий сервер. Наприклад, після зупинки ноди: rsync -avz /data/erigon/ backup:/backup/erigon/. Incremental бекапи через rclone на S3 дешевші за повне копіювання.

Що входить в налаштування archive node під ключ?

Ми пропонуємо:

  • Підбір конфігурації заліза під ваш бюджет та навантаження.
  • Встановлення та налаштування ноди (Erigon, Reth або L2).
  • Конфігурацію моніторингу та алертів.
  • Налаштування автоматичних бекапів.
  • Навантажувальне тестування та оптимізацію.
  • Документацію та навчання вашої команди.
  • Гарантію стабільної роботи та підтримку при збоях.

Терміни — від 3 до 10 днів залежно від мережі та обсягу.

Наш досвід

Більше 5 років на ринку, 50+ налаштованих нод для клієнтів. Ми розуміємо, як заощадити і не втратити в надійності. Оцінимо ваш проєкт безкоштовно — зв'яжіться з нами для консультації. Отримайте готове рішення під ключ з документацією та підтримкою.