Everyone needs backups, but how do you recover a server quickly--operating system, patches, and all? We look at some of the options available for snapshot backup and other disaster recovery techniques.
Disaster recovery software covers quite a wide gamut of features and functionality. One we are all familiar with is good old tape backup software. Disaster recovery is precisely what tape backup is all about, but it is really only the blunt end of the disaster recovery pyramid.
Limitations of tape backup
Traditionally with tape backup software, you take full backups of your data files at regular intervals and more frequently incremental backups. Should a disaster occur, it's simply a matter of restoring the most recent full backup and incremental backup to restore your data. In a simple scenario, you might run the full backup over the weekend and then incremental backups Monday through Friday. Of course a loss of data on a Friday is going to be a long-winded restore, as you would need to restore a full backup and then four incremental backups--Monday through Thursday night--one after the other. For this reason alone, many choose to carry out a full backup on the weekend, incremental backups Monday and Tuesday then a differential backup on the Wednesday followed by two more incremental backups on Thursday and Friday.
The differential backup on the Wednesday takes longer than an incremental but it means a failure on the Friday would only require a full, a differential, and an incremental to be restored--not a full and four incremental backups.
If however your whole server Chernobyls or is stolen, you have lost a bit more than your valuable data, you have also lost a possibly significant chunk of time rebuilding your server to the point where you can start to restore your data files. The traditional tape backup scenario only backs up data files. Since you are not going to be restoring your operating system (OS) from tape, you will first have to install the OS, drivers, and probably a great wad of patches from the OS vendor. And believe me--I have just rolled out seven new test servers for the Lab--this is quite a time-consuming task. Time of course is money and most probably your business will be operating at a fraction of its efficiency at best, or not at all at the worst, until your data is back online.
Of course with inexpensive ATA drives that are fast and offer large storage capacities, many companies are replacing their tape unit with a direct attached ATA drive array. This speeds up the backup and restore processes considerably but file-based backup software does nothing to cure the inevitable and ponderous manual OS reinstall.
A problem with your basic garden variety backup software is that the application/s may need to be taken offline to execute the backup. This is fine if your business runs nine to five, but in many cases the systems must be up 24x7 so there is no window of opportunity.
To overcome this problem, there are new incremental or snapshot backup technologies that are file- or block-based, that run in the background while your system is fully operational. The idea being that as data is changed, only the changes are stored.
The snapshots may be 15 minutes apart, for example, so at the most you may lose 15 minutes of data. Some vendors offer "real time" snapshots of the data as the changes are made; these snapshots are all time stamped so if a problem occurs you can simply roll back one step prior to where the problem occurred. This is great for malicious virus attacks, for example, as you can identify the very point that the virus infected the system and roll back to clean data.
How do you take full backups or even snapshots of applications that cannot be taken down?
Well a simple solution may be to run a mirror of the application. While the app runs on one volume, the mirror volume can be taken offline and streamed to backup. Of course when the mirror is placed back online, there is the need to resync the mirrored volume. Since 1TB of data takes around 16 hours to resync, it can be quite a long wait. However a small "resync" volume can be created that simply tracks the changes after the mirror is taken offline, this then updates the mirror in a fraction of the time.
There are pros and cons to either file- or block-based incremental backups. File-based backups are naturally larger than block-based backups, but restoring a file-based backup is generally less involved and may at times be quicker when all you need is a particular file.