4

I like using hosted services. It's easy, they give you a SLA and you can generally trust they run at big enough scale to have serious back-up.

But it's a bit more expensive and loses you some flexibility. Since I'm likely to have SVN, bug-tracking, forums, website, some actual web-apps to host, getting a VPS seems a good choice.

However I know nothing about how to sort out backups. All the decent providers will let me get a backup add-on, but this is often doubles the entire cost of the package. So I wondered how easy it is to add this on myself, buying a separate 3rd-party storage facility.

EDIT: An example of a "do your own backup" is something like www.idrive.com. Is there any reason I can't get a VPS and run such a tool to cheaply mirror something like my SVN repo or Jira database? I don't need super-amazing backup.

Mr. Boy
  • 281
  • 3
  • 9

3 Answers3

1

"you can generally trust they run at big enough scale to have serious back-up" -- objection m'lud, assumes facts not in evidence. Plenty of big SaaS providers don't have decent backups; in fact, many of them weasel out of providing it by having somewhere in the fine print that it's your responsibility to have backups of the data held in the app (often this is coupled with a complete inability to export your data out of the app; yeah, awesome catch 22 there)

As far as doing your own backups of data stored on your own server, yes it's generally possible. However telling you how to do it in general isn't possible, because different apps/services require different procedures -- you need to run one tool for SVN, another for MySQL, and so on.

For commercial products, it can be very difficult to do a backup without their tool, because they've done something "interesting" with their data storage. Personally, any product that didn't come with the tools required to properly back it up would get sent back as "not fit for purpose" -- if you can't back it up, it effectively isn't managed. Charging extra for a backup tool smacks of extortion. One of the benefits of using practically-all Free Software.

EDIT: I think I misunderstood your question, and you're actually complaining about the costs of the backups provided by VPS providers. That's just standard marketing -- the low up-front cost of the system (so you can advertise your $0.89/decade VPS deals), then the eye-watering cost for all add-ons that people don't consider until they've signed the contracts (so you can actually make a profit). Pretty standard stuff -- I'm surprised you're not already familiar with it. Yes, you can use an off-site backup that's cheaper, although getting your data back onto the machine after a failure needs to be considered too.

Don't skimp on your backups, though. What most people consider to be "super-amazing" backup is, at the end of the day, about the bare minimum that's actually useful. I'm willing to bet that you've never restored a full system backup under time pressures from customers or bosses who are breathing down your neck wondering why you can't just press a magic button and have everything "restored from backup NOW!". Take some time while now, you've got a bit spare, to setup backups properly, because if you need to use them, they really, really do need to be super-amazing.

womble
  • 95,029
  • 29
  • 173
  • 228
  • I don't really want to back up specific tools in that way. I just want a backup running of my server in case it dies or is hacked or (more likely) I accidentally screw it up. Hosting providers typically offer such services like daily backups, but at very high price. That's all I want to consider doing myself. – Mr. Boy Jan 06 '10 at 10:45
  • What you want is immaterial. You can't backup a file if it's going to change underneath you, and that's exactly what a service-specific "backup tool" does -- take a consistent snapshot or whatever of the data so you get a useful backup. I think I misunderstood your question, though, so I'll update my answer to match. – womble Jan 07 '10 at 00:02
0

Whatever you do make sure you test your backups and procedures, otherwise they're worth nothing. Make sure you or you colleagues know exactly which steps to take to recover that repository or db.

Since we don't entirely trust the backup procedures of a hoster that hosts some of our LAMP servers, we do our own off-site backups as well. We're using Jungle Disk Server Edition for that. It's a program that you install on each server ($5/mnth*server + storage fees (10GB free/server)), and manage via a Client app. The backups are stored off-site on Amazon S3 and/or Rackspace Cloud Files, whichever your choice. Both the server software and the management app are available for Windows, Linux and Mac, which makes it well suited for our various servers.

We're backing up about 150GB of data and Jungle Disk appears to be very efficient in de-duplicating and compressing it so the actual transfers are fast. We went with Rackspace CF due to their lower cost. The total cost is very acceptable to us, but of course will vary according to amount of data, compressibility, retention period, percentage of data that changes, etc.

It's your responsibility to put the data you want to backup somewhere, so for example you could make a pre-backup script that does an mysqldump of your databases into a directory, which is then backed up by Jungle Disk. Similar with svn-hot-backup for your subversion repos. JD allows pre and post-backup scripts.

All in all, we're very happy with the software. It's easy to install and manage and cheap as well. I would prefer it over a self-built VPS backup solution, since it's simply one less server to manage and easier to restore from.

Martijn Heemels
  • 7,438
  • 6
  • 39
  • 62
0

I use systemimager, it uses a combination of scripts to build an image that can be redeployed on other servere, or to rebuild the original exactly as it was when the image was taken. As it uses rsync it happily does incremental backups so pulling the image offsite is trivial once the initial image has been pulled.

Its designed for a bare-metal server, but there shouldn't be a problem with running it on a VPS.

You can rebuild the system from a PXE boot, or by booting off a CD (designed for bare metal restores remember), but it can also re-image by running a script on a server to overwrite itself - which is exactly what you'd want after the ISP restores a fresh VPS image once disaster has struck.

You can also use it to create new servers based on the original - even for different hardware, which is quite cool. It was originally used to deploy a single image to many PCs.

Tutorial here.

Mind you, if all you're doing is backing up a website then you just need to rsync the /home directory, then dump all mysql databases to a file and back that up too. To restore, import your DB file to MySql, then upload the /home backup (or wherever you put your website files). This assumes you are not reconfiguring a lot of other files like firewall, logrotate, apache host configs, etc (or you'd make a backup of the changed files in /etc too - run AIDE to see which files you change after the ISP gives you the bare VPS image).

gbjbaanb
  • 3,852
  • 1
  • 22
  • 27