Multi-VNode script

Hi everyone,
I’ve decided to make the script I’m using for running multiple Node Virtuals on a single machine public:

You just need to add in your validator keys at the top and it’ll create a Node Virtual for each one. The first node will be on port 9334, 2nd on 9335, and so on.

To add them to your app follow the instructions here to add nodes with custom ports: Advanced set up: customize the port of your Node


Nice!! Good job!


What kind of spec do you recommend for running multiple nodes on one machine?

1 Like

Not sure the exact minimum specs, you’ll need about 50GB of storage per vNode. @fitz_fiat might be able to chime in here? I know he’s got a lot more experience with running nodes :wink: but I’d suspect you could get modern mid-range laptop/desktop to run 5 vNodes comfortably.

1 Like

I’m running mine on VPSs and wouldn’t mind tripling up

50gb/vnode should get you through a year at current transaction load. That is unless you start having logging events then your logs might stress that out.
Now if the transaction load goes up like we all hope, then you might want to be able to put 100gb/vnode.

For CPU’s, have 1vCPU, and 1-2g ram per vnode. But always start with 2vCPU’s. You have to consider the OS as needing time as well.

For networking nothing less than 100mb, with a 4-5TB bandwidth Limit, best to have a larger channel, not sure if 4Tb is still needed with the new storage update version… I don’t think the amount of data received changed, just what they store locally did. (Could be wrong)

To triple up, I would say 200-300gb storage, 3vCPU and 3-4g ram should work.
With 200mb connection 4TB bandwidth limit.


What are the steps / things to install on a fresh VPS? I’m getting errors because this script doesn’t install docker or other required programs.

I tried but failed at pulling parts from the original node script. :confused:


Run the following before running the script: docker -v || bash -c "wget -qO- | sh"


I’ve updated the script to install docker and kill any other instances of on launch to prevent conflicts


@mesquka Can we just update the script with more validator keys to add more nodes or is there a more recommended way to add nodes? I already used your script to get a few nodes running but now I would like to spin up some more nodes.

I did this and both are running good just haven’t been paid for around 7 days is that normal?

Yep, if you add in new validator keys and then run the script again new instances should be started up and run.

1 Like

Yeah, if you can connect your nodes in the app or on my tool then they’re running fine. Earning slots are a bit random, see this topic for more details: My Node hasn't earned in x days/weeks


hey I did this but i do not see eth_mainnet running is that okay?

Yes, the script doesn’t start eth_mainnet. I’ll add this in as it seems like the nodes use it now. I had removed it as they didn’t seem to be using it previously.

1 Like

So do we need that? because my nodes are running without it?

When I run multi nodes I see this error that comes out in the log.txt not the error_log

The multi-vnode script doesn’t change anything inside the docket containers, so that’s not a consequence of this script

1 Like

One of my nodes that was setup using your script earned just a day or two ago. Any reason to rerun this script?

Have you seen that error in the logs prior?