πŸ’»Baremetal

Authors: [man4ela | catapulta.eth]

System Requirements

CPU
OS
RAM
DISK

8+ cores CPU

Debian 12/Ubuntu 22.04

=> 16 GB RAM

15GB+ (SSD or NVMe)

circle-info

The Boba Mainnet archive node has a size of 12GB on July 29, 2024

Boba

circle-check
Node Architecture
circle-exclamation

Pre-Requisites

Setting up Firewall

Set explicit default UFW rules

Allow SSH

Allow remote RPC connections with Boba Node

circle-exclamation

Enable Firewall

To check the status of UFW and see the current rules

Install dependencies

Required Software Dependencies

Dependency
Version
Version Check Command

go

^1.21

go version

node

^20

node --version

pnpm

^8

pnpm --version

foundry

^0.2.0

forge --version

make

^4

make --version

yarn

1.22.21

yarn --version

nvm

0.39.3

nvm --verison

Install GO

Install nvm

Download foundry

Install foundry

Install node and yarn

Check if go and all dependancies are installed

Build the Rollup Node (op-node)

Clone the Boba Monorepo

Check out the required release branch

Release branches are created when new versions of the op-node are created. Read through the Releases pagearrow-up-right to determine the correct branch to check out.

Build op-node

Create database directory and jwt secret file

Create systemd service for op-node

circle-exclamation

Build Legacy Geth (l2geth)

Clone the Boba Legacy Monorepo and build l2geth:

Create database directory for l2geth, download and extract archive snapshot:

Create systemd service for l2geth

Paste the configs and save by entering ctrl+X and Y+ENTER:

Build the Execution Engine (op-Erigon)

Release branches are created when new versions of the erigon are created. Read through the Releases pagearrow-up-right to determine the correct branch to check out.

Create database directory, download and extract the most recent snapshot

circle-check

Create systemd service for op-erigon

Start BOBA

Start op-erigon

circle-info

It's usually simpler to begin with startingop-erigon before you start op-node. You can start op-erigon even if op-node isn't running yet, but op-erigon won't get any blocks until op-node starts.

Start op-node

circle-info

Once you've started op-erigon, you can start op-node. op-node will connect to op-erigon and begin synchronizing the BOBA network. op-node will begin sending block payloads to op-erigon when it derives enough blocks from Ethereum

Start l2geth

Monitor the logs for errors

During the initial synchonization, you are expected to get following log messages from op-node

After a few minutes, op-node finds the right batch and then it starts synchronizing. During this synchonization process, you get log messags from op-node

Run curl command in the terminal to check the status of your node

If it returns false then your node is fully synchronized with the network

References

Last updated