Oracle DAO Nodeのセットアップ

最低限、標準のRocket Poolノードは次のものを実行します:

  • Smartnode CLI
  • Smartnode APIデーモン
  • Smartnode nodeデーモン
  • Smartnode watchtowerデーモン

オプションで、ノードは次のコンポーネントも実行できます:

  • Execution Client
  • Beacon Node
  • Validator Client
  • MEV-Boost
  • Prometheus
  • Prometheus Node Exporter
  • Grafana

これらの各コンポーネントは、標準セットアップではDockerコンテナとして、「Native Mode」セットアップではsystemdサービスとして実行でき、またはSmartnodeがそれぞれのAPIルートを介して接続できる外部管理エンティティとして実行できます。

便利なことに、Oracle DAOノードは通常のRocket Poolノードと同じですが、watchtowerデーモンが補足的なOracle DAOの役割を実行し、パフォーマンス監視のためにより多くのPrometheusメトリクスが収集されます。

初期ノードセットアップ

開始する最良の方法は、通常のRocket Poolノードの標準セットアップ手順に従うことです。 このプロセスは、ノードの設定と実行方法を決定するのに役立ちます。

ノードでminipools(validators)を実行したい場合は、通常のノードドキュメントに最初から最後まで従い、完了したらここに戻ってください。

minipoolsを実行する予定がない場合で、純粋にOracle DAOの役割のためにそれを使用する場合は、RPLのステーキングとminipool作成に関連するすべてのステップをスキップできます。 ノード登録、優れたセキュリティ体制の確立、ノードの健全性とパフォーマンスの監視、アップデート後のSmartnodeの更新などの他のステップはすべてあなたに適用されるため、先に進む前に慎重に確認する必要があります。 完了したらここに戻ってください。

追加のOracle DAO設定

Oracle DAOの責任を満たすために、プロビジョニングする必要がある2つの追加設定があります。 以下のタブから、ノードの設定に使用するモードを選択してください。

(service config) Interactive UI
(service config) Headlessly
Direct Config File

rocketpool service config TUIを開き、Smartnode and TX Feesセクションに移動します。 ここで、下部に2つのオプションが表示されます:

Archive-Mode EC URLは、Archive Execution ClientのRPC APIのHTTPエンドポイントである必要があります。 Externally-Managedモードで既にArchive ECをプライマリクライアントとして使用している場合は、この設定を無視できます。

Oracle DAO Smartnodeコマンド

Smartnode CLIのodaoコマンドグループは、Oracle DAOコントラクトおよびオンチェーンの役割とやり取りするために使用されます:

NAME:
   rocketpool odao - Manage the Rocket Pool oracle DAO

USAGE:
   rocketpool odao command [command options] [arguments...]

COMMANDS:
   status, s             Get oracle DAO status
   members, m            Get the oracle DAO members
   member-settings, b    Get the oracle DAO settings related to oracle DAO members
   proposal-settings, a  Get the oracle DAO settings related to oracle DAO proposals
   minipool-settings, i  Get the oracle DAO settings related to minipools
   propose, p            Make an oracle DAO proposal
   proposals, o          Manage oracle DAO proposals
   join, j               Join the oracle DAO (requires an executed invite proposal)
   leave, l              Leave the oracle DAO (requires an executed leave proposal)

OPTIONS:
   --help, -h  show help

status

statusコマンドは、メンバー数やプロポーザル数など、Oracle DAOに関するいくつかの詳細を単純に要約します:

The node is a member of the oracle DAO - it can create unbonded minipools, vote on DAO proposals and perform watchtower duties.

There are currently 8 member(s) in the oracle DAO.

There are 29 oracle DAO proposal(s) in total:
- 22 proposal(s) have passed and been executed
- 7 proposal(s) were cancelled, defeated, or have expired

members

membersコマンドは、Oracle DAOの各メンバーに関する詳細情報を出力します。ハンドル、連絡先情報、ノードアドレス、RPLボンド、および投票のためにプロポーザルを最後に提出した時刻が含まれます:

The oracle DAO has 8 members:

--------------------

Member ID:            kermit-2
URL:                  https://www.rocketpool.net
Node address:         0x04ddB06D1429578691F630B67A53916445DA38bE
Joined at:            31 Jul 21 23:32 EDT
Last proposal:        27 Sep 22 21:18 EDT
RPL bond amount:      5000.000000
Unbonded minipools:   0
...

member-settings

member-settingsは、Oracle DAOメンバーシップに関連する各設定可能なパラメータの現在の値を表示します:

ODAO Voting Quorum Threshold: 51.000000%
Required Member RPL Bond: 1750.000000 RPL
Max Number of Unbonded Minipools: 250
Consecutive Challenge Cooldown: 300 Blocks
Challenge Meeting Window: 900 Blocks
Cost for Non-members to Challenge Members: 1.000000 ETH

このコマンドの詳細は、Oracle DAOプロポーザルセクションで説明されています。

proposal-settings

proposal-settingsは、Oracle DAOが投票できるプロポーザルに関連する各設定可能なパラメータの現在の値を表示します:

Cooldown Between Proposals: 1h0m0s
Proposal Voting Window: 168h0m0s
Delay Before Voting on a Proposal is Allowed: 15m0s
Window to Execute an Accepted Proposal: 168h0m0s
Window to Act on an Executed Proposal: 168h0m0s

このコマンドの詳細は、Oracle DAOプロポーザルセクションで説明されています。

minipool-settings

minipool-settingsは、Rocket Poolネットワーク上のminipoolsに関連する各設定可能なパラメータの現在の値を表示します:

Scrub Period: 1h0m0s

propose

proposeコマンドは、Oracle DAOの残りのメンバーが投票できるガバナンスプロポーザルを提出するために使用されます。 これには、設定の変更やOracle DAOメンバーの変更(つまり、他のメンバーの招待またはキック)が含まれます。

このコマンドの詳細は、Oracle DAOプロポーザルセクションで説明されています。

proposals

proposalsコマンドは、既存のOracle DAOガバナンスプロポーザルとやり取りするために使用されます。 それらを表示し、作成したプロポーザルを取り消し、それらに投票し、(該当する場合)他のメンバーによって承認された後に有効にするためにそれらを実行できます:

NAME:
   rocketpool odao proposals - Manage oracle DAO proposals

USAGE:
   rocketpool odao proposals command [command options] [arguments...]

COMMANDS:
   list, l     List the oracle DAO proposals
   details, d  View proposal details
   cancel, c   Cancel a proposal made by the node
   vote, v     Vote on a proposal
   execute, x  Execute a proposal

OPTIONS:
   --help, -h  show help

このコマンドの詳細は、Oracle DAOプロポーザルセクションで説明されています。

join / leave

joinおよびleaveコマンドは、招待されたらOracle DAOに参加するため、または他のメンバーが辞任要求を承認したらOracle DAOを離れるために使用されます。

Oracle DAOへの参加

RPLボンド

Oracle DAOに参加するには、ノードウォレットに必要なメンバーシップボンドをカバーするのに十分なRPLが必要です。 これは、参加プロセスの一部としてRocket Poolのボールトにロックされます。 ボンドに必要なRPLの正確な金額は、招待時に決定され、オンボーディング前に他のOracle DAOメンバーから通知されます。

注意

他のすべてのETHおよびRPL報酬とは異なり、RPLボンドはOracle DAOを離れる際にノードの出金アドレスに送信されません。 ノードウォレット自体に送り返されます。 これを、ノードウォレットを侵害から保護するための追加のインセンティブと考えてください。

招待の受諾

ノードがセットアップされ、既存のメンバーによってOracle DAOに参加するよう招待されたら、rocketpool odao joinコマンドを使用して招待を受諾できます。 これには2つのトランザクションが含まれます:

  • ボンドに必要なRPLをロックするためのもの
  • ボンドが受信されたらOracle DAOに参加するためのもの

参加すると、watchtowerデーモンは自動的に必要な役割の実行を開始します。 そのログを確認することで確認できます(標準のDockerベースのインストールの場合はrocketpool service logs watchtowerなど)。watchtowerは4〜6分ごとに役割のループを実行し、Oracle DAOに参加すると出力に明確な変化が見られます。

次のステップ

これでOracle DAOに参加したので、次のセクションを見て、この役割でノードをテストする方法を学びましょう。