1. Каковы требования к конфигурации клиента ETH?

Архивные узлы ETH не предъявляют очень высоких требований к сети и процессору. В основном они предъявляют требования к хранилищу. Использование клиентов Geth и Nethermind для синхронизации архивных узлов требует более 12 Тбайт дискового пространства, в то время как клиенту Erigon требуется только жесткий диск емкостью 4 Тбайт. В настоящее время Heixiazi использует твердотельный накопитель Kaixia CD6 8T. Если нет требований к производительности, можно также использовать механический жесткий диск, но время синхронизации будет намного медленнее, и завершение строительства может занять более десяти дней. узла архива.

В настоящее время Heixiazi использует 2 машины с разными конфигурациями для запуска узла архива ETH, и проблем не возникло. Конфигурация машины следующая, вы можете использовать ее в качестве справки.

Основная машина

  • Материнская плата Z790ProArt

  • ЦП        13900К

  • Память 128 ГБ Hynix DDR5

  • Системный жесткий диск PM9A1 1T

  • Жесткий диск Kaixia CD6 7.68T

  • Резервный жесткий диск Механический жесткий диск Seagate 8T

Резервная машина

  • Материнская плата GALAXY B450M

  • Процессор        AMD 3600

  • Память 32 ГБ ADATA DDR4

  • Системный жесткий диск Samsung 870evo 250G

  • Жесткий диск для хранения данных Механический жесткий диск Seagate 8T

2. Зачем использовать VMware для сборки?

Основная причина в том, что некоторое время назад погода была слишком жаркой, хозяин I9 Хэйсяцзы долгое время работал 24 часа в сутки, и он забыл включить кондиционер, в результате чего стекло с горячей жареной курицей разбилось во все стороны. пол. Потому что клиент erigon и клиент teku будут использовать количество ядер ЦП. Независимо от того, используете ли вы 13900k или AMD 3600, процессор будет полностью занят, а тепло и энергопотребление будут ужасными.

По опыту Хэйсязи, большой разницы в скорости синхронизации между 13900k и amd 3600 нет. Пока используется твердотельный накопитель, он не будет отставать на слишком много блоков. При хорошей скорости сети он будет отставать. в основном отстают всего на несколько кварталов.

Таким образом, использование виртуальных машин позволяет сэкономить на счетах за электроэнергию и контролировать тепло. В то же время файлы виртуальной машины vmWare также можно быстро переносить и копировать. Это также более удобно при обновлении и отладке клиентов erigon и teku, а также гарантируется безопасность. если они взломаны, то факт взлома виртуальной машины не означает взлома хоста.

Подводя итог, можно сказать, что это: безопасно, беззаботно и энергосберегающе.

3. Обзор процесса строительства

1. Создайте виртуальную машину Ubuntu. Я использую версию Ubuntu 22.04. Программное обеспечение Centos по умолчанию слишком старо и плохо совместимо с материнскими платами ПК. Это не рекомендуется.

2. Подключите физический жесткий диск.

3. Загрузите и установите клиент исполнения ETH erigon.

4. Запустите клиент erigon для синхронизации данных блока.

5. Загрузите и установите клиент консенсуса ETH teku.

6. Запустите клиент teku для синхронизации данных блока после eth2.0.

4. Подробные записи процесса строительства.

Процесс строительства выглядит следующим образом

1. Создайте виртуальную машину Ubuntu. Думаю, это всем известно, поэтому я опущу это. .

2. Подключите физический жесткий диск.

2.1 Нажмите, чтобы добавить жесткий диск в настройках виртуальной машины.

2.2 Если это механический жесткий диск или твердотельный накопитель SATA, выберите SATA. Если это твердотельный накопитель m2, выберите NVME.

На следующем этапе выберите использование физического жесткого диска. После завершения вы можете запустить компьютер.

2.3 Подключите жесткий диск после загрузки. Соответствующие рабочие команды следующие.

// Проверяем доступный на машине жесткий диск

fдиск -l

//Создаем каталог для монтирования жесткого диска

mkdir/mnt/данные

//Подключаем жесткий диск. Обратите внимание: если это новый жесткий диск, его необходимо отформатировать в формате ext4 (mkfs -t ext4 /dev/nvme0n2).

sudo mount -t ext4 /dev/nvme0n2 /mnt/data

Если возможно, вы можете настроить его на автоматическое монтирование при запуске.

3. Загрузите и установите клиент исполнения ETH erigon.

3.1 Создайте каталог для хранения клиента erigon. Black Blind Man предпочитает размещать его в каталоге /home/wwwroot.

mkdir -p /home/wwwroot/erigon

компакт-диск /home/wwwroot/erigon

3.2 Загрузите исходный код клиента erigon и скомпилируйте его. Обратите внимание, что здесь необходимо установить среду golang, gcc и g++.

3.3 Скомпилируйте исходный код и сгенерируйте клиент erigon. Это займет немного времени. Вам нужно загрузить много пакетов зависимостей. Если в процессе возникнут ошибки, вы можете попробовать еще несколько раз.

После компиляции это, вероятно, будет выглядеть так

3.4 Запустите клиент erigon и начните синхронизацию данных. Вам нужно будет загрузить пакет данных 320G. После загрузки вам также необходимо распаковать и восстановить данные. Всего 15 этапов. После завершения всех 15 этапов создается узел eth. будет настроен.

./build/bin/erigon --datadir=/mnt/data/erigon

Клиент продолжает работать

Подведем итог

Пока вы терпеливо ждете вышеуказанных шагов, вы можете выполнить половину операции по настройке узла eth. Когда данные клиента erigon синхронизируются с ETH2.0, вам необходимо установить клиент консенсуса teku для синхронизации данных. после ETH2.0. Скорость синхронизации. Для этой машины Heixiazi начального уровня потребовалось около 12 дней при использовании механического жесткого диска и около 1 недели при использовании машины высокого класса.

PS: Статья по установке клиента teku будет опубликована позже. Друзья, кому интересно, могут начать сборку самостоятельно.