アップデートの確認

ノードオペレーターの責任の一つは、システムが最新のセキュリティパッチで最新の状態であることを確認することです。 自動更新は便利ですが、ノードの運用を妨げる可能性があるため、手動で実行することが望ましい場合があります。 いずれの場合でも、マシンに定期的にパッチを適用する必要があります!

注意

ほとんどの場合、更新によってシステムが数分以上ダウンすることはありません。 このようなダウンタイムがBeacon Chainの残高に悪影響を及ぼすことを心配されるかもしれません。 ご安心ください。このような短期間のオフラインに対するペナルティは完全に無視できます

見逃した各アテステーションは、成功したアテステーションから得られる量よりもわずかに少ない量をペナルティとして課されます。 経験則として、1時間オフラインの場合、再びオンラインになって1時間後にすべてを取り戻すことができます。

また、短期間オフラインになることでスラッシュされる可能性は絶対にありません。 スラッシングはネットワークを攻撃した場合にのみ発生し、メンテナンスのためにオフラインになることはネットワークへの攻撃とはみなされません。

システムを最新の状態に保ってください - ダウンタイムペナルティを心配しないでください!

オペレーティングシステムの更新

オペレーティングシステムのパッケージマネージャーまたはアップデートサービスを頻繁に確認して、新しい重要なセキュリティパッチを迅速に適用する必要があります。 正確な手順は各オペレーティングシステムによって異なり、システムのドキュメントで確認できますが、以下にいくつかの例を示します。

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]

これを実行するのに十分なスペースがあることを確認してから、yEnterを押してアップデートプロセスを開始します。

進行状況バーが終了してターミナルプロンプトに戻ったら、次のコマンドを実行して、置き換えられたパッケージの古いバージョンをクリーンアップします。

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やRocket Pool Dockerコンテナの新しいバージョン、およびExecution ClientとConsensus Clientの新しいバージョンが含まれることがあります。

新しいリリースについて知る最も一貫した方法は、Rocket Pool Discordサーバーを購読することです。新しいリリースは常にReleasesチャンネルに投稿され、通知を受け取ります。

注意

apt updateを実行してもノードソフトウェアは更新されないことに注意してください。 これは以下の手順を使用して手動で行う必要があります。

ヒント

Smartnodeのアップグレードが完了した後も、Grafanaダッシュボードには引き続きアップデートが利用可能であることが表示されます。 システムが次に自動的にアップデートを確認すると、1日以内に自動的にクリアされます。

アップデート後すぐにクリアしたい場合は、次を実行してください。 sudo apt update
ヒント

CPUアーキテクチャがわからない場合は、次のコマンドを実行して確認できます。

uname -m
このコマンドの出力により、アーキテクチャが表示されます。 x86_64x64およびamd64と同じであることに注意してください。 aarch64arm64と同じであることに注意してください。

アップグレードの手順は、ノードが使用するモードによって異なります。以下のオプションから選択してください。

Linux (Docker or Hybrid Mode)
Linux (Native Mode)
macOS (Docker or 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 ClientまたはConsensus Clientの手動更新

Smartnodeスタックの各新しいリリースには、Execution ClientとConsensus ClientのDockerコンテナの最新の互換性のあるバージョンへの更新された参照が含まれます。 ただし、場合によっては、新しいSmartnodeスタックのリリースを待つ前に、それらのクライアントのいずれかをアップグレードしたい場合があります。 このセクションでは、その方法を説明します。

Docker Mode
Native Mode

Dockerモードでは、新しいクライアントバージョンへの更新は簡単です。

まず、設定マネージャーを開きます。

rocketpool service config

Execution Clientのバージョンを変更するには、Execution Clientカテゴリに移動します。 Container Tag設定を変更します。

Consensus Clientのバージョンを変更するには、Consensus Clientカテゴリに移動します。 Beacon Node Container Tag設定を変更します。

変更に満足したら、通常どおり保存して終了します。 Smartnodeは影響を受けるすべてのコンテナを自動的に再起動することを提案します。