Sitemap

Frankendancer for Agave Users: Transition Tips

MAS DeFi
3 min readFeb 7, 2025

Disclaimer: We run a Solana validator. If you find this article helpful and would like to support us by staking our validator you can find the details at the bottom of this page.

It’s time to make the leap to Frankendancer — exciting times! The setup process is fairly straightforward, and if you’re familiar with Agave, a lot of this will feel familiar. Here’s a quick guide to help you get up and running smoothly, plus some gotchas to watch out for along the way.

References

The Firedancer team has put together an excellent guide that walks you through the setup process. Make sure to check it out:

Firedancer Getting Started Guide

Firedancer Configuration (TOML)

Bonus: Solana Validator Education Videos:

Some Gotchas to Watch Out For

Log Rotation

If you’re used to systemctl kill -s USR1 for log rotation, heads up—it doesn’t work with Frankendancer. We switched to copytruncate, and it's been smooth sailing.

Here’s an example logrotate config:

rotate 7
daily
missingok
copytruncate

Kernel Versions Matter

Make sure your kernel versions are correct before running Frankendancer. If you’re unsure, double-check your system specs and update if needed.

Pro tip: AI is your friend! If you hit a snag, don’t be afraid to ask ChatGPT or search around for answers.

You’ll Need to Reboot

After making changes, don’t forget to reboot your server:

sudo reboot

Then, verify that everything is configured correctly post-reboot. We were doing this manually before because reboots were rare but it’s worth automating now.

Ensure your drives are mounted (we automated this with a boot script like this):

#!/bin/bash 
sudo mount /dev/nvme2n1 /mnt/accounts
sudo mount /dev/nvme3n1 /mnt/ledger
ls -lh /mnt/

Set CPUs to performance mode:

for cpu in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; 
do
echo performance | sudo tee $cpu;
done

Disable swapiness:

sudo sysctl vm.swappiness=0

Check your firewall settings (if applicable):

sudo ufw status

Configuring Frankendancer

You’ll need to migrate to a TOML file. The default provided by the Firedancer team is a great place to start. Search for your current flags in the official Firedancer docs — they’re super helpful in finding the equivalent setup in Frankendancer.

Warm-Swapping Validators with Frankendancer

If you’re used to hot swapping, note that Frankendancer does not support it yet. Until that day comes, we use the following process:

Update: Frankendancer now supports set-identity for hot swapping.

Setup

  • Check for an upcoming window between leader slots.
  • Open terminal for primary and backup
  • Ensure both validators are caught up and running properly:
solana catchup --our-localhost
  • Update the new primary TOML to use the real identity.
  • Update the current primary TOML to use a junk identity.
  • Disable snapshot fetch on both validators.
  • Ensure in sudo mode on both primary and backup validators.

Execution

Have these commands queued and ready. Timing is essential:

Stop service on primary then backup:

sudo systemctl stop frankendancer.service

Move the tower file from the current primary to the backup:

Still need to confirm this is necessary given the time it takes to launch from backup. But here it is just to be safe.

scp -i <path-to-ssh-key> /mnt/ledger/tower-1_9-$(solana-keygen pubkey <path-to-staked-identity.json>).bin user@ip:/mnt/ledger

Start Frankendancer on the new primary, then the new backup:

sudo systemctl start frankendancer.service

Confirm that validators are using the correct identities.

Monitor catchup progress:

solana catchup --our-localhost

With this setup we’ve been seeing it take 7–8 minutes to load ledger and 7–8 minutes to catchup from ~1,000 slots behind. Note: You can view the state in the new UI as soon as Frankendancer is running.

Cool new UI

The Frankendancer UI is full of useful metrics to monitor your validator. SSH in then open a local browser localhost:8080 to view.

ssh -i ~/.ssh/my-key -L 8080:localhost:80 user@remote-server

Final Thoughts

Switching to Frankendancer is a bit intimidating at first, but once you get the hang of it, it’s pretty straightforward — especially if you’re already familiar with Agave. Just keep an eye out for the gotchas above, and you’ll be fine. 🚀

Please consider staking with us if you found this article helpful. Search “MAS Defi” in your wallet or stake directly on our website’s stake with us page.

--

--

MAS DeFi
MAS DeFi

Written by MAS DeFi

Independent and reliable Solana validator earning top APY. Working toward a future where finance is open, fast, and built for everyone.

No responses yet