Lighthouse BN

Descargar Lighthouse

Descargue la última versión de Lighthouse y ejecute el proceso de verificación del checksum para asegurarse de que el archivo descargado no haya sido manipulado.

cd
curl -LO https://github.com/sigp/lighthouse/releases/download/v5.1.3/lighthouse-v5.1.3-x86_64-unknown-linux-gnu.tar.gz
curl -LO https://github.com/sigp/lighthouse/releases/download/v5.1.3/lighthouse-v5.1.3-x86_64-unknown-linux-gnu.tar.gz.asc

Ejecute el proceso de verificación del checksum.

gpg --keyserver keyserver.ubuntu.com --recv-keys 15E66D941F697E28F49381F426416DC3F30674B0
gpg --verify lighthouse-v5.1.3-x86_64-unknown-linux-gnu.tar.gz.asc lighthouse-v5.1.3-x86_64-unknown-linux-gnu.tar.gz

Verifique la clave de firma de la versión ( --recv-keys) en el primer comando arriba en la página de lanzamientos aquí .

Cada archivo descargable viene con su propio checksum. Reemplace el checksum real y la URL de descarga en el código anterior.

Asegúrate de elegir la versión AMD64. Haga clic derecho en el texto vinculado y seleccione "copiar dirección del enlace" para obtener la URL del enlace de descarga curl.

Resultado esperado: verificar el resultado checksum.

gpg: Signature made Thu Mar 28 07:30:45 2024 UTC
gpg:                using RSA key 15E66D941F697E28F49381F426416DC3F30674B0
gpg: Good signature from "Sigma Prime <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 15E6 6D94 1F69 7E28 F493  81F4 2641 6DC3 F306 74B0

Si se verifica el checksum, extraiga los archivos y muévalos al directorio (/usr/local/bin) para mayor claridad y mejores prácticas. Luego, limpie las copias duplicadas.

tar xvf lighthouse-v5.1.3-x86_64-unknown-linux-gnu.tar.gz
sudo cp lighthouse /usr/local/bin
rm -r lighthouse*

Configurar el cliente de consenso de Lighthouse

Ejecutaremos el cliente de consenso y el cliente de validación de Lighthouse como servicios separados para que haya más flexibilidad para configurar un nodo de failover para obtener el máximo tiempo de actividad cuando usted decida que es necesario.

Cree una cuenta ( lighthouse) sin acceso al servidor para que el cliente de consenso Lighthouse y el cliente validador se ejecute como servicios en segundo plano. Este tipo de cuenta de usuario no tendrá acceso de root, por lo que restringe a los atacantes potenciales únicamente a los servicios Lighthouse y Validator en el improbable caso de que logren infiltrarse a través de una actualización de cliente comprometida.

sudo useradd --no-create-home --shell /bin/false lighthousebeacon

Cree un directorio para que Lighthouse almacene la blockchain y los datos del validador de la capa de consenso. Mueva el directorio validator_keys a esta carpeta. Luego configure el propietario de este directorio al usuario lighthousepara que pueda leer y escribir en el directorio.

sudo mkdir -p /var/lib/lighthouse_beacon
sudo chown -R lighthousebeacon:lighthousebeacon /var/lib/lighthouse_beacon
sudo chmod 700 /var/lib/lighthouse_beacon

Si no hay errores, cree un archivo de configuración systemd para que el servicio Lighthouse se ejecute en segundo plano.

sudo nano /etc/systemd/system/lighthousebeacon.service

Pegue los siguientes parámetros de configuración en el archivo:

[Unit]
Description=Lighthouse Beacon Node (Holesky)
Wants=network-online.target
After=network-online.target

[Service]
User=lighthousebeacon
Group=lighthousebeacon
Type=simple
Restart=always
RestartSec=5
ExecStart=/usr/local/bin/lighthouse bn \
  --network holesky \
  --datadir /var/lib/lighthouse_beacon \
  --execution-endpoint http://127.0.0.1:8551 \
  --execution-jwt /var/lib/jwtsecret/jwt.hex \
  --checkpoint-sync-url=https://holesky.beaconstate.ethstaker.cc/ \
  --metrics \
  --metrics-port 8009 \
  --validator-monitor-auto \
  --port 9001 \
  --http \
  --http-port 5051 \
  --http-address <Internal_IP_address> \
  --builder http://127.0.0.1:18550 

[Install]
WantedBy=multi-user.target

Una vez que haya terminado, guarde con Ctrl+Oy Enter, luego salga con Ctrl+X. Comprenda y revise el resumen de configuración que aparece a continuación y modifíquelo si es necesario.

Resumen de configuración del cliente de consenso Lighthouse:

  1. --network: Ejecute el servicio del cliente de consenso en la red de prueba ETH Holesky

  2. --datadir: Especifique el directorio para que Lighthouse almacene datos relacionados con el cliente de consenso.

  3. --execution-endpoint: URL para conectarse al cliente de la capa de ejecución

  4. --execution-jwt: Ruta del archivo para localizar el JWT que generamos anteriormente

  5. --checkpoint-sync-url: Permite la sincronización casi instantánea del Cliente de consenso apuntando a una de las URL del checkpoint de sincronización. Lista aquí: https://eth-clients.github.io/checkpoint-sync-endpoints/

  6. --metrics: Habilitar el seguimiento de las métricas del cliente de consenso.

  7. --metrics-port: Puerto para conectarse al servidor de métricas. Utilizado por Prometheus y Grafana para monitoreo.

  8. --validator-monitor-auto: Proporciona registros y métricas adicionales para validadores controlados localmente.

  9. --port:Establece el puerto para la comunicación de peer-to-peer. El valor predeterminado es 9000.

  10. --http: permite que el cliente validador se conecte a este cliente de consenso. También permite monitorear los endpoints para extraer métricas de este servicio.

  11. --http-port: establece el puerto para conectarse al cliente de consenso

  12. --http-address: establece la dirección IP para conectarse a la API REST del cliente de consenso que utilizarán los clientes DVT. Utilice aquí la dirección IP interna de su dispositivo (verifique ejecutando ip a), por ejemplo 192.168.x.x. De lo contrario, el valor predeterminado es 127.0.0.1

  13. --builder: URL para conectarse a constructores externos (por ejemplo, relays MEV)

Inicie el cliente de consenso Lighthouse

Recargar el systemd para registrar los cambios realizados, inicie Lighthouse y verifique su estado para asegurarse de que se esté ejecutando.

sudo systemctl daemon-reload
sudo systemctl start lighthousebeacon.service
sudo systemctl status lighthousebeacon.service

Resultado esperado: El resultado debería decir que Lighthouse Consensus Client está "active (running)". Presione CTRL-Cpara salir y Lighthouse continuará ejecutándose. Lighthouse debería tardar solo unos minutos en sincronizarse con Holesky.

Utilice el siguiente comando para verificar los logs del proceso de sincronización de Lighthouse. Esté atento a cualquier advertencia o error.

sudo journalctl -fu lighthousebeacon -o cat | ccze -A

Resultado esperado:

Presione Ctrl+Cpara salir del monitoreo.

Si el servicio del cliente de consenso Lighthouse funciona sin problemas, ahora podemos permitir que se inicie automáticamente al reiniciar el sistema.

sudo systemctl enable lighthousebeacon.service

Verificar las raíces del estado inicial (Checkpoint Sync)

  1. Vaya a https://holesky.beaconcha.in/ en su navegador y busque el número de slot ( slot).

  2. Verifique Block Rooty State Root con su salida journalctl.

Ejemplo de red de prueba: prater.beaconcha.in.
  1. Salida journalctl

Recursos

Last updated