How To Run Celestia Light Node??? Full Guide!!!

Blokdrops 🦧
17 min readMar 30

--

🤝 BlokDrops Socials :
BlokDrops | Telegram #ANN | Community | Twitter

Join Private Grouphttps://t.me/+_dqEiYHP7WY5N2Nl

Join this we will help you in by solving your doubts and Stay tuned with regular updates. We are 5 admins helping community.

What is Celestia :

Celestia is a modular consensus and data network, built to enable anyone to easily deploy their own blockchain with minimal overhead. Celestia provides consensus and security on-demand, enabling anyone to deploy a blockchain without the overhead of bootstrapping a new consensus network.

About Blockspace Race:

Blockspace Race is Celestia’s Incentivised Testnet program. 1000 participants were selected to participate in the Blockspace Race, made up of validators, bridge nodes, full storage nodes, and light nodes. The Blockspace Race has five phases spanning nine weeks of competition. Each phase will require participants to complete their respective tasks to collect points during the race.

Phase 2 began on 28 March and Light Node runners can participate. Since most people got selected for light node, we have a full guide on how to setup your node.

Setting Up Celestia Node For Blockspace Race :-

1. Purchase VPS

I will suggest you to order your VPS on Contabo

Link :- https://contabo.com/

Choose Most Popular Plan

Options to choose :- 1 Month >> European >> 400 GB >> Ubuntu 20.04 >> Generate Password >> Next

After it click on Next

And Now enter your details like name address and all!

Click Next and Now complete the transaction.

Once you have complete your order. You will receive a first email.

After it you will receive a mail which contain your IP.

For me its takes approx 6 hours

And right now when I am writing this Contabo is down !!

2. Connect Your VPS

For Windows :-

Now we have to connect our IP , for this we use Putty.

Link :- https://the.earth.li/~sgtatham/putty/latest/w64/putty.exe

Now,

  • Paste server IP to “Host Name” and click “Open”
  • In the opened tab, write the command: root;
  • Press “Enter” and paste the password from the server, then “Enter”

Note :- Password will never we displayed , Just type and press “Enter

For MacOS :-

On macOS, launch the Terminal.

  • Enter the server with the command (change IP_ADDRESS to the server IP):ssh root@IP_ADDRESS
  • Next, enter “yes”, press “Enter,” and paste the server password (the icon with the key will hide the entered password). Press “Enter”.

You can use a VPS that you already have also. Make sure you are not running any other node on that or these two might clash and both may fail to stay awake.

3. Setting Up The Node :-

Let’s Update The Packages :

Copy the commands that are in the grey box and paste them in Putty your whatever method you are using to connect to your VPS.

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential git make ncdu -y
sudo apt install screen -y

Now, run this to install Go:

ver="1.20.3" 
cd $HOME
wget "https://go.dev/dl/go1.20.3.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go1.20.3.linux-amd64.tar.gz"
rm "go1.20.3.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile

Check the go version using this :

go version

Download the binary file by running this :

cd $HOME 
rm -rf celestia-node
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node
git fetch --tags
git checkout v0.10.4
make build
sudo make install
make cel-key

Run this to check Celestia Version :

celestia version

You’ll get something like this :

You will get v0.10.4 as it’s the latest. Now, run this :

celestia light init --p2p.network blockspacerace

This will create keys associated with the node. Save this somewhere safe as it is important.

Start a screen session :

screen -S log

In the below command, replace <ip-address> with any RPC endpoints given here.

celestia light start --core.ip <ip-address> --gateway --gateway.addr 127.0.0.1 --gateway.port 26659 --p2p.network blockspacerace --metrics.tls=false --metrics --metrics.endpoint otel.celestia.tools:4318

For me, it looks like this :

celestia light start --core.ip https://rpc-blockspacerace.pops.one/ --gateway --gateway.addr 127.0.0.1 --gateway.port 26659 --p2p.network blockspacerace --metrics.tls=false --metrics --metrics.endpoint otel.celestia.tools:4318

Now, exit the screen session by pressing CTRL + A + D

Now enter this to get your Light Node ID:

NODE_TYPE=light
AUTH_TOKEN=$(celestia $NODE_TYPE auth admin --p2p.network blockspacerace)

curl -X POST \
-H "Authorization: Bearer $AUTH_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":0,"method":"p2p.Info","params":[]}' \
http://localhost:26658

Save your ID in a safe place as you’ll be needing it.

Go to Tiascan and enter your ID. You can see your uptime score and other details here. [Tiascan is Currently Down. So Rely On Logs]

Start With Service :

Everytime your VPS goes down or something happens with the node, you’ll have to start it again manually. Let’s automate it so that you don’t have to.

In the terminal, type this :

sudo reboot

This will reboot your VPS and you’ll have to connect your VPS again in putty.

Now, type this :

sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-lightd.service
[Unit]
Description=celestia-lightd Light Node
After=network-online.target

[Service]
User=$USER
ExecStart=/usr/local/bin/celestia light start --core.ip https://rpc-blockspacerace.pops.one/ --gateway --gateway.addr 127.0.0.1 --gateway.port 26659 --p2p.network blockspacerace --metrics.tls=false --metrics --metrics.endpoint otel.celestia.tools:4318
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Done. After that,

systemctl enable celestia-lightd

And

systemctl start celestia-lightd

Your node is running now and will restart automatically if it fails.

For checking logs, you can do this :

screen -S log
journalctl -fu celestia-lightd.service

To exit screen, just press CTRL + A + D

Some more useful commands :

Node Service Check :

systemctl status celestia-lightd

Node Restart :

systemctl restart celestia-lightd

Node Stop :

systemctl stop celestia-lightd

You already have your wallet address. Or you can use this to check your wallet address :

cd $HOME
cd celestia-node
./cel-key list --node.type light --keyring-backend test --p2p.network blockspacerace

Go to Celestia Discord and in #🚰|faucet Channel in BLOCKSPACE RACE category. Request faucet like this :

$request <address>

e.g : $request celestia1h9sgdfdy6lnvr6g53dmk8pgrj0y2ycpk48xpse

Your faucet will be sent to your address. There’s time limit for claiming faucet. So, make sure your node is all set and ready before claiming faucet.

Also, you can check your balance like this :

$balance <address>

e.g. $balance celestia1h9sgdfdy6lnvr6g53dmk8pgrj0y2ycpk48xpse

You can check your token balance in node by entering this :

curl -X GET http://127.0.0.1:26659/balance

You can check the logs by resuming the screen session :

screen -r

If you would like to exit screen, press CTRL + A + D

Now, go to Knack portal and submit your Light Node ID and Celestia Wallet Address.

Do Note : 1000 participants are already selected by Celestia for the incentivised testnet. Only they got mail regarding knack. If you try to register, you might get error.

After this, you’ll get more tasks. Try completing Bonus Tasks as this will help you position yourself on leaderboard.

For more help, join our telegram group.

Mandatory Upgrade v0.8.1 :

Celestia released a mandatory upgrade for node runners. Here are the steps to do so :

First check which version you are on :

celestia version

If your version is v0.8.0 or below, you are required to update. If not, you can skip.

Stop Your Node using this command :

systemctl stop celestia-lightd

Now,

cd $HOME
cd celestia-node
git fetch
git checkout v0.8.1
make build
sudo make install

Now, do this to check your celestia version :

celestia version

Here you can see that it’s v0.8.1 version.

You’ll have to delete some folders too. Enter the commands below :

cd $HOME
cd .celestia-light-blockspacerace-0
sudo rm -rf blocks index data transients

Now, init your light node using this :

celestia light init --p2p.network blockspacerace

Finally, start your node using this :

systemctl start celestia-lightd

Check logs using :

journalctl -fu celestia-lightd.service

Done. You node should be up by now. The uptime might have fluctuated a bit but don’t worry keep it running for few days and it will be above 90.

Phase 3 Task :

Submit a PFB transaction

I followed the tutorial provided by the team.

Go to https://go.dev/play/p/7ltvaj8lhRl and find the Line No.17. After “seed :=” enter any random number. I have written “32784” in example. You can write any numbers.

2. After entering a random number, press Run. You’ll get namespace ID and hex-encoded message(data)

3. Now, edit this accordingly :

curl -X POST -d '{"namespace_id": "XXXXXXXXX",
"data": "YYYYYYYYYY",
"gas_limit": 80000, "fee": 2000}' http://localhost:26659/submit_pfb

Remove the XXXXXXXXX with the namespace ID you generated and the YYYYYYYYYY with the data. For me, it looks like :

curl -X POST -d '{"namespace_id": "1e4a9308feb1fd8c",
"data": "694efcaa030015b4fc933a1506882eca6ca70d6f69a749fa743c803314a6950295798344bd99f22f327de2c12c6e25ddbf71c12010abc34ccd09bfb1bea826f871cb338f9352bde62d3a1b54",
"gas_limit": 80000, "fee": 2000}' http://localhost:26659/submit_pfb

After editing, copy and paste it in your VPS.

Press Enter and you’ll get something like this :

Here, the highlighted part is you transaction hash and the height is marked in orange box. Make sure to copy you hash.

If you get error like :

“rpc error: code = NotFound desc = account celestia1krkle0n547u0znz3unnln8paft2dq4z3rznv86 not found”

It is possible that the account you are trying to submit a PayForBlob from doesn't have testnet tokens yet. Ensure the testnet faucet has funded your account with tokens and then try again.

Now, go here and search your transaction hash. You can see your transaction status, height, signer and more.

You can also see PFB count on tiascan.

If the status is success and the signer is your wallet address, you can go to Knack and submit the transaction hash.

Recommended Upgrade to v0.9.1 :

This upgrade is optional but is recommended. I will suggest doing it. Follow the steps below :

  1. Stop Your Node :
systemctl stop celestia-lightd

2. Update Go

ver="1.20.3" 
cd $HOME
wget "https://go.dev/dl/go1.20.3.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go1.20.3.linux-amd64.tar.gz"
rm "go1.20.3.linux-amd64.tar.gz"

3. Now, run this :

cd celestia-node
git fetch
git checkout v0.9.1
make build
sudo make install

Now, enter this :

celestia light config-update --p2p.network blockspacerace

Start your Node using this :

systemctl enable celestia-lightd
systemctl start celestia-lightd

You can check your node version using :

celestia version

To check logs and make sure everything is fine :

journalctl -fu celestia-lightd.service

Phase 4 Task :

The task is to create a new wallet to receive mainnet rewards.

Purpose of this task is to :

  • Create a new celestia wallet address specifically to receive mainnet rewards.
  • Do not use any testnet wallets.
  • Be sure to backup your seed phrase and private key.
  • This task is important as you’ll receive your rewards only if you complete this task.
  1. Go to https://www.keplr.app/download , download Keplr wallet.

2. Open the extension and click on Create new account option.

3. Save the mnemonic somewhere safe. Also, enter account name and create a password.

4. Next, go here , browse below and find the button saying Add/Switch to Blockspace Race Testnet. Click on it and approve in your Keplr wallet.

5. Open your wallet and change network to Blockspace Race Testnet.

6. Copy the address from the wallet. Go to Knack and fill your newly created wallet address in Submission Text.

Upgrade To v0.9.2 :

We just need to upgrade to v0.9.2 for now and not complete the task. So let’s do it.

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch
git checkout v0.9.2
make build
sudo make install

3. Now, run this :

celestia light config-update --p2p.network blockspacerace

4. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

5. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Phase 5 Task :

The task is Upgrade and restart your light or full storage node. Also, they have told in the guide to submit screenshot but there’s no option to submit screenshot. Don’t be confused. They released a new announcement regarding this.

Just upgrade your node to v0.9.3 and submit your Node-ID. Also, at the time of writing this, tiascan is not accurate at the moment. So, you might see your uptime and other information wrong. Don’t worry about that. Rely on your logs. So, let’s upgrade the node.

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch --tags
git checkout v0.9.3
make build
sudo make install

3. Now, run this :

celestia light config-update --p2p.network blockspacerace

4. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

5. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Wait for it to sync. After sync, they should look like this :

You already have your Node ID. Go to the task and in the submission text just enter your Node ID. Click Submit and you are done.

New Update v0.9.4 :

Celestia released another node update. Let’s do it as it’s supposed to improve the stability and performance of the Celestia Node network.

  1. Stop Your Node :
systemctl stop celestia-lightd

2. Now run this :

cd celestia-node
git fetch --tags
git checkout v0.9.4
make build
sudo make install

3. Let’s just start our node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

You can check the version through :

celestia version

You can check the logs through :

journalctl -fu celestia-lightd.service

Tiascan is still having issues. So rely on your logs.

New Extra Phase Updates :

Team announced an extended phase for Blockspsace Race. This phase won’t grade participants on uptime score . It however presents an opportunity to earn more points. Rewards from the remaining pool of Phases 1–5 + Bonus will be allocated accordingly. Please anticipate a slight delay in finalizing rewards for this new phase.

Key Points to Remember :

  • New phase will be added in Knack with a new task for both validators and DA nodes
  • During this phase, we anticipate a total of four upgrade tasks. These tasks will be added ad hoc as soon as the node team provides their updates
  • The new phase starts tomorrow right after Phase 5, and Bonus phase close and lasts till June 12th at 23:59 UTC
  • We will start scoring regular tasks and review bonus tasks as soon as Phase 5 ends tonight
  • This extra phase will not be counted towards consideration for the mainnet validator set

Reminder : Complete Your Remaining Tasks Before 23:59 UTC (15th May, 2023)

Here’s a new upgrade if you want to continue. NEW CELESTIA NODE RELEASE v0.9.5 which fixes metrics submission and other issues caused by the deadlock #2190

Update v0.9.5 :

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch --tags
git checkout v0.9.5
make build
sudo make install

3. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

4. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Wait for it to sync. After sync, they should look like this :

Extension Task : Upgrade Your Data Availability Node

Just upgrade your node [v0.10.0] and submit Node ID. Pretty easy, right?

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch --tags
git checkout v0.10.0
make build
sudo make install

3. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

4. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Wait for it to sync. After sync, they should look like this :

Next, head over to Knack and submit you Node ID. Done.

Extension Task : Upgrade Your Data Availability Node 2

Just upgrade your node [v0.10.4] and submit Node ID. Pretty easy, right?

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch --tags
git checkout v0.10.2
make build
sudo make install

3. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

4. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Wait for it to sync. After sync, they should look like this :

Next, head over to Knack and submit you Node ID. Done.

Extension Task : Upgrade Your Data Availability Node 3

Just upgrade your node [v0.10.2] and submit Node ID. Pretty easy, right?

  1. Stop your node :
systemctl stop celestia-lightd

2. Now, run this :

cd celestia-node
git fetch --tags
git checkout v0.10.4
make build
sudo make install

3. Start your node again :

systemctl enable celestia-lightd
systemctl start celestia-lightd

4. You can check the version through :

celestia version

And you can check the logs through :

journalctl -fu celestia-lightd.service

Wait for it to sync. After sync, they should look like this :

Next, head over to Knack and submit you Node ID. Done.

Guys don’t forget to clap max on this tutorial pls it takes hardwork.

Thanks its done for today.
Don’t forget to follow admin and join telegram for fastest update. lol

Link :- telegram.me/Blokhash
Link : telegram.me/Blokdrops

🤝 BlokDrops Socials :
BlokDrops | Telegram #ANN | Community | Twitter

Join Private Grouphttps://t.me/+_dqEiYHP7WY5N2Nl

Thanks.

--

--

Blokdrops 🦧

Hey Yahh ! Welcome To BlokDrops , BlokDrop is a NFT DAO And Crypto Airdrop Hunter At Early Stage ! Social — linktr.ee/Blokdrops