✴️Full Node

Installation Mainnet

  • Hardware requirements:

Node TypeCPURAMStorage

Full node

6

16GB

10TB

1) Auto_install script

source <(curl -s https://raw.githubusercontent.com/111STAVR111/props/refs/heads/main/Celestia/Mainnet/Full/fullm)

2) Manual installation

Preparing the server

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

GO 1.23.1

ver="1.23.1"
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"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version

Build 31.10.24

cd $HOME && mkdir -p go/bin/
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node/
git checkout tags/v0.17.2
make build 
sudo make install 
make cel-key
mv $HOME/celestia-node/cel-key /usr/local/bin/

celestia version

  • version: v0.17.2

  • commit: 57f8bd81c573d1a54613c73cf49e5d392a864dd6

Create/recover wallet

cel-key add full-wallet --keyring-backend test --node.type full
           OR
cel-key add full-wallet --keyring-backend test --node.type full --recover

Initiation

celestia full init --keyring.keyname full-wallet

Create a service file

CORE_IP="<PUT_CONSENSUS_NODE_IP>"
CORE_RPC_PORT="<PUT_CONSENSUS_NODE_RPC_PORT>"
CORE_GRPC_PORT="<PUT_CONSENSUS_NODE_GRPC_PORT>"
KEY_NAME="full-wallet"
sudo tee /etc/systemd/system/celestia-full.service > /dev/null <<EOF
[Unit]
Description=celestia full
After=network-online.target

[Service]
User=$USER
Environment=GODEBUG="asynctimerchan=1"
ExecStart=$(which celestia) full start \
--core.ip $CORE_IP \
--core.rpc.port $CORE_RPC_PORT \
--core.grpc.port $CORE_GRPC_PORT \
--keyring.keyname $KEY_NAME \
--metrics.tls=true --metrics --metrics.endpoint otel.celestia.observer
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

SnapShot Full Mainnet | Archive (updated every 3 days)

You can check the size and time of snapshot creation with this command curl -sI https://celestia.full-archive.snap-m.stavr.tech/full-m-snap.tar.lz4 | grep "last" && curl -sI https://celestia.full-archive.snap-m.stavr.tech/full-m-snap.tar.lz4 | grep content-length | awk '{printf "%.2f GB\n", $2/1024/1024/1024}'

cd $HOME
snap install lz4
sudo systemctl stop celestia-full
rm -rf $HOME/.celestia-full/{blocks,data,index,inverted_index,transients,.lock}
curl -o - -L https://celestia.full-archive.snap-m.stavr.tech/full-m-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.celestia-full/
sudo systemctl restart celestia-full && sudo journalctl -fu celestia-full -ocat

Start

sudo systemctl daemon-reload
sudo systemctl enable celestia-full
sudo systemctl restart celestia-full && sudo journalctl -fu celestia-full -ocat

Monitoring

You can set up your node status alarm here - Monitoring

Security

You can create secure management of your wallet and your node by following this links.

TMKMS Wallet Security

Delete node

systemctl stop celestia-full
systemctl disable celestia-full
rm /etc/systemd/system/celestia-full.service
systemctl daemon-reload
cd $HOME
rm -rf .celestia-full
rm -rf celestia-node
rm -rf /usr/local/bin/cel-key
rm -rf $(which celestia)

Last updated