Running Celestia Light Node on Celenium
A Light Node allows users to directly verify data availability and interact with the Celestia blockchain without needing centralized gateways or RPC providers. Light nodes enable data availability sampling, which helps scale the network's throughput as more nodes join over time. Each rollup on Celestia uses a light node to publish and retrieve transaction data directly.
The main purpose of a light node is to ensure data availability. It’s the most common way to interact with the Celestia network. Light nodes operate by:
- Listening for ExtendedHeaders: These are extended versions of raw headers, notifying Celestia nodes of new block headers and related data availability (DA) metadata.
- Performing Data Availability Sampling (DAS): Light nodes verify parts of the block data, ensuring it’s available across the network.
Running a light node offers several benefits:
- Low Resource Use: Light nodes consume far less bandwidth, storage, and computing power, making them ideal for small servers, laptops, or mobile devices.
- Decentralization & Security: By running your own node, you help decentralize the network.
- Direct Blockchain Interaction: A light node allows you to interact directly with the Celestia blockchain, avoiding the need to trust external APIs.
- Quick Setup: Light nodes don’t require downloading the entire blockchain, making them faster and easier to set up.
You can set up and run a Celestia Light Node in a few different ways:
For a more automated and hassle-free setup, you can use Celenium, which manages server infrastructure for you. We utilize the Rust implementation of the Celestia Light node developed by Eiger, known as Lumina. Big thanks to the team for their excellent work in making this possible! Here’s how to run a Celestia light node on Celenium:
- Open Celenium: Navigate to any page on the Celenium platform.
- Go to Node Management: Click on "Node" at the bottom left of the menu.
- Start Sampling: Click "Start Sampling" to launch your node. That’s it! 😉
You can also configure the list of bootnodes in the appropriate section to improve your node's connection to the network.
Once the node starts, you will see:
- Details of the Current Sampling Window: Information about the node’s sampling activity.
- Your Node Peer ID: A unique identifier for your node on the network.
- Event Logs: Real-time logs displaying node events and activities.
- Square Visualization: A graphical representation of your node's data performance.
You can customize the node behavior before starting with the following settings:
- Node Autostarter: Automatically start the node every time you load Celenium on the current device.
- Reset Sync Progress: Wipe all previously synced data and restart the sync process.
Here are solutions for common issues when running a Celestia light node on Celenium:
- Node starts, but nothing happens, and the card turns yellow with an error message: This is likely due to slow bootnodes, service worker issues (possibly permissions), a slow internet connection, or an internal bug in Celenium. If the console shows red errors, it's usually an internal issue.
- The node's card turns red immediately after starting: This suggests a critical issue, often caused by a bug in the WASM code on Celenium. It's difficult to diagnose, so take a screenshot and report it to the Celenium team. This problem mostly occurred during local development but should be rare in production. Reloading the page usually fixes it.
- Everything looks green, but the lightning icon next to "Events" is yellow or red, and sync progress isn’t updating: This might indicate a slow or lost internet connection or an issue with the bootnodes. If the icon remains red for an extended time, restart the node or check your internet connection.
- Block Height (front head) doesn’t match the current head from the indexer: The front head could lag behind or jump ahead of the actual block height.
- Square size always reflects the front head: The displayed square size represents the state of the front head, not the indexer head.
- The tab stops working after being inactive for a long time: If you leave the tab for a while, the node might stop, although service workers should allow it to continue running in the background.
- Reset sync progress: You can reset the sync progress from the Light Node settings (top right corner of the modal) by clicking Reset Sync Progress, or through Chrome Dev Tools -> Application -> IndexedDB.
- Stopping the node: Currently, the only way to stop the node is by refreshing the page.
- Changing the sampling network doesn’t persist between sessions: On your next visit, the network will be selected based on the domain, and previous configurations may not carry over.
- Node autostart: When enabled, the node starts automatically with a 5-second delay, during which you can cancel or disable autostart.
By using Celenium to run a Celestia Light Node, you balance ease of use, control, and network decentralization, making it simpler for users to interact with the Celestia blockchain without needing deep technical expertise or infrastructure setup.