⛓️Setting up an RPC/RO Node

🛠️ Steps to Set Up a Read-Only Node

1️⃣ Launch Cloud Instance

You can choose to run a node on your own hardware or use a cloud provider like Linode. We recommend selecting a reliable cloud provider to ensure uptime and performance.

2️⃣ Required Node Specifications

We recommend the following minimum specifications:

  • 🖥️ RAM: 1GB

  • ⚙️ CPU: 1 vCPU

  • 💾 Storage: 25GB

  • 🌐 Data Transfer: 1TB

These specifications provide a good balance between cost and performance for a medium-level instance.

3️⃣ Network Settings

Ensure the following ports are open:

  • Port 22: For SSH access

  • Port 5050: For UDP and TCP traffic

  • A custom port can be set using the --port <port> flag when running an Opera node.

4️⃣ Install Go

To install Go, run the following command:

$ sudo install golang-go

⚠️ If the above command fails, update your package list and try again:

$ sudo apt update
$ sudo install golang-go

5️⃣ Login to Your Server

Use an SSH client (e.g., Bitvise) or open your system terminal and log in with:

$ ssh user@<ip-address>
# Example:
$ ssh root@190.1.1.11

🔑 You will be prompted to enter the server password that was set during server initialization.

6️⃣ Upload Genesis and Opera Files

Use an SFTP client (e.g., FileZilla) to upload your Genesis and Opera files to the server.


🚀 Running Your RPC Node

To run an RPC node, execute the following commands in your terminal and customize them as needed:

$ chmod +x ./opera

$ nohup ./opera --genesis genesis-new.g --port=5566 --nat extip:<ip-address> --http --http.addr=<ip-address> --http.port=8576 --http.corsdomain=* --http.api=eth,web3,net,txpool,ftm,trace,debug --ws --ws.addr=<ip-address> --verbosity=3 --tracing --bootnodes "enode://57e72f44ebe3cacbc6d46e4d9dac1a761bc5aa11abd7763cf175ba96139b9219a4666e0275536874bb6b48983c1d068f7fce700c2e496b0945f09ba2134bd214@130.144.153.254:5566" --rpcvhosts=* &

🔹 Notes:

  • Replace <ip-address> with your own server's IP address.

  • Replace all enodes with your personal enode.


📖 Running Your Read-Only Node

If you do not want to write or modify data on your node, run the following:

$ chmod +x ./opera

$ ./opera --genesis gen.g --nat extip:<ip-address> --datadir ./data/

🛠️ After launching the node, verify that it is running in the background:

$ htop

🔗 Adding Peers Manually

To manually add peers, run:

$ admin.addPeer('<your-enode>')

✅ To verify that the peer was added:

$ admin.peers

❌ To remove a manually added peer:

$ admin.removePeer('<your-enode>')

🔍 To retrieve your own enode, execute:

$ admin.nodeInfo

Last updated