Installation Node
Hardware requirements
The following requirements are recommended:
- 4 or more physical CPU cores
- At least 200GB of SSD disk storage
- At least 8GB of memory (RAM)
- At least 100mbps network bandwidth
Install dependencies Required
sudo apt update && sudo apt upgrade -y && sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
Install go
We are gonna use GO Version 1.22.5 If you already have GO installed you can skip this
ver="1.22.5"
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" >> ~/.bash_profile
source ~/.bash_profile
go version
Install binary
wget https://github.com/xos-labs/node/releases/download/v0.5.2/node_0.5.2_Linux_amd64.tar.gz
tar -xzf node_0.5.2_Linux_amd64.tar.gz
sudo mv ./bin/xosd $HOME/go/bin
chmod +x $HOME/go/bin/xosd
rm -rf node_0.5.2_Linux_amd64.tar.gz
Verify that you’ve installed successfully
xosd version --long | grep -e version -e commit
Initialize Node
Please change <MONIKER>
To your own Moniker.
xosd init <moniker> --chain-id xos_1267-1
Download Genesis file and addrbook
- Genesis
sudo rm $HOME/.xosd/config/genesis.json
curl -L https://snapshot-t.vinjan.xyz/xos/genesis.json > $HOME/.xosd/config/genesis.json
- Addrbook
curl -L https://snapshot-t.vinjan.xyz/xos/addrbook.json > $HOME/.xosd/config/addrbook.json
Custom Port
PORT=35
sed -i -e "s|chain-id = \".*\"|chain-id = \"xos_1267-1\"|g" $HOME/.xosd/config/client.toml
sed -i -e "s%:26657%:${PORT}657%" $HOME/.xosd/config/client.toml
sed -i -e "s%:26658%:3${PORT}658%; s%:26657%:${PORT}657%; s%:6060%:${PORT}060%; s%:26656%:${PORT}656%; s%:26660%:${PORT}660%" $HOME/.xosd/config/config.toml
sed -i -e "s%:1317%:${PORT}317%; s%:9090%:${PORT}090%; s%:8545%:3${PORT}545%; s%:8546%:${PORT}546%; s%:6065%:${PORT}065%" $HOME/.xosd/config/app.toml
Config
seeds="18bad8ac954d8edaf3c4e337be6fb6585f655e60@94.130.143.184:35656"
sed -i.bak -e "s/^seeds =.*/seeds = \"$seeds\"/" $HOME/.xosd/config/config.toml
Gas Prices
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"80000000000axos\"/" $HOME/.xosd/config/app.toml
Prunning
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = ""|' \
-e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
$HOME/.xosd/config/app.toml
Indexer Off
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.xosd/config/config.toml
create service file and start node
Create service file Create a wardend.service
file in the /etc/systemd/system
folder with the following code. You can change USER
with your Linux user name. You need sudo previlege to do this step.
sudo tee /etc/systemd/system/xosd.service > /dev/null <<EOF
[Unit]
Description=xos
After=network-online.target
[Service]
User=$USER
ExecStart=$(which xosd) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
- Enable Service and Start Node
sudo systemctl daemon-reload
sudo systemctl enable xosd
sudo systemctl restart xosd
sudo journalctl -u xosd -f -o cat
Snapshot
Create Validator
Heads up to the Cheat Sheets to create validator