If you've already used Rocket Pool on our Holesky test network, are comfortable with its ins and out, and are ready to either stake ETH or run a node for real on the main Ethereum chain, then this guide is for you! Here you will find instructions on how to migrate an existing Smartnode stack from the Holesky test network to one connected to the Ethereum mainnet, ready for staking your own real ETH and RPL.
Pool staking is largely the same process on mainnet as it was on the testnet. The URL will be different and the address of the rETH token may be different, but there are no significant changes to the workflow. Follow the Staking Guide, which has been updated with instructions for mainnet.
Nothing from the test network can be migrated to mainnet. The chain data is different for both Execution and Consensus, so you must remove the old chain data and resync the mainnet chains from scratch. Your validators on the testnet do not carry over to mainnet. Also, for security, compatibility, and safety purposes, you must make a new wallet on mainnet! Do not use your testnet node wallet on mainnet!
The following steps will delete all of your testnet data. If you want to preserve your test network setup, you should back up your hard drive or move it to a second machine.
For Docker Mode users, the Smartnode can migrate to Mainnet for you automatically.
While you still have the testnet configured, exit your validators on Holesky:
Select 1: All available minipools
from the list of choices and wait for it to complete.
This will help clean up the network by removing your validators instead of leaving them to constantly fail attestations and weaken Holesky's health (since they're no longer online).
Once that's done, open the Settings Manager:
Next, open the Smartnode and TX Fees category and change the Network drop down from Holesky Testnet
to Ethereum Mainnet
:
When you save and exit, you will be prompted with a notification that everything is about to be erased and a confirmation dialog:
Back up anything you want to keep (such as your data
folder which contains your node wallet and validator keys), then press y
and Enter
when you're ready.
The Smartnode will handle switching over automatically.
When it's done, you will be left with a fresh install on Mainnet. All of your settings (such as client choice) will be preserved, but you will need to create a new wallet. Also, you likely will not have a Checkpoint Sync URL on mainnet and should set one up as explained here; otherwise it will take a long time to sync the mainnet beacon chain.
If for any reason you cannot leverage the Smartnode's automatic migration process, you can do it manually in a few simple steps:
Select 1: All available minipools
from the list of choices and wait for it to complete.
This will help clean up the network by removing your validators instead of leaving them to constantly fail attestations and weaken Holesky's health (since they're no longer online).
You will overwrite this with the latest version of the CLI anyway, but if you want to be thorough, you can remove the old one first.
At this point your testnet installation has been purged, and you can safely migrate to a new mainnet installation. Follow the Creating Node with Docker guide carefully to set it up.