Хранилище под узел подбирают по двум параметрам, и объём здесь не главный. Определяющим оказывается тип накопителя: твердотельный диск обязателен, потому что узел выполняет тысячи мелких случайных операций чтения и записи в секунду, а механический на такой нагрузке не справляется в принципе. Объём берут с запасом. Минимум вдвое от размера цепочки.

Случайные операции ввода-вывода — обращения к произвольным участкам диска вместо последовательного чтения; именно их количество в секунду определяет, успевает ли узел обрабатывать состояние сети.

Почему механический диск не подходит

Узел не читает цепочку подряд. Он постоянно обращается к базе состояния в произвольных местах, и каждое такое обращение на механическом диске требует физического перемещения головки, и результат предсказуем: синхронизация растягивается на недели и в какой-то момент перестаёт догонять сеть вовсе.

Твердотельный накопитель снимает проблему целиком. Разница не в процентах, а в порядках — и это тот случай, когда экономия на компоненте обесценивает весь остальной сервер.

Схема из четырёх шагов: от расчёта объёма до выбора накопителя
Схема из четырёх шагов: от расчёта объёма до выбора накопителя

Сравнение типов накопителей

Тип Пригодность и что учесть
NVMe SSD Оптимальный выбор: высокая скорость случайных операций, запас по ресурсу
SATA SSD Работает, но на крупных сетях ближе к пределу возможностей
Механический HDD Непригоден для активного узла, синхронизация не завершается
Сетевое хранилище Задержки сети добавляются к каждой операции, для узла не подходит

Сколько места потребуется

Ориентир для полного узла биткоина — около 700 гигабайт, для Ethereum в стандартной конфигурации свыше терабайта, а цифры устаревают каждый месяц, потому что цепочка растёт. Практическое правило: берите накопитель вдвое больше текущего размера цепочки, тогда его хватит на пару лет без миграции.

Отдельно учитывайте место под журналы и резервные копии конфигурации, и они занимают немного, но заполненный до отказа диск останавливает узел одинаково надёжно независимо от причины.

Режим обрезки как способ сэкономить

Обрезка хранит только последние блоки и актуальное состояние, отбрасывая старую историю, при этом объём сокращается до десятков гигабайт, при этом узел продолжает полностью проверять правила сети и остаётся полноценным участником. Ограничение одно: выдавать историческую информацию по давним транзакциям такой узел не может, и для обозревателя или аналитики он не подойдёт.

Где чаще всего ошибаются

  • Покупка диска впритык к текущему размеру цепочки без запаса на рост
  • Размещение базы узла на механическом диске ради экономии
  • Отсутствие оповещения о заполнении: узел останавливается без предупреждения
  • Игнорирование ресурса записи у бюджетных моделей накопителей

Ко мне обращался читатель, купивший накопитель ровно под текущий размер цепочки, причём через семь месяцев место закончилось, узел остановился, и переезд на новый диск занял выходные. Разница в цене между тем накопителем и вдвое большим составляла меньше, чем он потерял на простое валидатора за эти дни.

Резервное копирование данных узла

Саму цепочку резервировать не нужно: она восстанавливается синхронизацией из сети, и копируют то, что уникально для вашего узла — файлы конфигурации, ключи и служебные базы, которые заново не получить. Такая копия занимает мегабайты и делается за секунды.

Храните её вне сервера. Резервная копия на том же диске бесполезна ровно в том случае, ради которого она создавалась.

Ресурс записи и надёжность

Узел пишет на диск непрерывно, и суммарный объём записи за год исчисляется десятками терабайт, а бюджетные накопители с низким заявленным ресурсом изнашиваются быстрее, чем ожидает владелец. Смотрите на паспортный показатель суммарной записи и отслеживайте оставшийся ресурс через данные самодиагностики диска: предупреждённый отказ обходится дешевле внезапного.

Файловая система и настройки

Для базы узла подходит любая современная журналируемая файловая система, и важнее другое — не размещать её на разделе с операционной системой: переполнение системного раздела ломает не только узел, но и сервер целиком.

Отключите избыточное журналирование доступа к файлам, если оно включено по умолчанию. Узел обращается к диску постоянно, и лишние записи расходуют ресурс накопителя без всякой пользы.

Планирование расширения

Отслеживайте динамику заполнения по графикам, а не по разовым проверкам, при этом рост цепочки предсказуем, и момент, когда диска перестанет хватать, вычисляется за минуту. Планируйте замену заранее, выбирая удобное окно, вместо аварийной миграции в момент, когда узел уже встал.

Смежные темы разобраны у нас. Вот основные. Общий раздел — майнинг и инфраструктура. Шире — статьи про криптокошельки. Контроль показателей разбирает материал как отслеживать метрики работы узла, а собственную точку доступа — статья как настроить собственную точку доступа к сети.

Вопросы и ответы

Можно ли перенести базу узла на другой диск?

Да, при остановленной службе база копируется как обычные файлы, причём процедура занимает время пропорционально объёму, поэтому её планируют на окно обслуживания, и альтернатива — синхронизация с нуля на новом диске, но она обычно дольше копирования готовой базы.

Подходит ли внешний диск через USB?

Для активного узла — плохой вариант. Интерфейс добавляет задержки, а соединение подвержено обрывам, после которых база повреждается. Если другого выхода нет, используйте накопитель с качественным контроллером и обязательно настройте оповещения о проблемах записи.

Сколько места нужно для валидатора?

Столько же, сколько для обычного полного узла соответствующей сети, плюс немного под служебные данные вроде базы защиты от двойной подписи, а отдельного крупного объёма роль валидатора не требует, а вот требования к скорости диска у неё выше из-за жёстких таймингов участия.

Вердикт

Тип накопителя важнее объёма: твердотельный диск обязателен, механический не справится ни при каком запасе места, при этом берите вдвое больше текущего размера цепочки — она растёт непрерывно, и покупка впритык означает миграцию через несколько месяцев. Режим обрезки экономит место без потери функций проверки, если вам не нужна историческая информация. И следите за ресурсом записи: узел пишет на диск круглосуточно.

Актуальные размеры цепочек сверяйте напрямую. Инструкция по запуску полного узла биткоина и руководство ethereum.org по запуску узла содержат текущие требования к хранилищу.

Иван Григорьев, автор Cryptium. Практикующий разбор майнинга и инфраструктуры. Больше материалов — в Telegram-канале t.me/cryptiumru.