Node install
System requirements
- 4 or more physical CPU cores (recommended 8 CPU)
- At least 200GB of NVME SSD disk storage. Hard drive I/O speed is crucial! (recommended 700GB+ NVMe)
- At least 8GB of memory (RAM) (recommended 16GB)
- At least 100mbps network bandwidth
Dependencies Installation
sudo apt update
sudo apt install -y curl git jq lz4 wget unzip build-essential
sudo rm -rf /usr/local/go
curl -L https://go.dev/dl/go1.21.6.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile
source .bash_profile
Node Installation
IMPORTANT:
Choose binary depending on your version of Ubuntu 22.04/24+ or 20.04
Download & copy binary FOR UBUNTU 20.04 (in some cases must be used with sudo)
cd $HOME
curl -L -o shidod https://github.com/ShidoGlobal/mainnet-enso-upgrade/releases/download/ubuntu20.04/shidod
sudo cp shidod /usr/local/bin/
sudo chmod +x /usr/local/bin/shidod
Download & copy binary FOR UBUNTU 22.04/24 (in some cases must be used with sudo)
cd $HOME
curl -L -o shidod https://github.com/ShidoGlobal/mainnet-enso-upgrade/releases/download/ubuntu22.04/shidod
sudo cp shidod /usr/local/bin/
sudo chmod +x /usr/local/bin/shidod
Download WASM
wget -O /usr/lib/libwasmvm.x86_64.so https://github.com/CosmWasm/wasmvm/releases/download/v2.1.4/libwasmvm.x86_64.so
sudo ldconfig
Initialize the node for validator
shidod init YourNodeName --chain-id shido_9008-1
Download genesis
wget -O genesis.json https://raw.githubusercontent.com/ShidoGlobal/mainnetShidoNodeSync/refs/heads/main/genesis.json --inet4-only
mv genesis.json ~/.shidod/config
Set node CLI configuration
shidod config set client chain-id shido_9008-1
shidod config set client keyring-backend file
- Change timeout_commit
sed -i 's/timeout_commit = "3s"/timeout_commit = "1s"/g' "$HOME/.shidod/config/config.toml"
Set minimum gas price
sed -i -e 's|^minimum-gas-prices *=.*|minimum-gas-prices = "0.25shido"|' $HOME/.shidod/config/app.toml
Change laddr
sed -i -e "s%tcp://127.0.0.1:26657%tcp://0.0.0.0:26657%" $HOME/.shidod/config/config.toml
Set peers (updated: 11.23.2024)
[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26686,[email protected]:28656,[email protected]:26656,[email protected]:18356,[email protected]:23656
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.shidod/config/config.toml
Create a service (if needed)
sudo tee /etc/systemd/system/shidod.service > /dev/null << EOF
[Unit]
Description=Shido node service
After=network-online.target
[Service]
User=$USER
ExecStart=/usr/local/bin/shidod start
Restart=on-failure
RestartSec=10
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF
- Enable & Start the service and check the logs
sudo systemctl daemon-reload
sudo systemctl enable shidod.service
sudo systemctl start shidod
sudo journalctl -u shidod -f --no-hostname -o cat