Validators en RPC-nodes draaien met erpc validator en erpc rpc

erpc rpc draait RPC-nodes op 18 chains en erpc validator draait validators op 13 daarvan. Elke chain gebruikt dezelfde werkwoorden, en deze levenscycluscommando's voor nodes zijn gratis en vereisen geen account.
Deze pagina beschrijft ERPC CLI v0.1.0-rc.4, een pre-release. De acceptatie op echte hosts loopt nog: Waar elke chain staat en de handleiding van elke chain geven per chain de stand van zaken.

Een node uitrollen

init bereidt een server voor en deploy installeert en start de node. Een Ethereum-RPC-node start vanaf een kale Ubuntu-server, 24.04 of nieuwer:
bash
# check the server, pin the client releases, store the node in 1Password
erpc rpc --chain ethereum -n mainnet --name eth1 init --host <address> --vault <vault id> --ssh-key ~/.ssh/id_ed25519.pub
# install, fetch a snapshot, apply the firewall, start
erpc rpc --chain ethereum -n mainnet --name eth1 deploy --ssh-key ~/.ssh/id_ed25519.pub
# both layers, sync and head
erpc rpc --chain ethereum -n mainnet --name eth1 status --ssh-key ~/.ssh/id_ed25519.pub
Sommige chains vereisen dat er eerst meer klaarstaat, en de handleiding van elke chain zegt wat. Een nieuwe Solana-validator of Solana-RPC-node heeft drie gemounte bestandssystemen nodig, en zijn sleutels moeten al in 1Password staan.

Chain, netwerk en host kiezen

Kies de chain met --chain, ERPC_CHAIN of de instelling default_chain, het netwerk met -n en de host met --name. Voor een wijziging op mainnet moet --chain op de commandoregel staan.
  • erpc validator (alias v), erpc rpc (alias r) en erpc node (alias n, voor Avalanche en Sui) voeren de node-commando's uit.
  • Voer een commandogroep zonder werkwoord uit (erpc validator) om de werkwoorden ervan te tonen.
  • Bij node-commando's moet --json vóór het commando staan: erpc --json rpc ….

Commando's die op elke chain werken

WerkwoordWat het doet
initControleert de server, zet de clientreleases vast, slaat de node op in 1Password en bereidt de host voor
deployInstalleert of bouwt de client, haalt een snapshot op, past de firewall toe waar erpc er een heeft voor die node, en start de node
list, status, logsInventaris, gezondheid en journal
start, stop, restartServicebeheer, in de juiste volgorde voor nodes met meerdere lagen
updateStapt over op een andere clientrelease; het rollbackbeleid hangt af van de client
update-configPast wijzigingen in configuratie en toegang toe volgens de herstartregels van de chain
planToont het uitrol- of configuratieplan van de chain
destroyStopt de eigen services of stelt ze buiten gebruik; het bewaren van data, sleutels en firewall volgt de beheerhandleiding van de chain
Een Solana-validator die op de solv-backend is vastgelegd, heeft hiervan alleen init, deploy, list en status.

Chains en handleidingen

ChainRPC-nodeValidatorNetwerkenHandleidingen
Solanaerpc rpc --chain solanaerpc validator --chain solanamainnet, testnetBeheer, Registratie, Chain
Ethereumerpc rpc --chain eth (mainnet, --type full of archive)erpc validator --chain eth (Hoodi, mainnet)mainnet, HoodiRPC, Validator, Chain
Baseerpc rpc --chain basemainnet, sepoliaChain
Avalancheerpc rpc --chain avax (ook erpc node)erpc validator --chain avaxmainnet, fujiBeheer, Chain
Bitcoinerpc rpc --chain bitcoinmainnet, testnet4, signet, regtestRPC, Chain
Polygonerpc rpc --chain polygonerpc validator --chain polygonmainnet, amoyRPC, Validator, Chain
BNB Chainerpc rpc --chain bscerpc validator --chain bscmainnet, chapelRPC, Validator, Chain
Kaiaerpc rpc --chain kaiaerpc validator --chain kaiamainnet, kairosRPC, Core cell, Chain
Arbitrumerpc rpc --chain arbitrum (mainnet, nova, sepolia)erpc validator --chain arbitrum (alleen Arbitrum One mainnet)mainnet, nova, sepoliaRPC, Validator, Chain
Optimismerpc rpc --chain optimismmainnet, sepoliaBeheer, Chain
Hyperliquiderpc rpc --chain hyperliquiderpc validator --chain hyperliquidmainnet, testnetRPC, Validator, AQA, Chain
Monaderpc rpc --chain monaderpc validator --chain monadmainnet, testnetBeheer, Chain
TRONerpc rpc --chain tronerpc validator --chain tronmainnet, nileBeheer, Chain
Suierpc rpc --chain sui (ook erpc node)erpc validator --chain suimainnet, testnetBeheer, Chain
NEARerpc rpc --chain nearerpc validator --chain nearmainnet, testnetRPC, Validator, Chain
Arcerpc rpc --chain arcmainnet, testnetRPC-runtime, Chain
Robinhood Chainerpc rpc --chain robinhooderpc validator --chain robinhoodmainnet, testnetToelating, Validator, Chain
Soneiumerpc rpc --chain soneiummainnet, minatoChain
Nodes draaien noemt de clients voor elke chain.

Wat erpc op de server nodig heeft

  • erpc logt via SSH in als sudo-gebruiker (standaard ubuntu) met uw sleutel, uit de SSH-agent van 1Password of SSH_AUTH_SOCK, en zet de hostsleutel de eerste keer vast.
  • De server heeft /usr/bin/python3 nodig en een login waarvoor sudo niet om een wachtwoord vraagt.
  • /opt moet al een echte map zijn met root als eigenaar, waarin noch de groep noch anderen kunnen schrijven, zoals Ubuntu hem levert; erpc maakt hem niet aan. Voor /opt/erpc en de mappen runs en uploads die erpc daarin maakt, geldt dezelfde regel, en geen van deze mappen mag een symbolische link zijn: mount het volume op /opt/erpc om ze op een ander volume te houden. Voor een node moet het bestandssysteem dat /opt/erpc bevat ook POSIX ACL's behouden (ext4 en XFS doen dat standaard), anders stopt erpc.
  • Een nieuwe Solana-host vereist Ubuntu 24.04, systemd 255 en x86-64 met de CPU-features AVX2 en SHA. ERPC vereist minstens 32 logische threads en 480 GiB bruikbaar geheugen voor een Solana-RPC-node, 24 threads en 300 GiB voor een mainnet-validator, en 24 threads en 120 GiB voor een testnet-validator.

Hoe erpc een node draait

  • De meeste chains draaien de client als een eigen gebruiker die niet kan inloggen, controleren elke release vóór de installatie tegen een vastgezette checksum, en passen een nftables-firewall toe met een getimede rollback die een nieuwe beheerverbinding moet bevestigen. Niet alle chains doen dat: een nieuwe Solana-node wordt op de server gebouwd vanuit een vastgezette broncommit, en een Solana-node die op de solv-backend is vastgelegd, draait als login-gebruiker met sudo zonder wachtwoord en haalt sommige tools op zonder checksum.
  • erpc past geen firewall toe op Solana-validators op de solv-backend, Ethereum-validators of Bitcoin-nodes, dus het filteren voor die hosts doet u zelf.
  • Houd tijdens netwerkwijzigingen een onafhankelijke manier achter de hand om de host te bereiken.
  • Zolang de drop-in-map van een beschermde service nog een ander bestand bevat, zoals een override.conf van systemctl edit, weigert de firewallstap en verandert hij niets. Haal uw drop-in uit de map en voer het commando opnieuw uit.
  • Secrets die vanaf uw machine worden verstuurd, bereiken de server via standaardinvoer, nooit op een commandoregel.
  • Een nieuwe Solana-validator synchroniseert onder een aparte identity, met stemmen uitgeschakeld. deploy --activate-validator schakelt een gezonde host over naar zijn oorspronkelijke geregistreerde identity, na controles van de publieke registratie en native BLS. --backend solv hervat een bestaande solv-host en kan geen nieuwe aanmaken.
  • Herstel de signer van een Ethereum-validator niet vanuit een back-up: verplaats een signer met erpc v --chain eth migrate.
Inloggen en sleutels laat zien welke sleutels elke node in 1Password en op de host bewaart.

Waar elke chain staat

Voor elke chain in de tabel is de implementatie offline gecontroleerd, en de live-acceptatie op echte hosts is uitgesteld. De controle van de RPC-commandoroutering test alle twaalf gemeenschappelijke werkwoorden voor alle achttien chains, en geen van deze controles draait een node op een echte host. De pagina van elke chain in het bronoverzicht van de chains zegt waar die chain staat.