Club de Nodos
Telegram ↗Twitter ↗
  • Para Empezar
    • Bienvenido al Club de Nodos!
    • SEEDNodes
    • FAQs
  • Guías
    • Guías - General
    • Ethereum
      • Instalación y Sincronización
      • Consenso en Ethereum - Opciones de staking
      • Componentes de Hardware
      • Nodos: Archivo, Full y Light
      • Clientes: Opciones y Funcionalidades
      • De Full Node a Validator Node
      • Atestaciones y consenso
      • Gas en Ethereum
    • Gnosis
      • Paso a Paso - Nodo Validador
      • StakeWise Vault
    • Lido
      • Módulo CSM - Ethereum Validator
    • Arbitrum Orbit
      • Introducción a Arbitrum y la Escalabilidad de Ethereum
      • Conceptos Avanzados de Blockchain y Desarrollo Local
      • Despliegue de un nodo completo en Arbitrum Orbit
      • Integración y desarrollo de aplicaciones prácticas en Arbitrum
    • Bitcoin
    • Celestia
    • EigenLayer
    • Starknet
    • Unichain
    • Aztec
      • ¿Qué es Aztec y como interactuar con su sandbox?
    • Optimism
    • Fuel
      • Funcionamiento y Perspectivas a Futuro
      • Mainnet Node
    • Ether.fi
    • Otros Nodos
  • Workshops y Clases
    • Workshops - General
    • Ethereum - Aprende de Nodos desde cero
    • Ethereum Workshop - Nodos
    • Arbitrum - Introduccion, Full Node de Orbit y dApps
      • #1 - Introducción a Arbitrum y la Escalabilidad de Ethereum
      • #2 - Conceptos avanzados de Blockchain y desarrollo local en Arbitrum
      • #3 - Despliegue de un nodo completo en Arbitrum Orbit
      • #4 - Integración y desarrollo de aplicaciones prácticas en Arbitrum
  • Avanzado
    • Avanzado - General
    • Seguridad
      • Medidas de Seguridad para Operadores de Nodos
      • #1 Claves seguras para nodos validadores
      • #2 Claves seguras para nodos validadores
    • Monitoreo
      • Monitoreo y mantenimiento de un Validador
    • DVT
      • Intro - Comprendiendo DVT
    • MEV
    • BitVM
Con tecnología de GitBook
En esta página
  • Introducción
  • Parte 1: Preparación
  • Parte 2: Instalación
  1. Guías

Celestia

AnteriorBitcoinSiguienteEigenLayer

Última actualización hace 7 meses

es una red de disponibilidad de datos que optimiza la escalabilidad de Ethereum separando la disponibilidad de datos del consenso y la ejecución. Introduce técnicas innovadoras como el muestreo de disponibilidad de datos y los árboles de Merkle con espacios de nombres, que permiten una verificación eficiente de los datos. Aprender a montar un nodo en Celestia desde cero te proporcionará una comprensión profunda de estas técnicas y te permitirá contribuir activamente a la seguridad y la escalabilidad de la red Ethereum.

Preparación e instalación del nodo.

Introducción

¿Qué es Celestia?

Celestia es una que se adapta de manera segura al crecimiento de usuarios, posibilitando que cualquier individuo lance su propia cadena de bloques.

En la vanguardia de las arquitecturas blockchain escalables, Celestia introduce el concepto de "". En este enfoque, la escalabilidad se logra y presentando una novedosa técnica llamada "".

En el primer aspecto, Celestia asume la responsabilidad exclusiva de ordenar las transacciones y garantizar la disponibilidad de los datos, equiparable a . Por otro lado, el "" ofrece una solución eficiente al desafío de la disponibilidad de datos al exigir que solo los nodos ligeros, con recursos limitados, realicen muestreos en fragmentos aleatorios de cada bloque para verificar dicha disponibilidad.

La participación de más nodos ligeros en este proceso de muestreo aumenta la capacidad segura de la red para manejar datos, posibilitando un incremento en el tamaño del bloque sin un correspondiente aumento en el costo de la verificación de la cadena.


Tipos de Nodo:

Hay muchas formas en las que podes participar en las de Celestia. Los operadores de nodos de Celestia pueden ejecutar varias opciones en la red.

Consensus:

  • : este tipo de nodo participa en el consenso produciendo y votando bloques.

  • : un nodo completo de la aplicación celestia para sincronizar el historial de blockchain.

Data Availability:

  • : este nodo sirve de puente entre la red de disponibilidad de datos y la red de consenso.

  • : este nodo almacena todos los datos pero no se conecta a Consensus.

  • los clientes ligeros realizan muestreos de disponibilidad de datos en la red de disponibilidad de datos.

Parte 1: Preparación

*NOTA: La versión de Ubuntu que se utiliza es la Ubuntu 22.04.4 LTS

Cómo instalar los componentes esenciales:

sudo apt update && sudo apt -y upgrade 

Este comando se encarga de actualizar la lista de paquetes disponibles en los repositorios, y si eso se realiza correctamente, procede a actualizar todos los paquetes instalados en el sistema.

Instalamos paquetes esenciales:

sudo apt install curl tar wget aria2 clang pkg-config libssl-dev jq build-essential \
git make ncdu -y

Instalando Golang:

Celestia-Node está escrito en Golang, por lo que primero debemos instalar Golang para construir y ejecutar nuestro nodo.

Configuramos la versión:

ver="1.21.1"

Descargamos e instalamos Golang:

cd $HOME
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"

Agregas /usr/local/go/bin en el directorio a $PATH si aún no lo hiciste:

echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile

Verificamos que se instalo correctamente la versión de Go:

go version

Parte 2: Instalación

Eliminamos cualquier copia existente de celestia-node, clonamos el repositorio y cambie al directorio:

cd $HOME
rm -rf celestia-node
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node/

Chequeamos la versión deseada, según la red que vamos a usar:

git checkout tags/v0.12.4

Construimos el Celestia binary. Existen 2 maneras: Standar y Experimental.

  • Standar

    make build
  • Experimental

    Si sos un operador de nodo que se siente cómodo con las funciones experimentales y buscas un rendimiento óptimo con un uso mínimo de RAM, se recomienda esta opción.

    make build-jemalloc

Instalamos el binary:

make install

Construimos la utilidad de cel-key:

make cel-key

Verificamos que el binary esté funcionando y verificamos también la versión:

celestia version

El comando mostrará la versión de celestia-node, el hash de confirmación, la fecha de compilación, la versión del sistema y la versión de Golang.

*NOTA: Ahora que hemos instalado el nodo, es hora de elegir el tipo y ejecutarlo.

Iniciando un Light Node:

Lo primero es crear una instancia (o inicializar) el nodo, que significa configurar un almacén en nuestra máquina, que es donde se almacenarán los datos y nuestras claves.

  • Mainnet: celestia light init

  • Arabica: celestia light init --p2p.network mocha

  • Mocha: celestia light init --p2p.network arabica

Esto mostrará la ubicación de su almacén de nodos y su configuración. También mostrará la confirmación de que el almacén de nodos se ha inicializado.

*NOTA: En este paso se crea una frase nemotécnica (resguardarla).

Conectando a un public core endpoint:

Conexión al Punto Final gRPC del Nodo Validador, por defecto puerto 9090, es esencial para acceder a la capacidad de obtener y enviar información relacionada con el estado. Esto incluye la facultad de enviar transacciones PayForBlob o consultar el saldo de la cuenta del nodo.

celestia light start --core.ip <URI>

*NOTA: No es necesario declarar una red para Mainnet Beta.

Ejemplo Mainnet:

celestia light start --core.ip consensus.lunaroasis.net

Ejemplo en Mocha:

celestia light start --core.ip rpc-mocha.pops.one --p2p.network mocha

Ejemplo en Arabica:

celestia light start --core.ip validator-1.celestia-arabica-11.com \
    --p2p.network arabica

Keys y wallets:

Podemos crear una clave para el nodo ejecutando el siguiente comando con la utilidad cel-key en el directorio celestia-node:

./cel-key add <key-name> --keyring-backend test \
    --node.type light --p2p.network <network>

Podemos iniciar nuestro light node con la clave creada anteriormente ejecutando el siguiente comando:

celestia light start --keyring.accname my_celes_key \
    --core.ip consensus.lunaroasis.net

Una vez que iniciamos el light node, se generará una clave para nuestra wallet. Deberemos fondearla esa dirección con tokens de testnet para pagar las transacciones de PayForBlob.

Podemos encontrar la dirección utilizando la CLI de RPC o ejecutando el siguiente comando en el directorio celestia-node:

./cel-key list --node.type light --keyring-backend test \
    --p2p.network <network>

Testnet tokens

Existen dos redes para obtener tokens de testnet:

$request

Donde es la dirección celestia1****** generada cuando creaste la billetera.

Full storage node:

Iniciamos con el siguiente comando:

  • Mainnet: celestia full init

  • Arabica: celestia full init --p2p.network arabica

  • Mocha: celestia full init --p2p.network mocha

Conectando a un public core endpoint:

Conexión al Punto Final gRPC del Nodo Validador, por defecto puerto 9090, es esencial para acceder a la capacidad de obtener y enviar información relacionada con el estado. Esto incluye la facultad de enviar transacciones PayForBlob o consultar el saldo de la cuenta del nodo.

celestia full start --core.ip <URI>

*NOTA: No es necesario declarar una red para Mainnet Beta.

Ejemplo en Mocha:

celestia full start --core.ip rpc-mocha.pops.one --p2p.network mocha

Ejemplo en Arabica:

celestia full start --core.ip validator-1.celestia-arabica-11.com \
    --p2p.network arabica

Bridge Node:

Iniciamos con el siguiente comando:

  • Mainnet: celestia bridge init

  • Arabica: celestia bridge init --p2p.network arabica

  • Mocha: celestia bridge init --p2p.network mocha

Conectando a un public core endpoint:

Conexión al Punto Final gRPC del Nodo Validador, por defecto puerto 9090, es esencial para acceder a la capacidad de obtener y enviar información relacionada con el estado. Esto incluye la facultad de enviar transacciones PayForBlob o consultar el saldo de la cuenta del nodo.

celestia bridge start --core.ip <URI>

*NOTA: No es necesario declarar una red en Mainnet Beta.

Ejemplo en Mocha:

celestia bridge start --core.ip rpc-mocha.pops.one:26657 --p2p.network mocha

Ejemplo en Arabica:

celestia bridge start --core.ip validator-1.celestia-arabica-11.com \
  --p2p.network arabica

Usando un RPC propio, o uno de la o , iniciamos el nodo:

También se accede a ellos ingresando al de Celestia y solicitándolos de la siguiente manera:

Todo el material que se presenta aquí es de acceso público. Para obtener información detallada y seguir los pasos en inglés, se puede visitar la .

Celestia
data availability network
modular blockchains
desvinculando la ejecución del consenso
data availability sampling
reducir el consenso a una transmisión atómica
data availability sampling
redes
Nodo validador
Nodo de consenso completo
Bridge node
Full storage node
Light Node:
lista en la página de prueba de Mocha
la lista en la página de devnet de Arábica
Arábica Devnet
Mocha Testnet
Discord
web oficial
Page cover image