erpc validator と erpc rpc でバリデータと RPC ノードを動かす
erpc rpc は 18 のチェーンで RPC ノードを、erpc validator はそのうち 13 のチェーンでバリデータを動かします。どのチェーンでも同じサブコマンドで操作できます。ノードの用意から撤去までのこれらのコマンドは無料で、アカウントも要りません。このページは、プレリリースの ERPC CLI
v0.1.0-rc.4 について説明しています。実際のホストでの受け入れ確認は、まだ進めている途中です。チェーンごとの状態は、チェーンごとの検証の状況と各チェーンのガイドで確認できます。ノードをデプロイする
init がサーバーを準備し、deploy がノードをインストールして起動します。Ethereum の RPC ノードは、何も入っていない Ubuntu サーバー(24.04 以降)から始められます。bash
チェーンによっては、先に用意しておく物があり、それぞれのチェーンのガイドに書いてあります。新しい Solana のバリデータや RPC ノードには、3 つのファイルシステムのマウントと、1Password に入れておいた鍵が必要です。
チェーン、ネットワーク、ホストを選ぶ
チェーンは
--chain、ERPC_CHAIN、または default_chain の設定で、ネットワークは -n で、ホストは --name で選びます。mainnet に切り替えるときは、コマンドラインに --chain を書く必要があります。- ノードのコマンドは、
erpc validator(別名v)、erpc rpc(別名r)、erpc node(別名n。Avalanche と Sui 用)で実行します。 - コマンドグループを動詞なしで実行すると(
erpc validator)、その動詞の一覧が表示されます。 - ノードのコマンドでは、
--jsonをコマンドより前に置く必要があります(erpc --json rpc …)。
どのチェーンでも使えるコマンド
solv のバックエンドで記録された Solana のバリデータでは、このうち
init、deploy、list、status だけが使えます。対応チェーンとチェーンごとのガイド
各チェーンのクライアントは ノードの動かし方 に載っています。
erpc がサーバーに求めること
- erpc は、あなたの鍵で、sudo のできるユーザー(既定は
ubuntu)として SSH でログインします。鍵は 1Password の SSH エージェントかSSH_AUTH_SOCKから使い、初めて接続したときにホスト鍵を固定します。 - サーバーには
/usr/bin/python3と、sudoがパスワードを求めないログインユーザーが必要です。 /optは、Ubuntu の初期状態と同じく、root が所有し、グループにもその他のユーザーにも書き込めない実体のディレクトリとして、あらかじめ在る必要があります。erpc はこれを作りません。/opt/erpcと、erpc がその中に作るrunsとuploadsのディレクトリにも同じ規則が掛かり、これらはどれもシンボリックリンクにできません。別のボリュームに置きたいときは、そのボリュームを/opt/erpcにマウントしてください。ノードの場合は、/opt/erpcを置くファイルシステムが POSIX ACL も保てる必要があり(ext4 と XFS は既定で保てます)、保てないと erpc は止まります。- 新しい Solana のホストには、Ubuntu 24.04、systemd 255、AVX2 と SHA の CPU 機能を持つ x86-64 が必要です。ERPC が求める最小の構成は、Solana の RPC ノードで論理スレッド 32 と使えるメモリ 480 GiB、mainnet のバリデータでスレッド 24 と 300 GiB、testnet のバリデータでスレッド 24 と 120 GiB です。
erpc がノードを動かすときにすること
- ほとんどのチェーンでは、クライアントをログインできない専用のユーザーで動かし、各リリースをインストールする前に固定したチェックサムと照合し、新しい管理用の接続で確認されなければ時間で元に戻る、nftables のファイアウォールを適用します。すべてのチェーンがそうではありません。新しい Solana のノードは、固定したソースのコミットからサーバー上でビルドします。solv のバックエンドで記録された Solana のノードは、パスワードなしの sudo ができるログインユーザーで動き、一部のツールをチェックサムなしで取得します。
- erpc は、solv のバックエンドの Solana のバリデータ、Ethereum のバリデータ、Bitcoin のノードにはファイアウォールを適用しません。これらのホストの通信の制限は、ご自身で行ってください。
- ネットワークを変更する間も、ホストに届く別の経路を持っておいてください。
- 保護されたサービスの drop-in ディレクトリに別のファイル(
systemctl editで作ったoverride.confなど)が在る間は、ファイアウォールの手順は受け付けず、何も変更しません。その drop-in をディレクトリの外に移してから、コマンドをもう一度実行してください。 - あなたのマシンから送るシークレットは、標準入力でサーバーに届き、コマンドラインには載りません。
- 新しい Solana のバリデータは、投票を無効にした別のアイデンティティで同期します。
deploy --activate-validatorは、公開の登録とネイティブの BLS の確認を経てから、健全なホストを元の登録済みのアイデンティティに切り替えます。--backend solvは既存の solv のホストを再開するためのもので、新しいホストは作れません。 - Ethereum のバリデータの署名者をバックアップから復元しないでください。署名者を移すときは
erpc v --chain eth migrateを使います。
ノードごとに、どの鍵を 1Password とホストに置くかは、ログインと鍵に載っています。
チェーンごとの検証の状況
表のどのチェーンも、実装はオフラインで確認済みで、実際のホストでの受け入れ確認はまだ先です。RPC のコマンドの振り分けの確認では、18 のチェーンすべてで共通の 12 の動詞を試しますが、これらの確認のどれも、実際のホストでノードを動かしてはいません。各チェーンの状況は、チェーンごとの資料の一覧の、そのチェーンのページに載っています。






