[Dockerモード] RedstoneアップデートとMergeのガイド

このガイドでは、Dockerモードを使用している場合に、RedstoneアップデートとMergeに向けてノードを準備するために知っておくべきすべてのことを説明します。

v1.5.0へのアップグレード前にすべきこと

Smartnodeのv1.5.0以降にアップグレードする前に、次のチェックリストを確認して準備ができていることを確認してください。

完全なExecution Clientへの切り替え

Mergeでは独自のExecution Clientを実行する必要があるため、InfuraやPocketなどのリモートプロバイダーを使用できなくなります。 v1.5.0ではこれらがなくなり、完全なExecution Clientを選択するまでスタックを開始できません。

この変更により、v1.4のままで完全なクライアントに切り替え、同期が完了するまで待ってから、v1.5にアップグレードする必要があります。

DockerモードではクライアントをとてもVery easyに切り替えることができます。 このガイドでプロセスの手順を説明しています。

v1.5.0へのアップグレード

Smartnodeスタックをv1.5.0にアップグレードすることは、他のアップグレードと変わりません。 単にここの通常の手順に従ってください。

Smartnodeが自動的に処理すること

Dockerモードでは、v1.5.0にアップデートすると、RedstoneとMergeをサポートするために必要な変更のほとんどをSmartnodeが自動的に処理します。 手動で介入することなくSmartnodeが実行することの簡単なリストを以下に示します。

Engine API

Mergeでは、Execution ClientとConsensus Clientの通信方法が変わります。 古いHTTPまたはWebsocketベースのRPCシステムを使用する代わりに、MergeではExecution Clientが公開するEngine APIと呼ばれる新しいシステムが必要です。

これは、Consensus Clientが古いProof-of-WorkマイニングシステムをProof-of-Stakeに置き換えることを可能にする特別な接続です。これがMergeの中核です。 また、シークレットトークンで認証されているため、Consensus ClientのみがExecution Clientに接続でき、他は何も接続できません。

Smartnodeは、Execution ClientとConsensus Clientの両方で認証トークンとEngine APIのセットアップを自動的に処理します。

Fee Recipient

fee recipientは、提案するブロックのすべてのpriority feesを受け取るExecution Layerチェーン上のアドレスです。 これは、Validator Clientが最初に起動するときに提供される設定です。

Smartnodeは、v1.5にアップグレードしたときに正しいアドレスに設定することを処理し、誤ってペナルティを受けることがないように、正しいアドレスを使用していることを常に確認します。

Smoothing Poolにオプトインした場合、それがfee recipientになります。 オプトインしなかった場合、fee distributorコントラクトがfee recipientになります。

MEV-Boost

MEV-boostは、Merge後にProof-of-StakeバリデータにMEV報酬を提供するためにFlashbotsが提供するシステムです。 Rocket PoolにはMEV-BoostがSmartnodeに組み込まれており、ノードが自動的にそれを使用するように設定されるため、提案で最大の報酬が得られます。

アップグレード後に実施すべきこと

Smartnodeがほとんどの変更を処理しますが、手動で実施すべきいくつかの追加事項があります。

アップグレードが成功したことを確認

最初に実施することは、ノードが正しく動作していることを確認することです。 次の手順を検討してください。

  • rocketpool service logs eth1rocketpool service logs eth2rocketpool service logs validatorrocketpool service logs nodeでログにエラーがないか確認します。
  • ブロックエクスプローラー(Grafanaダッシュボードやhttps://beaconcha.inなど)で、まだ適切にアテステーションしていることを確認します。
    • Doppelganger保護を有効にしている場合、再起動後にいくつかのアテステーションを見逃すことを覚えておいてください。これは正常です!

フォールバックノードのセットアップ

Mergeは、InfuraやPocketなどのリモートプロバイダーと互換性がないため、プライマリがオフラインになったときにフォールバックExecution Clientとしてそれらを使用する機能を失います。

Smartnodeには依然としてフォールバックExecution Client(および現在はフォールバックConsensus Clientも)を提供する機能がありますが、自分で制御するExecution ClientとConsensus Clientを使用する必要があります。

フォールバックノードのセットアップの詳細については、フォールバックノードガイドをご覧ください。

Fee Distributorの初期化

Smoothing Poolにオプトインせず、すべてのpriority feesとMEV報酬をfee distributorコントラクトに請求する場合、最終的にそれを初期化(チェーン上にコントラクトインスタンスを作成)して、withdrawal addressに報酬を請求できるようにする必要があります。

これは比較的安価な操作で、一度だけ実行する必要があります。

ヒント

fee distributorの初期化はいつでも実行できます。 初期化するずっと前からそのアドレスに報酬を蓄積させることができ、初期化後も残高は残ります。

オーバーヘッドコストを最小限に抑えるために、ガス価格が低いときに実施することをお勧めします。

報酬を請求するには初期化する必要があります。

Smoothing Poolへのオプトイン

すぐにSmoothing Poolを利用する予定がある場合は、最初のRedstone報酬期間が終了する前にオプトインして、「適格性」量を最大化する必要があります。

オプトインは次のコマンドを実行することで実施できます。

rocketpool node join-smoothing-pool

報酬の請求

Redstoneアップグレードは、高額で問題のある古い報酬システムを、はるかに安価で、RPLの自動再ステーク(部分的および全額の両方)をサポートし、そして最も重要なことにいつでも報酬を請求できる全く新しいシステムに置き換えます。

報酬の請求に時間制限がなくなり、多くの報酬インターバルを一度に請求する方がコスト効率が良いため、Smartnodeの自動報酬請求機能は削除されました。 次のコマンドで報酬を請求できるようになります。

rocketpool node claim-rewards

これにより、Redstoneアップグレード以降のすべての報酬インターバルにわたって蓄積したすべての報酬が表示されます。

v1.4.3への復元

何らかの理由で気に入らないことがあり、以前のSmartnodeリリースに復元したい場合、簡単に実施できます。 Smartnodeはアップグレード時に以前のバージョンの設定を自動的にバックアップするため、単に以前のバージョン(ここではv1.4.3を示します)を取得して、設定をバックアップに置き換えるだけです。

  1. サービスを停止します。
rocketpool service stop
  1. v1.4.3 CLIをダウンロードします。
Linux x64
Linux arm64
Mac x64
Mac arm64
shell wget https://github.com/rocket-pool/smartnode/releases/download/v1.4.3/rocketpool-cli-linux-amd64 -O ~/bin/rocketpool
  1. v1.4.3パッケージをインストールします。
rocketpool service install -d
  1. 古い設定をv1.4.3バックアップ設定に置き換えます。
cp ~/.rocketpool/user-settings-backup.yml ~/.rocketpool/user-settings.yml
  1. すべての古い設定が現在使用されていることを確認します。
rocketpool service config
  1. 問題がなければ、Smartnodeスタックを起動します。
rocketpool service start

準備完了!古いバージョンに戻り、サービスを開始した直後にアテステーションを開始するはずです。

警告

v1.4.3は非推奨であり、Redstoneアップデートがデプロイされた後は使用できなくなります。 復元する必要がある場合は、コントラクトが更新される前にv1.5.0にアップグレードし直す計画を立ててください!