daften asked in http://community.aegirproject.org/discuss/offsite-backup-possibilities about offsite backups.

Well lets spec what you would need.

Use case 1: Aegir user makes a backup
After a backup is created it is automatically uploaded to X.

Use case 2: Aegir user removes a backup

Use case 3: Aegir user restores a backup

Questions:

  1. Should the backup still be stored on the aegir server? Or is it just an extra archive location.
  2. When removing the backup from the aegir ui, should it be deleted from the offsite storage?

The backup_migrate module has similar features... maybe we could look at that.

Comments

daften’s picture

To specify further what is needed.
We need these types of backup, since we deploy a drupal distribution as saas software. The admins for the sites shouldn't be able to edit backup policies.

I'd say: backup migrate has a decent model in relation to destinations. If we could specify destinations for the hosting site backup manager extension, and maybe also add different schemes. SO each scheme can have one or more destinations. Also, the deletion policy could be set as a configuration option (for when a user explicitly deletes a backup). Question 1 would be answered too, since the user could create a separate scheme for local backup.

E.g.
Scheme 1:
- Local (backups folder)
- Once every day, keep 1 backup per week for backups older than 2 weeks, ...
Scheme 2:
- Amazon S3
- Once every week, keep 1 backup per month for older than 1 month, ...
Scheme 3:
- SFTP
- Once every day, never delete.

If the destinations are pluggable, so it's easy to add extensions to this module for different destinations, it would be great and easy for people to write something for their own destination.

That's how I saw it, as a long-term solution that's generic enough to be used by all aegir users (I think).
Does it make any sense? Is it feasible? :)

Thanks for the quick responses and the help so far btw!

helmo’s picture

I did find some three year old code ... https://github.com/computerminds/aegir_backup_storage

Not sure at what stage that is though.

daften’s picture

I think that's one I stumbled upon too, but 3 years ago means no compatibility with aegir2 most likely, so I didn't inspect further.

daften’s picture

I finally found some time to look at this again.
It seems the other module allows you to choose ONE external offsite backup solution per site, and the onsite backups are shipped to there then. So in theory, the other module should integrate with this module nicely.

What I'll try to do is:

  1. Update the linked module set to aegir2
  2. Add support for FTP backups (for cheaper testing)
  3. Allow deletion of local backups after transferring the backups sucessfully
  4. Allow multiple offsite backup providers

If we'd have that, we'd have a powerful solution I think. The module seems extensible, so that looks good too, so we could split up the module in a base module and one module per type off remote backup solution. E.g. S3, (S)FTP, Rackspace Cloud files, ...

LeDucDuBleuet’s picture

What is the status of this feature request?

@daften Did you have time to make the other module https://github.com/computerminds/aegir_backup_storage work with Aegir2?

daften’s picture

Hi @leducdubleuet, I didn't finish the work. Documentation for Aegir plugins isn't very good, and the two plugins weren't very compatible. This module also doesn't seem that extensible TBH. We went with backup_migrate in the installation profile
I might look into it again for aegir3 if this module gets ported.

helmo’s picture

Version: 6.x-2.x-dev » 7.x-3.x-dev