Just a quick teaser of a project I’ve been working on since receiving my RPi 4B last week.
I CAN’T OVERSTATE THIS ENOUGH, THIS IS NOT TO BE USED FOR, AND MUST NEVER BE USED WITHIN A PRODUCTION ENVIRONMENT. THIS IS A FUN PROJECT ONLY.
I’ve managed to get Veeam’s binaries running on the Raspberry Pi, but I don’t mean the backup agent, I mean the actual Veeam Installer Service and Veeam Transport Service components.
I’ve managed so far to create backup repositories directly on the RPi, though I’m having issues getting IO to flush properly to attached storage, causing backup jobs to fail.
The VMware backup proxy process incorrectly identifies the Raspberry Pi as 32-bit when it’s running a 64-bit OS, and is reporting itself as x86_64.
But I’ve managed to successfully use the RPi for arguably the best use-case, as a super cheap SoC for a ROBO NAS Gateway.
You might be thinking at this point I’ve used qemu and ‘so what, you’re emulating x86_64’, but that’s the difference, I’m actually using box64 as a way to wrap x86_64 libraries to their aarch64 counterparts, meaning that code is running natively as ARM64 where possible, instead of emulated. The project does fail back to emulation if it doesn’t have a natively wrapped library created, which I’ve had to use for one library to get the Veeam Deployment service to work.
As a little teaser of the performance. I was using NBD from a VMware Workstation-based VBR server, to a nested ESXi server, then talking over 1GbE to the RPI and back to another VMware Workstation-based VM that was hosting the NFS share. Processing rate was a respectable 35MBps, transfer rate peaked at 25MBps, but the VM was a tiny Ubuntu web server and bottleneck was entirely proxy:
0% Source
47% Proxy
0% Network
0% Destination
And, to prove that it was a good backup, SureBackup restored it successfully too!
This is just a sample of what I’ve been working on and I hope to share more in the future on this project
If you’re wondering why bother, I just love the idea of Veeam backup repositories running on cheap, energy efficient ARM-architectures, where the CPU is rarely the constraint, but instead the disk.