Hi, I’d also love to hear any developments on this.
At the moment I’ve got a setup that I think is pretty close to being redundant: I have 2 VPS’s running mailcow, with CloudFlare managing the DNS for my domain. The primary server (mail.mydomain.com) uses the cold-standby backup script (/opt/mailcow-dockerized/create_cold_standby.sh) to create/update a mirror image onto the 2nd VPS every hour (1 line cron job). It uses rsync, so doesn’t seem to transfer much data each time it does this.
So my cold-standby server is always ready to roll, and is only ever an hour out of date, so if my primary server ever has a major crash, I can switch the A record for mail.mydomain.com over to the IP address of the cold-standby server and boom, my clients can continue using their emails straight away, as though nothing is wrong (there’ll be a few emails missing that arrived in that last hour).
I also use the other backup script (helper-scripts/backup_and_restore.sh) to send a daily backup of my primary server to my Google Drive, and I keep a couple of days’ worth of these, just in case my cold-standby server has an issue.
I still need to figure out how I’m going to retrieve and restore those missing emails from that 1-hour gap, once I recover the data from my primary server again.
I’m also toying with setting up a backup MX server, but it would take a bit of tweaking to keep it updated with the list of domains/mailboxes/spam rules from the primary server, so I’ll worry about that later.
Does anyone have any opinions/improvements/suggestions on this setup? Should I run my cold-standby cron job every 5 minutes, or at some point of frequency will this cause issues (5 minutes/1 minute)?