Skip to main content
🟢ACTIVE(2025)
Guide tested and maintained

🔮 Aztec Sequencer Node Installation

📋 System Requirements

🖥️ Minimum System:
  • CPU: 4 cores (8+ cores recommended)
  • RAM: 6GB (16GB recommended)
  • Storage: 25GB+ SSD (100GB+ recommended)
  • Network: Stable internet connection
  • OS: Ubuntu 20.04+ (or any Linux with Docker)

🔮 What is Aztec Network?

Alpha Testnet🟡 Medium

Aztec Network is building the first privacy-first ZK-rollup on Ethereum, enabling developers to build decentralized applications with built-in privacy and scale. The Aztec sequencer node helps order transactions, produce blocks, and maintain the network's decentralized operations.

⏱️ Setup Time: 15-30 minutes
🔑 Prerequisites:
  • EVM wallet with private key (MetaMask, etc.)
  • Sepolia ETH for gas fees (Get from faucet)
  • Ethereum Sepolia RPC URL (Alchemy or Infura)
  • Ethereum Beacon RPC URL (free: rpc.drpc.org/eth/sepolia/beacon)

🛠️ Step 1: Prepare Your VPS

Update System & Install Dependencies

# Update system packages
sudo apt update && sudo apt upgrade -y

# Install essential tools
sudo apt install curl iptables build-essential git wget lz4 jq make gcc nano automake autoconf tmux htop nvme-cli pkg-config libssl-dev tar clang bsdmainutils ncdu unzip ufw screen -y

Install Docker & Docker Compose

# Remove old Docker versions (if any)
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do
sudo apt-get remove $pkg 2>/dev/null
done

# Add Docker's official GPG key
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Add Docker repository
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Install Docker
sudo apt update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Test Docker installation
sudo docker run hello-world

# Enable Docker service
sudo systemctl enable docker
sudo systemctl restart docker

# Add user to docker group (optional, for non-sudo usage)
sudo usermod -aG docker $USER

⚠️ Note: You may need to log out and back in for the group changes to take effect.


🔥 Step 2: Configure Firewall

# Configure UFW firewall
sudo ufw allow ssh
sudo ufw allow 40400/tcp
sudo ufw allow 40400/udp
sudo ufw allow 8080/tcp
sudo ufw enable

# Check firewall status
sudo ufw status

⚙️ Step 3: Install Aztec CLI

# Install Node.js 20 (required for Aztec CLI)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt update && sudo apt install -y nodejs

# Install Aztec CLI globally
sudo npm install -g @aztec/cli@latest

# Verify installation
aztec --version

🚀 Step 4: Quick Start Method

Method A: Direct CLI Command

# Replace with your actual values
export ETH_RPC_URL="https://eth-sepolia.g.alchemy.com/v2/YOUR_API_KEY"
export BEACON_RPC_URL="https://rpc.drpc.org/eth/sepolia/beacon"
export VALIDATOR_PRIVATE_KEY="0xYOUR_PRIVATE_KEY"
export COINBASE_ADDRESS="YOUR_ETH_ADDRESS"
export P2P_IP=$(curl -s ifconfig.me)

# Start the sequencer node
aztec start --node --archiver --sequencer \
--network alpha-testnet \
--l1-rpc-urls $ETH_RPC_URL \
--l1-consensus-host-urls $BEACON_RPC_URL \
--sequencer.validatorPrivateKey $VALIDATOR_PRIVATE_KEY \
--sequencer.coinbase $COINBASE_ADDRESS \
--p2p.p2pIp $P2P_IP \
--p2p.maxTxPoolSize 1000000000

Create Environment File

# Create a working directory
mkdir -p ~/aztec-node && cd ~/aztec-node

# Create environment file
nano .env

Add the following content to .env:

# Ethereum RPC Configuration
ETHEREUM_RPC_URL=https://eth-sepolia.g.alchemy.com/v2/YOUR_API_KEY
CONSENSUS_BEACON_URL=https://rpc.drpc.org/eth/sepolia/beacon

# Validator Configuration
VALIDATOR_PRIVATE_KEY=0xYOUR_PRIVATE_KEY
COINBASE=YOUR_ETH_ADDRESS

# Network Configuration
P2P_IP=YOUR_VPS_IP_ADDRESS

🔧 Replace the following:

  • YOUR_API_KEY: Your Alchemy API key
  • YOUR_PRIVATE_KEY: Your EVM wallet private key (add 0x prefix)
  • YOUR_ETH_ADDRESS: Your EVM wallet address
  • YOUR_VPS_IP_ADDRESS: Your VPS public IP (get with curl ifconfig.me)

Create Docker Compose File

nano docker-compose.yml

Add this configuration:

version: '3.8'

services:
aztec-node:
container_name: aztec-sequencer
image: aztecprotocol/aztec:alpha-testnet
restart: unless-stopped
network_mode: host
environment:
ETHEREUM_HOSTS: ${ETHEREUM_RPC_URL}
L1_CONSENSUS_HOST_URLS: ${CONSENSUS_BEACON_URL}
DATA_DIRECTORY: /data
VALIDATOR_PRIVATE_KEY: ${VALIDATOR_PRIVATE_KEY}
COINBASE: ${COINBASE}
P2P_IP: ${P2P_IP}
LOG_LEVEL: debug
entrypoint: >
sh -c 'node --no-warnings /usr/src/yarn-project/aztec/dest/bin/index.js start
--network alpha-testnet
--node
--archiver
--sequencer'
ports:
- "40400:40400/tcp"
- "40400:40400/udp"
- "8080:8080"
volumes:
- ./data:/data

Start the Node

# Start the sequencer in detached mode
docker compose up -d

# Check if container is running
docker ps

# View logs
docker compose logs -f aztec-node

📊 Step 6: Monitor Your Node

Check Node Status

# Check current synced block
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
http://localhost:8080 | jq -r ".result.proven.number"

# Check node logs
docker logs -f aztec-sequencer

# Get your node's Peer ID
docker logs aztec-sequencer 2>&1 | grep -i "peerId" | grep -o '"peerId":"[^"]*"' | cut -d'"' -f4 | head -n 1

Verify Network Connection

# Check if ports are listening
sudo netstat -tulnp | grep -E "(40400|8080)"

# Test external connectivity
nc -zv $(curl -s ifconfig.me) 40400

🎯 Step 7: Get Discord Role & Become a Validator

Get Apprentice Role

  1. Wait for node sync - Your node needs to be fully synced (check block number matches AztecScan)

  2. Get block number and proof:

# Get latest block number
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
http://localhost:8080 | jq -r ".result.proven.number"

# Get proof (replace BLOCK_NUMBER with the number from above)
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["BLOCK_NUMBER","BLOCK_NUMBER"],"id":67}' \
http://localhost:8080 | jq -r ".result"
  1. Join Aztec Discord and go to #operators-start-here channel

  2. Use the bot command:

/operator start
  • Enter your EVM address
  • Enter the block number
  • Enter the proof (long base64 string)
  1. You should receive the "Apprentice" role!

Register as L1 Validator (Optional)

# Register your sequencer as L1 validator
aztec add-l1-validator \
--l1-rpc-urls $ETHEREUM_RPC_URL \
--private-key $VALIDATOR_PRIVATE_KEY \
--attester $COINBASE \
--proposer-eoa $COINBASE \
--staking-asset-handler 0xF739D03e98e23A7B65940848aBA8921fF3bAc4b2 \
--l1-chain-id 11155111

🔧 Troubleshooting

Common Issues

❌ "ERROR: world-state:block_stream Error processing block stream"

# Stop node, delete data, and restart
docker compose down
sudo rm -rf ./data
docker compose up -d

❌ "Most VPS will return 132 error"

  • Consider using bare metal servers for better performance
  • Alternatively, try VPS providers with better CPU performance

❌ Port binding issues

# Check what's using the ports
sudo lsof -i :40400
sudo lsof -i :8080

# Stop conflicting services if needed

❌ RPC connection issues

  • Verify your Alchemy/Infura API key is correct
  • Test RPC URLs manually:
curl -X POST -H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
$ETHEREUM_RPC_URL

View Detailed Logs

# Container logs
docker logs aztec-sequencer --tail 100 -f

# System logs
sudo journalctl -f

🎉 Next Steps

  1. Monitor your node - Keep it synced and running 24/7
  2. Check Aztec Explorer - Your node should appear here after a few days
  3. Upgrade to Guardian role - Use /checkip command in #upgrade-role Discord channel
  4. Join the community - Participate in Aztec Discord discussions

⚠️ Important Notes

  • No official rewards confirmed - This is for learning and contributing to the network
  • Keep your private key secure - Never share it publicly
  • Maintain good uptime - Inconsistent nodes may be removed from the network
  • Alpha Testnet - Expect bugs and network resets

🎊 Congratulations! You're now running an Aztec Sequencer Node and contributing to the first fully decentralized privacy-focused L2! 🚀

Useful Links:

© 2025 TokioStack. All rights reserved.
DMCA.com Protection Status