Ejecuta validadores y nodos RPC con erpc validator y erpc rpc

erpc rpc ejecuta nodos RPC en 18 cadenas y erpc validator ejecuta validadores en 13 de ellas. Todas las cadenas usan los mismos verbos, y estos comandos de ciclo de vida de nodos son gratuitos y no necesitan cuenta.
Esta página describe ERPC CLI v0.1.0-rc.4, una versión preliminar. Las pruebas de aceptación en hosts reales siguen en curso: En qué punto está cada cadena y la guía de cada cadena indican el estado de cada cadena.

Desplegar un nodo

init prepara un servidor y deploy instala e inicia el nodo. Un nodo RPC de Ethereum parte de un servidor Ubuntu limpio, 24.04 o posterior:
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
Algunas cadenas necesitan tener más cosas preparadas antes, y la guía de cada cadena dice cuáles. Un nuevo validador o nodo RPC de Solana necesita tres sistemas de archivos montados y sus claves ya guardadas en 1Password.

Elegir la cadena, la red y el host

Elige la cadena con --chain, ERPC_CHAIN o el ajuste default_chain, la red con -n y el host con --name. Un cambio en un nodo de mainnet requiere escribir --chain en la línea de comandos.
  • erpc validator (alias v), erpc rpc (alias r) y erpc node (alias n, para Avalanche y Sui) ejecutan los comandos de nodo.
  • Ejecuta un grupo de comandos sin verbo (erpc validator) para ver la lista de sus verbos.
  • En los comandos de nodo, --json tiene que ir antes del comando: erpc --json rpc ….

Comandos que funcionan en todas las cadenas

VerboQué hace
initComprueba el servidor, fija las versiones del cliente, guarda el nodo en 1Password y prepara el host
deployInstala o compila el cliente, descarga una instantánea, aplica el firewall cuando erpc tiene uno para ese nodo e inicia el nodo
list, status, logsInventario, salud y journal
start, stop, restartControl del servicio, en el orden correcto para los nodos con varias capas
updatePasa a otra versión del cliente; la política de rollback depende del cliente
update-configAplica cambios de configuración y de acceso con las reglas de reinicio de la cadena
planMuestra el plan de despliegue o de configuración de la cadena
destroyDetiene o retira los servicios propios; la conservación de los datos, las claves y el firewall sigue la guía de operaciones de la cadena
Un validador de Solana registrado en el backend solv solo tiene, de estos, init, deploy, list y status.

Cadenas y guías

CadenaNodo RPCValidadorRedesGuías
Solanaerpc rpc --chain solanaerpc validator --chain solanamainnet, testnetOperaciones, Registro, Cadena
Ethereumerpc rpc --chain eth (mainnet, --type full o archive)erpc validator --chain eth (Hoodi, mainnet)mainnet, HoodiRPC, Validador, Cadena
Baseerpc rpc --chain basemainnet, sepoliaCadena
Avalancheerpc rpc --chain avax (también erpc node)erpc validator --chain avaxmainnet, fujiOperaciones, Cadena
Bitcoinerpc rpc --chain bitcoinmainnet, testnet4, signet, regtestRPC, Cadena
Polygonerpc rpc --chain polygonerpc validator --chain polygonmainnet, amoyRPC, Validador, Cadena
BNB Chainerpc rpc --chain bscerpc validator --chain bscmainnet, chapelRPC, Validador, Cadena
Kaiaerpc rpc --chain kaiaerpc validator --chain kaiamainnet, kairosRPC, Core cell, Cadena
Arbitrumerpc rpc --chain arbitrum (mainnet, nova, sepolia)erpc validator --chain arbitrum (solo mainnet de Arbitrum One)mainnet, nova, sepoliaRPC, Validador, Cadena
Optimismerpc rpc --chain optimismmainnet, sepoliaOperaciones, Cadena
Hyperliquiderpc rpc --chain hyperliquiderpc validator --chain hyperliquidmainnet, testnetRPC, Validador, AQA, Cadena
Monaderpc rpc --chain monaderpc validator --chain monadmainnet, testnetOperaciones, Cadena
TRONerpc rpc --chain tronerpc validator --chain tronmainnet, nileOperaciones, Cadena
Suierpc rpc --chain sui (también erpc node)erpc validator --chain suimainnet, testnetOperaciones, Cadena
NEARerpc rpc --chain nearerpc validator --chain nearmainnet, testnetRPC, Validador, Cadena
Arcerpc rpc --chain arcmainnet, testnetRuntime de RPC, Cadena
Robinhood Chainerpc rpc --chain robinhooderpc validator --chain robinhoodmainnet, testnetAdmisión, Validador, Cadena
Soneiumerpc rpc --chain soneiummainnet, minatoCadena
Ejecutar nodos indica los clientes de cada cadena.

Lo que erpc necesita en el servidor

  • erpc inicia sesión por SSH como usuario con sudo (ubuntu por defecto) con tu clave, desde el agente SSH de 1Password o SSH_AUTH_SOCK, y fija la clave de host la primera vez.
  • El servidor necesita /usr/bin/python3 y un usuario de inicio de sesión cuyo sudo no pida contraseña.
  • /opt ya debe ser un directorio real, propiedad de root, en el que no puedan escribir ni su grupo ni los demás, tal como lo trae Ubuntu; erpc no lo crea. /opt/erpc y los directorios runs y uploads que erpc crea en él se rigen por la misma regla, y ninguno de ellos puede ser un enlace simbólico: para tenerlos en otro volumen, monta el volumen en /opt/erpc. Para un nodo, el sistema de archivos que contiene /opt/erpc también debe conservar las ACL POSIX (ext4 y XFS lo hacen por defecto); si no, erpc se detiene.
  • Un nuevo host de Solana necesita Ubuntu 24.04, systemd 255 y x86-64 con las funciones de CPU AVX2 y SHA. ERPC requiere al menos 32 hilos lógicos y 480 GiB de memoria utilizable para un nodo RPC de Solana, 24 hilos y 300 GiB para un validador de mainnet, y 24 hilos y 120 GiB para un validador de testnet.

Cómo ejecuta erpc un nodo

  • La mayoría de las cadenas ejecutan el cliente con su propio usuario, que no puede iniciar sesión, comprueban cada versión con una suma de comprobación fijada antes de instalarla y aplican un firewall de nftables con un rollback temporizado que debe confirmar una nueva conexión de gestión. No todas lo hacen: un nuevo nodo de Solana se compila en el servidor a partir de un commit de código fuente fijado, y un nodo de Solana registrado en el backend solv se ejecuta como un usuario con inicio de sesión y sudo sin contraseña, y descarga algunas herramientas sin suma de comprobación.
  • erpc no aplica ningún firewall a los validadores de Solana en el backend solv, a los validadores de Ethereum ni a los nodos de Bitcoin, así que el filtrado de esos hosts te corresponde a ti.
  • Mantén una forma independiente de llegar al host durante los cambios de red.
  • Mientras el directorio drop-in de un servicio protegido contenga otro archivo, como un override.conf de systemctl edit, el paso del firewall rechaza la operación y no cambia nada. Saca tu drop-in del directorio y vuelve a ejecutar el comando.
  • Los secretos enviados desde tu máquina llegan al servidor por la entrada estándar, nunca en una línea de comandos.
  • Un nuevo validador de Solana se sincroniza con una identidad separada y con la votación desactivada. deploy --activate-validator cambia un host sano a su identidad registrada original tras el registro público y las comprobaciones nativas de BLS. --backend solv reanuda un host solv existente y no puede crear uno nuevo.
  • No restaures el firmante de un validador de Ethereum desde una copia de seguridad: mueve un firmante con erpc v --chain eth migrate.
Inicio de sesión y claves muestra qué claves guarda cada nodo en 1Password y en el host.

En qué punto está cada cadena

Para cada cadena de la tabla, la implementación está comprobada sin conexión, y las pruebas de aceptación en vivo en hosts reales se aplazan. La comprobación del enrutamiento de comandos RPC pone a prueba los doce verbos comunes en las dieciocho cadenas, y ninguna de estas comprobaciones ejecuta un nodo en un host real. La página de cada cadena en el mapa de fuentes de las cadenas indica en qué punto está.