Проверка обновлений

Одна из обязанностей операторов узлов - убедиться, что ваша система обновлена последними патчами безопасности. Автоматические обновления удобны, но могут мешать работе вашего узла, поэтому может быть предпочтительнее выполнять их вручную. В любом случае, вы должны убедиться, что ваша машина регулярно обновляется!

ПРИМЕЧАНИЕ

Большую часть времени обновление не потребует, чтобы ваша система была выключена более чем на несколько минут. Вы можете быть обеспокоены тем, что такое время простоя негативно повлияет на ваш баланс Beacon Chain. Будьте уверены, штраф за пребывание в автономном режиме в течение такого короткого периода времени совершенно незначителен.

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

Также обратите внимание, что абсолютно нет шансов, что вы будете slashed, если будете автономны в течение короткого времени. Slashing происходит только в том случае, если вы атакуете сеть, а переход в автономный режим для технического обслуживания не считается атакой на сеть.

Пожалуйста, держите свои системы обновленными - не беспокойтесь о штрафах за время простоя!

Обновление вашей операционной системы

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

Ubuntu
MacOS

В терминале введите следующее:

sudo apt update

Это получит доступ к серверам пакетов и проверит, есть ли новые версии каких-либо установленных пакетов. Если доступны обновления, вывод будет выглядеть так:

Fetched 3974 kB in 2s (1641 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
12 packages can be upgraded. Run 'apt list --upgradable' to see them.

Вы можете установить обновления с помощью следующей команды:

sudo apt dist-upgrade

Это покажет вам список пакетов, которые собираются быть обновлены, и если общий размер установки достаточно велик, он покажет вам размер и попросит вас подтвердить, что вы принимаете:

12 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 51.3 MB of archives.
After this operation, 52.2 kB of additional disk space will be used.
Do you want to continue? [Y/n]

Убедитесь, что у вас достаточно места для этого, затем нажмите y и Enter, чтобы начать процесс обновления.

Как только индикатор прогресса закончится и вы вернетесь к командной строке терминала, выполните следующую команду, чтобы очистить старые версии пакетов, которые только что были заменены:

sudo apt autoremove

Затем проверьте, нужно ли перезагрузить систему:

cat /var/run/reboot-required

Если приведенная выше команда печатает No such file or directory, то перезагрузка не требуется, и вы можете пропустить шаг ниже.

Однако, если команда печатает *** System restart required ***, то вы должны перезагрузить машину, чтобы завершить применение обновлений, когда сможете:

sudo reboot

Rocket Pool корректно выключится и автоматически запустится обратно с системой после перезагрузки.

Обновление стека Smartnode

Иногда Rocket Pool выпускает новую версию стека Smartnode. Обновления могут содержать новые версии CLI или Docker-контейнеров Rocket Pool, а также новые версии клиентов Execution и Consensus.

Наиболее последовательный способ узнать о новых релизах - подписаться на сервер Discord Rocket Pool; они всегда будут опубликованы в канале Releases, и вы получите уведомление.

ПРИМЕЧАНИЕ

Обратите внимание, что выполнение apt update не обновит программное обеспечение узла. Это должно быть сделано вручную, используя шаги ниже.

СОВЕТ

Когда вы завершите обновление Smartnode, панель Grafana все еще будет указывать, что доступно обновление. Оно автоматически очистится в течение дня, когда система в следующий раз автоматически проверит наличие обновлений.

Если вы хотите очистить его немедленно после обновления, просто выполните: sudo apt update
СОВЕТ

Если вы не знаете архитектуру вашего CPU, вы можете выполнить следующую команду, чтобы найти ее:

uname -m
Вывод этой команды покажет вашу архитектуру. Обратите внимание, что x86_64 - это то же самое, что x64 и amd64. Обратите внимание, что aarch64 - это то же самое, что arm64.

Шаги для обновления зависят от того, какой режим использует ваш узел. Выберите из вариантов ниже:

Linux (Docker или Hybrid Mode)
Linux (Native Mode)
macOS (Docker или Hybrid Mode)

Остановите службы Rocket Pool:

rocketpool service stop

Загрузите новый Smartnode CLI:

Для систем x64 (большинство обычных машин):

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-amd64 -O ~/bin/rocketpool

Для систем arm64:

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-arm64 -O ~/bin/rocketpool

Теперь выполните команду установки:

rocketpool service install -d

Флаг -d говорит ему игнорировать системные зависимости, такие как Docker, так как они у вас уже есть.

Если вы хотите увидеть, что изменилось, откройте менеджер настроек - страница обзора покажет вам, что нового:

rocketpool service config

Когда закончите, снова запустите Rocket Pool:

rocketpool service start

Наконец, проверьте версию, чтобы убедиться, что CLI и стек Smartnode оба обновлены:

rocketpool service version

Вывод должен выглядеть примерно так:

Your Smartnode is currently using the Hoodi Test Network.

Rocket Pool client version: 1.5.0
Rocket Pool service version: 1.5.0
Selected Eth 1.0 client: Geth (Locally managed)
Image: ethereum/client-go:v1.10.21
Selected Eth 2.0 client: Lighthouse (Locally managed)
Image: rocketpool/lighthouse:mevboost-5ee3bc5

И клиент, и служба должны соответствовать новой версии релиза.

Ручное обновление клиента Execution или Consensus

Каждый новый релиз стека Smartnode будет содержать обновленные ссылки на последние совместимые версии Docker-контейнеров Execution и Consensus. Однако в некоторых случаях вы можете захотеть обновить один из этих клиентов до ожидания нового релиза стека Smartnode. В этом разделе показано, как это сделать.

Docker Mode
Native Mode

Обновление до новых версий клиентов легко в режиме Docker.

Начните с открытия менеджера настроек:

rocketpool service config

Чтобы изменить версию клиента Execution, перейдите в категорию Execution Client. Измените настройку Container Tag:

Чтобы изменить версию клиента Consensus, перейдите в категорию Consensus Client. Измените настройку Beacon Node Container Tag:

Когда вы довольны своими изменениями, сохраните и выйдите, как обычно. Smartnode предложит автоматически перезапустить все затронутые контейнеры.