Installation
Hardware requirements
The following hardware minimum requirements are recommended for running a validator node:
Memory: 8 GB RAM
CPU: 6 cores
Disk: 500 GB SSD Storage
Bandwidth: 1 Gbps for Download/1 Gbps for Upload
Update if needed
sudo apt update && sudo apt upgrade -y
Insall packages
sudo apt install curl lz4 tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu -y
Install GO
cd $HOME ver="1.21.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
cd $HOME
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app
git checkout tags/v1.10.1 -b v1.10.1
make install
cd celestia-app
celestia-appd init "your node" --chain-id celestia
celestia-appd config chain-id celestia
celestia-appd config keyring-backend test
Copy genesis - Minimum gas prices - Addrbook
cd $HOME
git clone https://github.com/celestiaorg/networks
# copy genesis
cp $HOME/networks/celestia/genesis.json $HOME/.celestia-app/config/genesis.json
SEEDS="9aa8a73ea9364aa3cf7806d4dd25b6aed88d8152@celestia.seed.mzonder.com:13156"
sed -i "s|^seeds *=.*|seeds = \"$SEEDS\"|" $HOME/.celestia-app/config/config.toml
sed -i 's/^minimum-gas-prices *=.*/minimum-gas-prices = "0.002utia"/' $HOME/.celestia-app/config/app.toml
sed -i 's/^indexer *=.*/indexer = "kv"/' $HOME/.celestia-app/config/config.toml
sed -i 's/^discard_abci_responses *=.*/discard_abci_responses = false/' $HOME/.celestia-app/config/config.toml
# pruning and snapshots
snapshot_interval="2000"
# nothing for archive
sed -i "s/^pruning *=.*/pruning = \"nothing\"/;\
s/^snapshot-interval *=.*/snapshot-interval = $snapshot_interval/" $HOME/.celestia-app/config/app.toml
Create service
tee $HOME/celestia-appd.service > /dev/null <<EOF
[Unit]
Description=celestia-appd
After=network-online.target
[Service]
User=$USER
ExecStart=$(which celestia-appd) start --home $HOME/.celestia-app
Restart=on-failure
RestartSec=10 LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo mv $HOME/celestia-appd.service /etc/systemd/system/
sudo systemctl enable celestia-appd
sudo systemctl daemon-reload
celestia-appd keys add wallet
Check addr Validator
celestia-appd keys show yourwallet --bech val -a
Snapshot
sudo systemctl stop celestia-appd
cp $HOME/.celestia-app/data/priv_validator_state.json $HOME/.celestia-app/priv_validator_state.json.backup
rm -rf $HOME/.celestia-app/data $HOME/.celestia-app/wasmPath
curl https://mainnet-files.itrocket.net/celestia/snap_celestia.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.celestia-app
mv $HOME/.celestia-app/priv_validator_state.json.backup $HOME/.celestia-app/data/priv_validator_state.json
sudo systemctl restart celestia-appd && sudo journalctl -u celestia-appd -f
Check sync
celestia-appd status 2>&1 | jq .SyncInfo.catching_up
If it is False => Create Validator
CELESTIA_MONIKER=LuckyResearch
celestia-appd tx staking create-validator \
--amount=1000000utia \
--pubkey=$(celestia-appd tendermint show-validator) \
--moniker=$CELESTIA_MONIKER \
--chain-id=celestia \
--commission-rate=0.1 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1000000 \
--from=wallet \
--identity=F971ECC74111BE74 \
--keyring-backend=test \
--fees=36000utia \
--gas-adjustment=1.5 \
--gas=500000 \
-y
Last updated