|
|||||||
![]() |
|
|
Thread Tools | Display Modes |
|
#1
|
||||
|
||||
|
New backup and restore facility
Now that the Quota Tracker provision is somewhat finished, it's time to proceed onward to the Referral and Backup/Restore Systems. I've expecting to complete the Referral System within the next 1 - 2 weeks, after which time I will begin work exclusively on revamping the existing backup/restore facility to a much more usable and user-friendly interface.
Before we discuss what things to implement or change in this new system, let me give you a bit of background information on how the current system, borrowed from Ensim, works. Old Backup Process: When a user requests a backup, two things are created. First an XML file with all of the site's Ensim configuration is generated. This contains information about aliases, disk space, bandwidth, sub-users, sub-user features, and all of the basic Ensim information. Of course this excludes a lot of esprit-specific features and capabilities such as domains added through the "Multiple Domain Manager", custom cronjobs, log profiles, Urchin data, PostgreSQL data, and so on. In other words, if the feature appears in esprit, but not in apnscp, there's a good chance the backup facility won't back it up. To make matters even worse, when a backup request is made, all files are backed up, including ones that you wouldn't use from a restore. This includes the hardlinked files owned by root. For example, cat, grep, ps, library files under /usr/lib/, all of those, which are dependent upon the server configuration, rather than account, are included. This results in enormous backups. For example, what should be a 25 MB backup file turns into a 500 MB+ backup. Backups come in one flavor, tarball + gzip or tar.gz extension. Proposed New Backup Process: Ideally I want to keep an XML configuration similar to Ensim, but add the additional domain configuration, Urchin, log profiles, and so on to make a restore seamless, should the need ever arise for a user to rollback. Further, the backups will backup just the files that you have created. This would include Ruby gems, your e-mail folders, Urchin profiles, MySQL and PostgreSQL data, your HTML files, user information (e.g. password file, user privileges), and nothing more than what is unique to your site. This helps cut down on a lot of needless junk in the backup and also significantly reduces file backup sizes. I would like to introduce some other compression options, e.g. zip and bzip2 to managing the backup a little bit more convenient as well. Aside from those few changes, what other ideas do you want to see in the new backup system? |
|
#2
|
||||
|
||||
|
Quote:
).I would like to see the ability to exclude certain files/directories from backup. (e.g., I don't need to back up the photos from Gallery, because if I need to restore them I can just re-upload.) I'd like to see the ability to run the backup process unattended, with a couple of options: 1) Provide a server/id/password to send the completed backup to (via FTP, SCP, etc.) or 2) Save the backup locally (of course it would count against your quota) for manual retrieval at a later time. (The basic reason for this might be to run a backup before running a cron job that may make significant changes to the environment. Obviously, the information to be modified could/should be backed up by the process anyway, but if the facility exists to do the backups, it's easier than re-inventing the wheel while minimizing the possibility of forgetting to back up something critical.) |
|
#3
|
||||
|
||||
|
All right, taking into consideration your feedback, here is what we have thus far.
esprit Backup Facility |
|
#4
|
||||
|
||||
|
Looks good to me. What's the "Backup Filter" dropdown at the top do?
|
|
#5
|
||||
|
||||
|
It changes the engine used to generate the backup or process a restore.
|
|
#6
|
||||
|
||||
|
I was about to ask how to backup user accounts and email on the server, but I have a feeling this thread will address that and more. How's the backup coming along?
When I check in esprit, the only 'Backups' which jump out at me are for MySQL and Postgre. |
|
#7
|
||||
|
||||
|
Quote:
|
|
#8
|
||||
|
||||
|
Oh lovely, that sounds like a great Friday. Good to hear it was more a waste of time than anything worse.
I've got a few migrations to complete, moving some packages from Kernel to Gauss in the near future. Before I jump into it, I was hoping to backup everything (for my client's peace of mind, and my own). No huge rush though, I can definitely wait till sometime this week for the roll-out of backups in esprit. |
|
#9
|
||||
|
||||
|
It will probably be much longer than mid-week since the new backup facility has a few components written, but it's far from ready. Drop me a PM with what you want backed up and when.
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|