cryptomolot docs
  • 💎cryptomolot
  • 🏗️Testnets
    • Alignedlayer
      • How to create Public RPC Alignedlayer
    • Artela
      • How to create Public RPC Artela
    • Celestia
      • Celestia - Validator Node
      • Celestia - Bridge Node
      • How to create Public RPC Celestia
    • 0G (Zero Gravity)
      • 0G RPC Node
      • 0G Storage Node
        • Upgrade storage node 1.0.0
      • 0G DA Node
      • How to create Public RPC 0G
      • Monitoring tool
      • Snapshot
    • Side Protocol
      • How to create Public RPC Side
    • Warden Protocol
    • Story Protocol
      • Upgrade node
      • Cheatsheet
      • Monitoring tool
      • Alerts about your node failures
  • 🚀Mainnets
    • Aptos
      • Tools to monitore your validator
        • Alerts for your validator via telegram public
      • How to move node using snapshot
      • Fullnode security
      • Snapshot
Powered by GitBook
On this page
  • Stop the node
  • Backup config.toml
  • Build new binary
  • Restore config.toml
  • Update boot nodes in config.toml
  • Set vars for new Contract Adresses
  • Edit config with new CAs
  • Restart storage node
  • Check logs
  • Check version
  1. Testnets
  2. 0G (Zero Gravity)
  3. 0G Storage Node

Upgrade storage node 1.0.0

Stop the node

sudo systemctl stop zgs

Backup config.toml

cp $HOME/0g-storage-node/run/config.toml $HOME/zgs-config.toml.backup

Build new binary

cd $HOME/0g-storage-node
git stash
git fetch --all --tags
git checkout 347cd3e
git submodule update --init
cargo build --release

Restore config.toml

cp $HOME/zgs-config.toml.backup $HOME/0g-storage-node/run/config.toml

Update boot nodes in config.toml

sed -i 's|^network_boot_nodes = .*|network_boot_nodes = ["/ip4/47.251.117.133/udp/1234/p2p/16Uiu2HAmTVDGNhkHD98zDnJxQWu3i1FL1aFYeh9wiQTNu4pDCgps","/ip4/47.76.61.226/udp/1234/p2p/16Uiu2HAm2k6ua2mGgvZ8rTMV8GhpW71aVzkQWy7D37TTDuLCpgmX"]|g' ~/0g-storage-node/run/config.toml

Set vars for new Contract Adresses

export ZGS_LOG_DIR="$HOME/0g-storage-node/run/log"
export ZGS_LOG_CONFIG_FILE="$HOME/0g-storage-node/run/log_config"
export LOG_CONTRACT_ADDRESS="0xbD75117F80b4E22698D0Cd7612d92BDb8eaff628"
export MINE_CONTRACT="0x3A0d1d67497Ad770d6f72e7f4B8F0BAbaa2A649C"
export REWARD_CONTRACT="0xd3D4D91125D76112AE256327410Dd0414Ee08Cb4"
export ZGS_LOG_SYNC_BLOCK=326165

Edit config with new CAs

sed -i '
s|^log_sync_start_block_number = .*|log_sync_start_block_number = '"$ZGS_LOG_SYNC_BLOCK"'|g
s|^log_config_file = .*|log_config_file = "'"$ZGS_LOG_CONFIG_FILE"'"|g
s|^log_directory = .*|log_directory = "'"$ZGS_LOG_DIR"'"|g
s|^mine_contract_address = .*|mine_contract_address = "'"$MINE_CONTRACT"'"|g
s|^log_contract_address = .*|log_contract_address = "'"$LOG_CONTRACT_ADDRESS"'"|g
s|^reward_contract_address = .*|reward_contract_address = "'"$REWARD_CONTRACT"'"|g
' $HOME/0g-storage-node/run/config.toml

Restart storage node

sudo systemctl daemon-reload && sudo systemctl enable zgs && sudo systemctl start zgs

Check logs

tail -f ~/0g-storage-node/run/log/zgs.log.$(TZ=UTC date +%Y-%m-%d)

Check version

cd $HOME/0g-storage-node && git log --decorate=short --oneline | grep "tag: v" | head -n 1 && git log -1 --pretty=oneline
Previous0G Storage NodeNext0G DA Node

Last updated 25 days ago

🏗️