How to migrate BP node to a new server

I am thinking about upgrading my server running my BP node. Anyone have good tutorial on how to migrate to a machine with as litte of downtime as possible?

Yes,

Install the new node, let it sync and after move the file to the new node and start it like a producer (before stop the current BP)

This way u will have a downtime around 1 minute

Cheers,

1 Like

Thanks Alex, what are your thoughts on running the old BP node in parallel for redundancy if the primary node goes down? Is there an easy-ish way to do that or is that all custom script sort of stuff.

You can do it manually or automatically

Check this topic… if u need help or more infos open another topic and asq for…

Can you kindly suggest which files needed to move from old server to new server?

Hmm, u can move only the 3 files needed to start the node as a producer… or u can move all files that u have on old server

You mean node.cert,vrf.skey and kes.skey. right?

1 Like

yes, after this stop the old producer and test the new one

should i be using filezilla to move the files between nodes? everything in cd priv?

Yes, use filezilla sftp connection

and move the folders inside priv folder (wallet and pool)

i don’t seem to have a kes.skey but kes.start file instead. am i missing something? is it because i haven’t rotated kes keys in cntools yet?

Probably you bkp them on USB

I ended up just moving everything in PRIV folder… but now i am getting this error

Jun 26 18:14:31 **** systemd[1]: cnode.service: Failed with result ‘exit-code’.

**@:/opt/cardano/cnode/scripts$ sudo systemctl restart cnode
**@:/opt/cardano/cnode/scripts$ status=1/FAILURE
**@L:/opt/cardano/cnode/scripts$ journalctl -e -f -u cnode

Jun 26 15:55:47 **** cnode[1409]: VRF private key file at: /opt/cardano/cnode/priv/pool/Fresh/vrf.skey has “other” file permissions. Please remove all “other” file permissions.
unable to start cnode

Jun 26 18:15:39 **** cnode[51755]: Error in $: key “AlonzoGenesisFile” not found
Jun 26 18:15:45 **** cnode[51830]: AesonException “Error in $: key “AlonzoGenesisFile” not found”

Jun 26 15:55:47 **** cnode[1409]: VRF private key file at: /opt/cardano/cnode/priv/pool/Fresh/vrf.skey has “other” file permissions. Please remove all “other” file permissions.
unable to start cnode

go to cd $CNODE_HOME/priv/pool/Fresh

sudo chmod 400 vrf.skey

Jun 26 18:15:39 **** cnode[51755]: Error in $: key “AlonzoGenesisFile” not found

You will need to rebuild the node, use:

ghcup install cabal 3.2.0.0
ghcup set cabal 3.2.0.0
check the version
cabal - -version. (U should see 3.2.0.0)
Now stop the node and rebuild
sudo systemctl stop cnode
cd ~/git
cd cardano-node

git fetch --tags --all
git checkout 1.27.0

echo -e “package cardano-crypto-praos\n flags: -external-libsodium-vrf” > cabal.project.local

$CNODE_HOME/scripts/cabal-build-all.sh -o

then start the node

sudo systemctl restart cnode

1 Like

Alex, what about wallets, pool created into the old BP node through ./cntools.sh ? how to migrate the same to new BP node without disturbing stakes, pledge etc from pool perspective ?

copy the priv folder from old BP to the new BP

Just to make sure Alex;
If you want to move an existing producer to new server, you;

  1. Set up a new node on the new hardware
  2. Sync the new server to current epoch
  3. Copy the entire priv folder from the old producer and replace the new servers priv folder with that
  4. Rebuild the new node
  5. Take the old server offline
  6. Start the new server

Is that correct?

Yes, the wallet/pool files are stored inside priv folder … move the priv folder from old server to nee server, modify the env file (pool name) and that’s all

Hi Alex, thank you for the instructions, I followed it and it all seems to be working fine except that my BP is showing total and pending tx as “0”. I have attached screenshots of my bp and relays to get your input if everything seems right or there is a problem, any feedback is appreciated :slight_smile:

My connections are the private ips (BP = 10.0.0.1, R1 = 10.0.0.2 and R2 = 10.0.0.3)

Screenshot_20211004_021535

Screenshot_20211004_022044

Screenshot_20211004_022122

Screenshot_20211004_022219

Screenshot_20211004_022238

Screenshot_20211004_022307

Thanks

go to inside configuration file and set TraceMempool to true, save the file and restart the node