Beam Validator Node Setup on Linux VPS

Minimum requirements

CPU: Equivalent of 8 AWS vCPU, RAM: 16 GiB, Storage: 1 TiB

Difficulty grade:
Advanced 100%

Beam Validator Node Setup on Linux VPS

Minimum requirements

CPU: Equivalent of 8 AWS vCPU, RAM: 16 GiB, Storage: 1 TiB

Difficulty grade:
Advanced 100%

Need help setting up your node?

Step-by-Step GUIDE

Disclaimer

The information provided in this guide is for general informational purposes only. By accessing or using this guide, you acknowledge and agree that the author and this website shall not be held responsible or liable for any errors, omissions, or outcomes resulting from the use of this material. This includes, without limitation, any direct, indirect, incidental, or consequential damages to hardware, software, data, or any other property. While reasonable efforts have been made to ensure the accuracy and reliability of the content, no warranties or guarantees are provided, either express or implied. Users assume full responsibility for the implementation of any instructions contained herein and are strongly advised to perform appropriate backups and due diligence before proceeding. For official support or the most up-to-date information, please consult the relevant project’s official documentation or support channels.

Section 1: Connecting to the VPS

To access your VPS, you have two options

  • Built-in Console: Most providers (e.g., DigitalOcean) offer a web-based console in their dashboard — no setup required.
  • SSH Method: Use PowerShell or PuTTY on Windows, or Terminal on macOS/Linux — most VPS use root as the default username.

Run this command:

ssh username@your_server_ip

Replace username and your_server_ip with your actual VPS login credentials. You’ll be prompted to enter the password to complete the login.
Example: ssh root@192.0.2.123

Section 2: Installing and Running the Node

Prefer a one-liner script (recommended)?

 

wget https://raw.githubusercontent.com/depinspirationhub/beamnode/main/node_install.sh && chmod +x node_install.sh && ./node_install.sh

 

🛠 Prefer Manual Step-by-Step Setup?

✅ Step 1: Update Your Server & Install Dependencies

 

sudo apt-get update && sudo apt-get install -y wget tar screen jq curl

 

⬇️ Step 2: Download and Install AvalancheGo (Avalanche Node Software)

 

latest=$(curl -s https://api.github.com/repos/ava-labs/avalanchego/releases/latest | jq -r .tag_name) && \
wget -q https://github.com/ava-labs/avalanchego/releases/download/$latest/avalanchego-linux-amd64-$latest.tar.gz && \
tar -xzf avalanchego-linux-amd64-$latest.tar.gz && \
sudo mv avalanchego-$latest/* /usr/local/bin/ && \
sudo chmod +x /usr/local/bin/avalanchego && \
rm -rf avalanchego-$latest avalanchego-linux-amd64-$latest.tar.gz

 

🧱 Step 3: Install Beam’s Subnet-EVM Binary

 

mkdir -p ~/subnetevm ~/.avalanchego/plugins ~/.avalanchego/configs && \
cd ~/subnetevm && \
subnetevm_latest=$(curl -s https://api.github.com/repos/ava-labs/subnet-evm/releases/latest | jq -r .tag_name) && \
wget -q https://github.com/ava-labs/subnet-evm/releases/download/${subnetevm_latest}/subnet-evm_${subnetevm_latest#v}_linux_amd64.tar.gz && \
tar -xzf subnet-evm_${subnetevm_latest#v}_linux_amd64.tar.gz && \
mv subnet-evm ~/.avalanchego/plugins/kLPs8zGsTVZ28DhP1VefPCFbCgS7o5bDNez8JUxPVw9E6Ubbz

 

⚙️ Step 4: Create Configuration Files

 

echo '{ "track-subnets": "eYwmVU67LmSfZb1RwqCMhBYkFyG8ftxn6jAwqzFmxC9STBWLC", "partial-sync-primary-network": true }' > ~/.avalanchego/configs/node.json && \
mkdir -p ~/.avalanchego/configs/chains/2tmrrBo1Lgt1mzzvPSFt73kkQKFas5d1AP88tv9cicwoFp8BSn && \
cd ~/.avalanchego/configs/chains/2tmrrBo1Lgt1mzzvPSFt73kkQKFas5d1AP88tv9cicwoFp8BSn && \
wget -q https://raw.githubusercontent.com/BuildOnBeam/beam-subnet/main/subnets/beam-mainnet/upgrade.json

 

🛠️ Step 5: Create Systemd Service to Auto-Start the Node

 

sudo tee /etc/systemd/system/beamnode.service > /dev/null <<EOF
[Unit]
Description=Beam Node
After=network.target

[Service]
User=root
ExecStart=/usr/local/bin/avalanchego --track-subnets=eYwmVU67LmSfZb1RwqCMhBYkFyG8ftxn6jAwqzFmxC9STBWLC
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
EOF

 

▶️ Step 6: Start the Beam Node

 

sudo systemctl daemon-reexec && \
sudo systemctl daemon-reload && \
sudo systemctl enable beamnode && \
sudo systemctl restart beamnode

 

⏳ Step 7: Wait a Bit for Node to Start

 

sleep 10

 

📡 Step 8: Get Your Validator Node Details

 

NODE_INFO=$(curl -s -X POST --data '{ "jsonrpc":"2.0", "id":1, "method":"info.getNodeID", "params":{} }' \
-H 'Content-Type: application/json' 127.0.0.1:9650/ext/info) && \
NODE_ID=$(echo "$NODE_INFO" | jq -r .result.nodeID) && \
BLS_KEY=$(echo "$NODE_INFO" | jq -r .result.nodePOP.publicKey) && \
BLS_PROOF=$(echo "$NODE_INFO" | jq -r .result.nodePOP.proofOfPossession) && \
echo "\nNode ID: $NODE_ID" && \
echo "BLS Public Key: $BLS_KEY" && \
echo "Proof of Possession: $BLS_PROOF"

 

💾 Step 9: Save Validator Info to File

 

echo -e "Node ID: $NODE_ID\nBLS Public Key: $BLS_KEY\nProof of Possession: $BLS_PROOF" > ~/beam-node-info.txt

 

📈 Step 10: Monitor Node Logs

 

journalctl -u beamnode -f

 

🔍 Step 11: Check Node Sync Status

To inspect the L1 sync status of your node, use the following command:

curl -X POST --data '{
"jsonrpc": "2.0",
"method": "platform.getBlockchainStatus",
"params":{
"blockchainID":"2tmrrBo1Lgt1mzzvPSFt73kkQKFas5d1AP88tv9cicwoFp8BSn"
},
"id": 1
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/bc/P

To check if your node has fully bootstrapped and is ready to be added as a validator, run:

curl -X POST --data '{ 
  "jsonrpc":"2.0", 
  "id":1, 
  "method": "info.isBootstrapped", 
  "params": {
    "chain": "2tmrrBo1Lgt1mzzvPSFt73kkQKFas5d1AP88tv9cicwoFp8BSn"
  }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/info

 

📝 Step 12: Register Your Validator Node

Once your node is fully synced with the Beam network, you can proceed with registration.
Check the video above for a walkthrough, or refer to the official documentation for step-by-step instructions.

🎉 Congrats! You’re now running a Beam node on Avalanche!

STAY IN THE LOOP

Get exclusive project updates, tutorials & community perks—right in your inbox.

STAY IN THE LOOP

Get exclusive project updates, tutorials & community perks—right in your inbox.