This guide will help you set up an Aztec Sequencer Node on a Virtual Private Server (VPS). The tutorial was created using Linux (Ubuntu), but the steps may vary slightly for other operating systems.
Part | Minimum | Recommended |
---|---|---|
CPU | - | ≥ 8 cores |
RAM | - | 16 GB |
SSD | - | 1 TB |
- Guide on how to buy from Contabo HERE
Faucet:
- Use either
curl
orwget
to execute the following commands and run your Aztec node:
- Using
Curl
:
bash <(curl -s https://raw.githubusercontent.com/SKaaalper/Aztec-sequencer/main/aztec-install.sh)
- Using
Wget
:
bash <(wget -qO- https://raw.githubusercontent.com/SKaaalper/Aztec-sequencer/main/aztec-install.sh)
-
<SEPOLIA_RPC>
: Get your Sepolia RPC, Visit HERE or you can choose 1 here:https://sepolia.gateway.tenderly.co
https://1rpc.io/sepolia
https://ethereum-sepolia-rpc.publicnode.com
https://eth-sepolia.public.blastapi.io
-
<CONSENSUS-HOST-URL>
: You need to use a premium RPC so the blob remains stable, Visit ANKR HERE- Use my referral code to get 20% more free requests for $10 deposit, equivalent to 20 million API credits.
https://www.ankr.com/rpc/?utm_referral=9du8k7t88W
- My deposit is $10, but you can deposit $5 using crypto deposit Arb chain (USDC).
- You can bridge here: https://relay.link/bridge
- Don’t worry — the request limit on that one doesn’t run out quickly, unlike Sepolia RPC, which gets consumed fast. If you're only using Beacon RPC, the usage is very low. Based on estimates, even a $10 deposit could last for around a year.
- Use my referral code to get 20% more free requests for $10 deposit, equivalent to 20 million API credits.
<0xYourPrivateKey>
: with your wallet's private key that has SepoliaETH (use a new wallet and don’t forget, Start it with0x
).<0xYourAddress>
: with the wallet address of the private key above.
- Wait a 20 to 30 minutes for the sync to complete.
- First, you need to detach from the screen before proceeding to the next step, Press Ctrl + A, Then Click D
- screen Logs:
screen -r aztec
- Docker Logs:
sudo docker logs -f --tail 100 $(docker ps -q --filter ancestor=aztecprotocol/aztec:latest | head -n 1)
If you encounter an error, Proceed HERE
To check your IP address use this command curl ifconfig.me
,curl -4 ifconfig.me
- Get Your Block Number:
- Once you're outside the session, run the following command. Replace
<YOUR_IP_ADDRESS>
with yourVPS IP
:
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
http://<YOUR_IP_ADDRESS>:8080 | jq -r ".result.proven.number"
- Get Your Proof:
- Run this command. Replace
<YOUR_IP_ADDRESS>
with yourVPS IP
, and<BLOCK_NUMBER>
with the block number you just got:
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["<BLOCK_NUMBER>","<BLOCK_NUMBER>"],"id":67}' \
http://<YOUR_IP_ADDRESS>:8080 | jq -r ".result"
- This will show your proof — copy and save it too.
- Get your Role:
- Join the Aztec Discord server, Join HERE
- Run the command
/operator start
in the #operator channel. - Fill in your wallet address, block number, and proof.
- Register Validator:
aztec add-l1-validator \
--l1-rpc-urls <RPC URL> \
--private-key <your-private-key> \
--attester <your-validator-address> \
--proposer-eoa <your-validator-address> \
--staking-asset-handler 0xF739D03e98e23A7B65940848aBA8921fF3bAc4b2 \
--l1-chain-id 11155111
- Replace
<RPC URL>
,<your-private-key>
,<your-validator-address>
(attester and proposer-eoa is the same address).
If you encounter this error, it means the validator quota for today is full. You will need to register again by tomorrow.
- Delete Screen:
screen -XS aztec quit
- Delete
aztec
docker:
docker ps -q --filter "ancestor=aztecprotocol/aztec" | xargs -r docker stop
docker ps -a -q --filter "ancestor=aztecprotocol/aztec" | xargs -r docker rm
- Stop your validator and delete your database:
rm -rf ~/.aztec/alpha-testnet/data/
- Create new
screen
:
screen -S aztec
- Update your node, Using
screen
:
aztec-up alpha-testnet
- Now, Start your NODE for
screen
:
aztec start --node --archiver --sequencer \
--network alpha-testnet \
--l1-rpc-urls <YOUR_RPC_URL> \
--l1-consensus-host-urls <YOUR_BEACON_URL> \
--sequencer.validatorPrivateKey <YOUR_PRIVATEKEY> \
--sequencer.coinbase <YOUR_WALLET_ADDRESS> \
--p2p.p2pIp <YOUR_VPS_IP_ADDRESS> \
--p2p.maxTxPoolSize 1000000000
-
To Detach: Press Ctrl + A, Then Click D
-
docker
Logs
:
sudo docker logs -f --tail 100 $(docker ps -q --filter ancestor=aztecprotocol/aztec:latest | head -n 1)
- screen Logs:
screen -r aztec
- If you need help, reach out through: Telegram