Tag Archives: backup

Cloud storage sums: how does the cost compare to backing up to your own drives?

Google now offers Cloud Storage Nearline (CSN) at $0.01 per GB per month.

Let’s say you have 1TB of data to store. That will cost $10 per month to store. Getting the data there is free if you have unlimited broadband, but getting it all back out (in the event of a disaster) costs $0.12 per GB ie $120.

A 1TB external drive is around £45 or $58 (quick prices from Amazon for USB 3.0 drives). CSN is not an alternative to local storage, but a backup; you will still have something like network attached storage preferably with RAID resilience to actually use the data day to day. The 1TB external drive would be your additional and preferably off-site backup. For the $120 per annum that CSN will cost you can buy two or three of these.

The advantage of the CSN solution is that it is off-site without the hassle of managing off-site drives and probably more secure (cloud hack risks vs chances of leaving a backup drive in a bus or taxi, or having it nabbed from a car, say). Your 1TB drive could go clunk, whereas Google will manage resilience.

If you consider the possibilities for automation, a cloud-based backup is more amenable to this, unless you have the luxury of a connection to some other office or datacentre.

Still, even at these low prices you are paying a premium versus a DIY solution. And let’s not forget performance; anyone still on ADSL or other asymmetric connections will struggle with large uploads (typically 1-2 Mb/s) while USB 3.0 is pretty fast (typically up to 100 Mb/s though theoretically it could be much faster). If you have the misfortune to have data that changes frequently – and a difficult case is the VHDs (Virtual Hard Drives) that back Virtual Machines – then cloud backup becomes difficult.

Backup and file history in Windows 8 Consumer Preview: a million options to confuse you

How is backup in Windows 8? Does it have online backup? Do files sync to SkyDrive like Apple’s iCloud?

Reasonable questions. I had a poke around in Windows 8 Consumer Preview. Search for Backup in the Start menu:

image

Not that then. Search in Control Panel:

image

More promising. So what is File History, is that the essence of Backup in Windows 8?

image

The essentials seem to be: File History is off by default. If Windows finds a drive other than the system drive, it will propose it for File History as above, otherwise it invites you to connect an external drive. Here are the Advanced settings:

image

You had better make sure that everything you want to save is in a library, because while there is also an Exclude folders option, I cannot see an Include folders option.

But File History is not, to my mind, backup. It will not recover your system or your applications. Oddly, if you want to see all the backup options, do not search for backup; search for recovery.

image

This is where things get strange. Go into Windows 7 File Recovery, which sounds like some legacy thing, and there is the old backup – yes, it does backup as well as recovery:

image

Note that from here I can also create a system image or a repair disc.

Alternatively there is the new Recovery feature:

image

Reset seems clear enough: a clean install, or at least, restoration of the OEM install that came when your PC was new.

Refresh though is more opaque. What exactly happens if you click Refresh?

Refreshing your PC reinstalls Windows and keeps your personal files, settings, and any apps that came with your PC and apps that you installed from Windows Store.

It seems to me that Refresh is essentially a Reset followed by restoration of Windows Store apps, settings, and your files as defined by Windows, probably the same as in File History but who knows? If you have a folder in your C drive called “Important stuff”, my guess is that neither File History nor Refresh will pay it any regard. Don’t do that.

The disappointment of Refresh is that it does not preserve other application installs, you know, like AutoCAD, Photoshop, that custom business app written in VB6 and somehow persuaded to work, and so on. Refresh could be less than refreshing for some users.

Advanced tools includes an option to create a recovery drive. It is not clear to me though what gets included here. On my system I was invited to insert a USB flash drive with at least 256MB capacity, which suggests that not much gets recovered.

Finally, I mentioned SkyDrive and online backup.

There is an online backup service built into Windows Server 8, but which is only available to test if you are in the USA. Might this also be offered to Windows 8 client users? It seems to me possible, but I cannot see it in the Consumer Preview.

What about SkyDrive? Microsoft is promising some strong SkyDrive integration, which will let you:

  • Open and save documents direct to SkyDrive in Metro
  • Have a SkyDrive folder in Windows Explorer
  • Get files from your PC remotely via SkyDrive.com

All good stuff; but I cannot see the desktop SkyDrive app in Windows 8 Consumer Preview. Details are here, where Microsoft’s Mike Torres says:

we aren’t talking about availability right now – but it won’t be available this week.

where “this week” means Consumer Preview week.

I have the Metro SkyDrive app on a Windows 8 slate that is not domain-joined. On my desktop PC, I domain-joined the Windows 8 install. Tried to run SkyDrive and got this:

image

Hmm. Does that mean not using a domain-joined PC? I went to Users as instructed. There is no “Switch to a Microsoft account” option, but there is an option to “Connect your domain account to your Microsoft account to sync PC settings”:

image

Hang on a moment. What, exactly, does this do? In particular, what does that last option, “Sign-in info”, mean? That if someone hacks my Live ID they have my domain login too?

How are app settings synced if I have different apps installed? What about different versions of the same app, or is this just Metro apps that can be presumed to be kept updated? What about PCs with different hardware that needs different settings, say Aero enabled on one but not another?

Again, reasonable questions, but don’t bother pressing F1. Nothing will happen.

Conclusion? If you want to backup your files or your system in Windows 8, you are in luck; there are a million options. I do not think you can call this simple though, and my guess is that wrong choices will be made and will be costly. 

My choice? Personally I like what Microsoft now calls “Windows 7 recovery”. It does an incremental backup of your entire PC, apps, “C:\important stuff” and everything. And it works. I do not see that any of the newer options replicates this.

Using backup on Windows Hyper-V Server or Server Core

Hyper-V Server 2008 R2 is a free virtualisation platform from Microsoft and an excellent bargain; I guess it is something Microsoft feels it has to do in order to compete with VMWare’s vSphere Hypervisor (ESXi) which is also free. Of course Microsoft still gets your money if you run Windows Server on the VMs, in either case. Hyper-V Server is in essence Windows Server Core with just the Hyper-V Role enabled, which means there is no full GUI, just a command window and a few odd GUI apps like Task Manager, Notepad and Registry Editor which Microsoft decided we cannot live without.

So what happens if you want to backup Hyper-V Server with built-in tools? Windows Server Backup is not available, first because it is a GUI application, and second because it is not installed.

There is a way. Windows Server Backup has a command-line version called Wbadmin. In some ways it is better, because you can script it, schedule it, and easily configure it through command-line arguments. It is not installed by default on Hyper-V Server or Server Core, but you can add it:

ocsetup WindowsServerBackup

Aside: If you want to see what else you can install with ocsetup, try oclist. You can install all sorts of things on Hyper-V Server, using this and third-party software, but note the terms of the EULA:

2(b). The instance of the server software running in the physical operating system environment may be used only to:
· provide hardware virtualization services, and/or
· run software to manage and service operating system environments on the licensed server.

Backup comes into that category in my opinion, but there could be areas of uncertainty. Using Hyper-V Server as a general-purpose file server would be a breach of the license, but using a file share on Hyper-V Server to copy some utilities which which to manage the server should be OK. I think – consult your lawyer.

Once you have Wbadmin installed you can backup the server. Attach an external hard drive, say to drive E, and run:

wbadmin start backup -backupTarget:e: -include:c:,d: -quiet

Actually that is not quite right, though it was my first effort. If you run this, even on a system with only C and D drives, you will get a warning:

Note: The list of volumes included for backup does not include all the volumes that contain operating system components. This backup cannot be used to perform a system recovery. However, you can recover other items if the destination media type supports it.

The reason for this is that current versions of Windows use a hidden system partition by default. This partition does not have a drive letter, but is needed for system recovery. In order to include it, add the –allCritical argument:

wbadmin start backup -backupTarget:e: -include:c:,d -quiet -allCritical

This will add the hidden partition to the backup, and enable system recovery, where you can restore the OS and all its data in once operation.

Another important argument is –vssFull. This switch in effect tells the operating system it has been backed up. The archive bit on changed files is flipped. You want this to happen if this is your only backup, but you don’t want this to happen if you are also using another type of backup.

Note that you can quit the backup with Ctrl-C but in fact it continues running. If you quit and then want to check the status, type:

wbadmin get status

and if you really want to quit:

wbadmin stop job

Backing up running VMs

Now the interesting bit. Can we backup VMs while they are running?

It should be possible, though Microsoft does not make it easy. The idea is that the backup saves the state of the VM in a snapshot, and backs up the snapshot. This means it should start cleanly on restore. But there are several tricky points.

First, if you want to backup VMs from the host, you need to set a registry key – see the following article. I would like to know why this is not set by default – it must be deliberate, since the requirement has stayed the same in Server 2008 and Server 2008 R2.

Second, there are actually two different snapshot mechanisms, one operating entirely on the host called “saved state”, and one operating in conjunction with integration services in the VM, called “Child VM snapshot”, according to the most detailed official article on the subject. This feature is shown in Hyper-V settings as Backup integration. For the Child VM Snapshot to work, there is a further limitation, that:

The Snapshot File Location for the VM is set to be the same volume in the host operating system as the VHD files for the VM.

I am not sure what happens if you have VHDs in several locations, as you might do if you wanted to optimize performance by having VHDs on different physical disks. [Update – apparently in Windows Server 2002 R2 the .AVHD snapshot files are always in the same location as their parent VHD, and this is on a per-VHD basis, so it should not be a problem in R2].

Third, there is a question mark about whether either method works for VMs running Active Directory:

Active Directory does not support any method that restores a snapshot of the operating system or the volume the operating system resides on. This kind of method causes an update sequence number (USN) rollback. When a USN rollback occurs, the replication partners of the incorrectly restored domain controller may have inconsistent objects in their Active Directory databases. In this situation, you cannot make these objects consistent.

I am also not clear whether archive bits are flipped in the child VM, if you use –vssfull along with the Child VM snapshot. If so, you should definitely not use –vssFull in the host if you are also backing up from the guest. I am trying to get clarification on these points.

These are more questions than I would like for something as critical as backup and restore of VMs. For peace of mind you should either shut them down first, which is unacceptable in most production environments, or else backup from the guest instead of, or in addition to, backing them up from the host. I’ll update this post when I get further information.

Data Protection Manager

Finally, note that in grown-up Microsoft environments you are meant to use Data Protection Manager (DPM) rather than fiddling around with wbadmin. There is even a white paper on how this integrates with Hyper-V. Ultimately though this is also based on VSS so some of the same issues may apply. However, if you are using the free Hyper-V Server 2008 R2, you are probably not in the market for DPM and its additional hardware, software and licensing requirements.

Bare-metal recovery of a Hyper-V virtual machine

Over the weekend I ran some test restores of Microsoft Hyper-V virtual machines. You can restore a Hyper-V host, complete with its VMs, using the same technique as with any Windows server; but my main focus was on a different scenario. Let’s say you have a Server 2008 VM that has been backed up from the guest using Windows Server Backup. In my case, the backup had been made to a VHD mounted for that purpose. Now the server has been stolen and all you have is your backup. How do you restore the VM?

In principle you can do a bare-metal restore in the same way as with a physical machine. Configure the VM as closely as possible to how it was before, attach the backup, boot the VM from the Server 2008 install media, and perform a system recovery.

Unfortunately this doesn’t work if your VM uses VHDs attached to the virtual SCSI controller. The reason is that the recovery console cannot see the SCSI-attached drives. This is possibly related to the Hyper-V limitation that you cannot boot from a virtual SCSI drive.

The workaround I found was first to attach the backup VHD to the virtual IDE controller (not SCSI), so the recovery console can see it. Then to do a system recovery of the IDE drives, which will include the C drive. Then to shutdown the VM (before the restart), mount both the backup and the SCSI-attached VHDs on the host using diskpart, and use wbadmin to restore each individual volume. Finally, detach the VHDs and restart the VM.

It worked. One issue I noticed though is that the network adapter in the restored VM was considered different to the one in the original VM, even though I applied the same MAC address. Not a great inconvenience, but it meant fixing networking as the old settings were attached to the NIC that was now missing.

I’ve appended the details to my post on How to backup Small Business Server 2008 on Hyper-V.