Setting Up a Fuel Node

This guide provides an in-depth look at Fuel, the Rollup OS for Ethereum. We'll introduce you to the Public Testnet and walk you through the process of running and operating a Fuel node, complete with useful CLI commands.


Fuel, the Rollup OS for Ethereum

Fuel is redefining the Ethereum ecosystem as an operating system purpose-built specifically for rollups. Launched in December 2020, Fuel V1 was the first optimistic rollup on Ethereum to achieve stage 2 security status. Now, after three years of development, Fuel is set to launch its mainnet in early Q4 2024, promising to be one of the most powerful systems for rollups on Ethereum.

Fuel reimagines the execution architecture from the ground up, creating a solution custom-tailored to the unique challenges of Ethereum rollups. At its core, Fuel's architecture consists of three critical components.

  • FuelVM: The heart of Fuel, from which core features like parallelization, state minimization, and customizability stem. It's designed specifically for blockchain operations, optimizing performance and flexibility.

  • Sway: A domain-specific language that combines the best of Solidity and Rust, enabling developers to effortlessly create high-performance, secure applications.

  • Forc Toolchain: A pure set of developer tools that simplifies the process of building and deploying dapps on Fuel network, enhancing DevEx.

If you're not familiar with the Fuel network yet, we recommend checking out their blog on Mirror to learn more about it. Follow @Fuel_Network and @BuildOnFuel on X to stay updated.

Fuel Sepolia Public Testnet

The Sepolia Public Testnet was launched some time ago, intended to be a long-lasting and mainnet-compatible environment for users and builders who want to test and deploy on the Fuel blockchain.

Getting Started with a Fuel Node

By running your own Fuel node, you can execute a higher number of queries without rate limits and gain full control over your interactions on the Fuel blockchain.

Sepolia API Key

Before running a node, you'll need a Sepolia API key. You can obtain one from any RPC provider such as Alchemy or Infura.

Please ensure you're using the correct endpoints for the Sepolia network. Otherwise, your node may fail to start.

Prerequisite

Ensure your machine meets the recommended specifications outlined below (minimal and recommended):

  • CPU: 2 Cores / 8 Cores

  • Memory: 4 GB RAM / 16 GB RAM

  • Disk: 30 GB SSD / 200 GB SSD

  • Machine: Ubuntu 22.04

Script Execution

Run the following command to install Fuel:

wget -O fuel.sh https://api.denodes.xyz/fuel.sh && bash fuel.sh

When prompted, answer y to proceed with the installation.

During the installation, you'll generate your node key, so please ensure you save it securely. You'll also need to add an API key for the Sepolia network from an RPC provider such as Alchemy or Infura.

Once the setup process is complete, you'll see your node logs, which might resemble the screen below:

Congratulations!

Your Fuel node is now set up and running smoothly.

Connecting Your Node to the Fuel Wallet

To connect your Fuel node to your Fuel wallet, you'll need to configure the wallet to use your node's RPC endpoint. This allows your wallet to interact directly with your node, enhancing security and reducing reliance on third-party services.

Here's a general process to connect your node to your Fuel wallet:

  • Open your Fuel wallet settings

  • Look for a Add a Network configuration option

  • Enter your node's RPC endpoint: http://YOUR_NODE_IP:4000/v1/graphql

  • Then, save the settings

If you need help setting up a Fuel Wallet, please refer to our guide here.

Recovering Your Node Key

To recover your node on a different machine, simply run the installation script again.

wget -O fuel.sh https://api.denodes.xyz/fuel.sh && bash fuel.sh

When prompted for a key during setup, you will need to generate a new one. However, after generating the new key, you should use your old key instead. This ensures continuity of your node's identity across different machines.


Helpful Commands

  • View your node details (version, height, health, etc.):
curl -X POST http://0.0.0.0:4000/v1/graphql \
  -H "Content-Type: application/json" \
  -d '{"query": "{ chainInfo: chain { latestBlock { id height } chainName: name } systemHealth: health nodeDetails: nodeInfo { peers { peerId: id } version: nodeVersion } }"}'
  • Restart your Fuel node:
systemctl restart fueld
  • View your node logs:
journalctl -fu fueld -o cat
  • View the fueld.service file:
cat /etc/systemd/system/fueld.service
  • Check node health:
curl -X POST http://0.0.0.0:4000/v1/graphql \
-H "Content-Type: application/json" \
-d '{"query": "{ health }"}'
  • Check node height:
curl -X POST http://0.0.0.0:4000/v1/graphql \
  -H "Content-Type: application/json" \
  -d '{"query": "{ chain { latestBlock { id height } } }"}'
  • Remove your node:
systemctl stop fueld
systemctl disable fueld
rm /etc/systemd/system/fueld.service
rm -rf $HOME/.fuel
rm -rf $HOME/.fuelup
rm -rf $HOME/.forc
rm $HOME/fuel.sh

Fuel's FAQ

What is Fuel Network?

Fuel is an operating system purpose built for Ethereum Rollups. Fuel allows rollups to solve for PSI (parallelization, state minimized execution, interoperability) without making any sacrifices.

What is the purpose of the Fuel Sepolia Public Testnet?

The Fuel Public Testnet on Sepolia provides a stable, mainnet-compatible environment for users and developers to test and deploy on the Fuel blockchain.

Benefits of Running a Fuel Node

By operating a node, you gain direct, trustless access to the Fuel network, eliminating reliance on third-party services.

What is a Sepolia API key and why do I need it?

It's necessary because it allows your Fuel node to connect to the Sepolia testnet, an Ethereum testnet used for testing and development purposes.

Is running a node incentivized?

No, there haven't been any incentives announced for running a Fuel node.

How can I join the Fuel community?

To get involved with the Fuel community, follow them on Twitter, chat with other members in their Discord server, or explore their code on GitHub.


Subscribe to deNodes
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.