Quick start Fuel Node Setup Guide Guide on Node setup or Fuel Network by NodeCattel 🐈 💻
Recommended Hardware Requirements
Copy - Memory: 12 GB
- CPU: 8 cores
- Disk: 100 GB NVME SSD
Preparation
Update packages
Copy sudo apt-get update && sudo apt-get upgrade –y
Install essential packages
Copy sudo apt install git wget curl lz4 build-essential -y
Install Rustup
Copy curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Configure your current shell
Check rustc version
***Result***
Copy rustup 1.27.1 (54dd3d00f 2024-04-24)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.79.0 (129f3b996 2024-06-10)`
Installation
Install fuelup
Copy curl https://install.fuel.network | sh
add fuelup to path
Copy export PATH="${HOME}/.fuelup/bin:${PATH}"
Check fuelup version
***Result***
Generate P2P key and save your secret key somewhere safe
Copy fuel-core-keygen new --key-type peering
***Result***
Copy {"peer_id":"16Uiu2HAmU3UZczJCRqdWcgyDL2r3qEqDa9psDXwg1gDCP6kCy9na",
"secret":"098b29f38f0b8a2fd67d441128675e058d7710a90698588101547a86fe3eeb85",
"type":"peering"}
Create a data directory and clone chain-configuration file
Copy mkdir .fueld
git clone https://github.com/FuelLabs/chain-configuration chain-configuration && cp -r $HOME/chain-configuration/ignition/* $HOME/.fueld/
Create systemd service for fuel (edit your own node's name, secret key and sepolia rpc)
Copy sudo tee /etc/systemd/system/fueld.service > /dev/null << EOF
[Unit]
Description=Fuel Node Beta-5
After=network.target
[Service]
User=$USER
Type=simple
ExecStart=$(which fuel-core run) \
--service-name={your node's name} \
--keypair {P2P-secret-key} \
--relayer {sepolia-rpc} \
--ip=0.0.0.0 --port=4000 --peering-port=30333 \
--db-path $HOME/.fueld \
--snapshot $HOME/.fueld \
--utxo-validation --poa-instant false --enable-p2p \
--reserved-nodes /dns4/p2p-testnet.fuel.network/tcp/30333/p2p/16Uiu2HAmDxoChB7AheKNvCVpD4PHJwuDGn8rifMBEHmEynGHvHrf \
--sync-header-batch-size 100 \
--enable-relayer \
--relayer-v2-listening-contracts=0x01855B78C1f8868DE70e84507ec735983bf262dA \
--relayer-da-deploy-height=5827607 \
--relayer-log-page-size=500 \
--sync-block-stream-buffer-size 30
Restart=on-failure
RestartSec=5s
StartLimitBurst=3
StartLimitIntervalSec=10s
TimeoutStartSec=60s
TimeoutStopSec=60s
LimitNOFILE=65535
WatchdogSec=3600s
ExecStartPre=/bin/sleep 10
[Install]
WantedBy=multi-user.target
EOF
Reload, Enable and Start the fueld service
Copy sudo systemctl daemon-reload && \
sudo systemctl enable fueld && \
sudo systemctl start fueld && \
sudo journalctl -u fueld -f -o cat
to check the logs again
Copy sudo journalctl -u fueld -f -o cat
to restart the node
Copy sudo systemctl restart fueld && sudo journalctl -u fueld -f -o cat
Download Snapshot
Updated at Block #4976751 (14th July 2024 - 17:00UTC)
Stop the fueld.service
Copy sudo systemctl stop fueld
Download latest snapshot
Install aria2 download utility
Copy sudo apt install aria2
Download the snapshot
Copy rm -rf /tmp/snapshot.tar.lz4 && \
aria2c -x 16 -s 16 -k 1M -d /tmp -o snapshot.tar.lz4 http://109.199.108.37/fuel-sepolia-snapshot.tar.lz4 && \
lz4 -dc /tmp/snapshot.tar.lz4 | tar -xf - -C $HOME/.fueld && \
rm -rf $HOME/.fueld/on_chain $HOME/.fueld/off_chain $HOME/.fueld/relayer && \
mv -f $HOME/.fueld/.fuel-sepolia-testnet/on_chain $HOME/.fueld/
Restart the service and check the log
Copy sudo systemctl restart fueld && sudo journalctl -u fueld -f -o cat
Last updated 9 months ago