Configuring Synology to synchronize with Microsoft Azure
I’ve been looking for a robust and affordable storage solution for use at home, and possibly at the office also. A few years ago I found the Synology devices, and started my journey by purchasing a Synology DS 412+ device (the ‘12’ reflects the year of release, and 4 reflects the amount of disks the device can hold). It’s been a truly great investment as I can use the same small form-factor device for my media needs with Plex, backup, apps and storage. It’s been really robust with zero issues or hiccups during the two years or so I’ve been using it daily.
[Note April 2, 2019: This model is not sold anymore, as it’s about 7 years old already. The closest replacement models are the DS 918+ and DS1019+]
I also tried using it as virtual machine storage through iSCSI but the spinning disks are simply too slow for my taste to actually enjoy using virtual machines with it. Since the device only has 1 GB of RAM by default, there are serious boundaries for things you can run at the same time, but most of the time, it’s more than enough.
Resource monitor for me often looks like this:
I’ve loaded my Synology with four 4 TB Western-Digital hard drives. With Synology Hybrid Raid mode this provides me with 10,82 TB of redundant capacity locally. It’s a bit overkill but at least I don’t have to worry about running out of disk space anytime soon. It has taken me about 3 years to get to 4 TB that I am using now.
For some time, Cloud Sync, a package (or “app”) part of the management layer of Synology (DSM, Disk Station Manager) has provided support for Dropbox. I use Dropbox quite heavily for my personal and work files, so I started by configuring my home Synology DS 412+ to synchronize everything from Dropbox to Synology-managed storage.
This allows me to have a local copy of all my Dropbox files, which I can access when I’m at home, via the mobile apps or over the Internet via VPN the Synology hosts for me. It truly is great, although I haven’t had many issues with Dropbox in 5 years, it’s still nice to get a local copy I can manage myself. The synchronization can be configured one-way (from Dropbox to Synology) or two-way (mirror). The DSM web interface has a handy taskbar icon to show me the progress.
The polling can be set manually through Cloud Sync settings, which I’ve set to 10 seconds.
In addition I’ve configured a local 2 TB USB disk to synchronize everything from my local (Synology-sync’d) Dropbox folder with versioning. This provides me with a nice way to have secondary copy of all content – as long as I rotate the disk and take it offsite regularly. This is handled through Hyper Backup, which is a separate app from Cloud Sync and meant for more regular backups – not just synchronization and mirrors.
I’ve tried setting up Hyper Backup in Synology to backup offsite over the Internet. This worked quite well with Azure Storage, but it wasn’t a free service. With all the miniscule fees Azure Storage imposes on you – such as put operations, capacity and writes, I ended paying about 2 €/month for my offsite backup storage.
[Update April 2, 2019: I’ve updated the prices above and below, as Azure Storage fees have drastically fallen in recent years]
This isn’t hugely expensive, as I really appreciate the quality of service Microsoft Azure gives me. A few months ago Microsoft released Azure Cool Storage, which is essentially the same Azure Storage service but with a lower-cost tier for offsite backups and “cool” data. This essentially promised to cut my offsite backup cost about 60 %, as the price fell from 4 €/GB to 0,01 €/GB per month. These days Azure Storage also provides the Archive tier, but Synology doesn’t support that.
So I resorted to using a 2 TB external USB disk, and multiple copies of Dropbox content (scattered around different devices) to satisfy my immediate backup needs. Until yesterday Synology announced they’ve updated Cloud Sync to support Azure Storage! Now I wouldn’t have to use Hyper Backup to have the initial backup finish in +100 hours, I can just synchronize. While synchronization is not the same as backing up, for me – and for my Dropbox files – this is mostly enough (I’m using Dropbox Pro with Extended Version History in addition).
I can now configure Cloud Sync with Azure Cloud Storage as the target, and still use Azure Cool Storage.
Viewing the status through Azure Portal, I can see that the initial sync from Synology to Azure Cool Storage is progressing nicely:
As such, I can now do the following to secure my files in case of a hardware breakdown or other disaster:
- Synchronize my Dropbox to local Synology, or multiple Synology devices (one at home, one at the office for example)
- Synchronize my Dropbox from local Synology to Azure Cool Storage – with the possibility of using global redundancy from Azure Storage
- Backup my Dropbox to external USB devices (hourly), and rotate the drives on a daily basis (take it with me to the office every morning)
- Synchronize from Synology directly to another Synology
All of this naturally applies to non-Dropbox content as well. For me, Dropbox is very convenient and I have most of my critical files there.