How to Create & Restore a Backup with VMware vSphere Data Recovery by Tom Finnis - January 20, 2010 Printer Friendly Version Introduction In my previous article on vSphere Data Recovery, you learned how to deploy the DR plug-in for the vSphere4 client and how to add the appliance to your virtual infrastructure. You also learned that one of its key features is an intuitive, wizard driven management interface that is integrated with the vSphere client to allow for simple configuration of your backup jobs. Assuming you followed the steps described in that article you should now be ready to learn how to use that management interface; in this article we will cover creating a backup schedule for a virtual machine, running a backup job and then how to restore that VM from the backup. Data Recovery Basic Principles The vSphere Client Data Recovery plug-in is used to configure the Data Recovery virtual machine, which then takes care of backup and restore jobs. In theory the DR VM can backup up to eight VMs concurrently, although its CPU utilization must be under 90% for it to start a backup job, otherwise it will wait until it drops. It works by using ESX's snapshot feature to freeze a point-in-time copy of the target VM's disks, which then give it a locked image to backup whilst the VM can continue to ope
rate as any disk changes are instead written to an interim snapshot file. Once the backup has completed the DR VM then releases the snapshot so that the intervening disk changes are replayed from the interim snapshot file into the frozen disk image, bringing it back to a live state. Data Recovery supports writing backups to a variety of locations, either a local ESX datastore or network targets utilizing CIFS based file sharing such as SAMBA or Windows folder shares. However due to memory constraints only two separate storage locations can be written to concurrently, more than two
locations can be specified but the jobs have to be scheduled to run separately. There is a limit of 100 virtual machines that can be backed up by a DR VM, although it will let you create backup jobs for more than that number of VMs it will simply omit to backup the excess. Additional DR VMs can be installed in order to work around this limitation but additional care needs to be taken when configuring the backup jobs as the appliances are not aware of each other. It is important to note that to ensure a fully restorable backup of a Virtual Machine state Data Recovery attempts to make a "quiesced" snapshot. This requires the OS and any applications running on it to write any essential memory resident data to the disk so it is included in the snapshot for backup, otherwise applications may lose important data. To do this VMware Tools has to be installed on the guest operating system, Data Recovery then instructs it to quiesce the system for snapshot creation and then to de-quiesce when the process is completed. With Windows guest OS's that support Volume Shadowcopy Services this is actioned by the VMware VSP service, otherwise VMware uses whatever quiescing support is available in the OS. Therefore you should always ensure you have installed the most up to date version of VMware Tools available on all your Virtual Machines wherever possible. Not having VMware Tools installed will not stop you from backing up a VM though, but your backups will only be "crash consistent" and may need a forced reboot after a restore. vSphere 4.0 ESX hosts include optimisations for virtual machines created on them that enable advanced change tracking for the virtual disk states, these optimisations are not present on VMs created on older versions of ESX (3.5 and earlier). You can easily check what versions your VMs are from the Summary tab in the vSphere client:
Virtual machines created on vSphere4 should be version 7, which supports the advanced data change tracking features, but if you have VMs created on ESX 3.5 or earlier then they will be version 4 or less. Fortunately you can easily upgrade the VM version, and it is well worth doing, just shutdown the VM and then right-click it in the left hand pane and select "Upgrade Virtual Machine version".
However before you do this make sure you have the latest version of VMware Tools installed on your VM, as the version upgrade also changes some of the virtual hardware, e.g. the NICs, which require new drivers included in VMware Tools. This change-tracking function allows the Data Recovery VM to analyse the changes since the previous backup and thus will accelerate the backup process. Data Recovery also applies data de-duplication to each storage location so where information is repeated across VM backups it will only store that information once. This can lead to significant space savings, particularly when several VMs running the same OS are backed up to the same storage location, so should be taken into account when designing your backup strategy. Setting Up Data Recovery In the previous article you deployed the VMware Data Recovery appliance onto your vSphere infrastructure, now we need to finish configuring it and create a backup schedule. Open your vSphere Client and if it is not there already navigate to the "Home" page, you should now see a new icon under the "Solutions and Applications" section for "VMware Data Recovery" - click this to start managing your appliance. Should you not see the icon there then refer to the previous article for how to install the management plugin - it has to be installed on each vSphere Client system you intend to use, rather than the vCenter Server. Since the release of version 1.1 VMware have simplified the interface and initial setup process, now you can just select your VMware Data Recovery appliance from the list on the left and click "Connect". The "Getting Started" wizard should then begin, if it doesn't you can start it manually by clicking the "Configuration" tab and then the "Getting Started" link. On the first page you will be prompted for credentials for the VM-DR appliance to connect to your vCenter Server with, depending on your security requirements you may want to create a separate user account for it to use. The VM-DR appliance initiates various tasks in order to perform its backups, such as creating VM snapshots, so by giving it its own login you can easily see which are its tasks when checking the vCenter logs.
The second step of the wizard configures the backup destination storage, for this guide we are assuming that you are using a VMFS store for your backup store, either on a SAN or local storage, which you attached to your VM-DR VM in the previous article. However if you want to use network based storage the process is the same, except you will first have to click the "Add Network Share" link here and provide the location of your storage. Note that the VM-DR appliance is a Linux based system and as such only supports CIFS/SAMBA shares, technically this should include Windows shares but there are a number of potential issues you may encounter. The first thing to check is that you are using the IP of your network target rather than a name, after that if you are still having trouble connecting then I suggest a quick web search which turn up several things to check. If you are using a VMFS store you wont have to worry about this and you should see the disk you added to your appliance listed in the wizard already:
If under "Type" it says "unmounted" then you will need to click "Mount" first, then you need to "Format" the disk, once this has completed you can click "Next" and then complete the wizard. On the final page check that you are happy with the settings you have chosen, check the "Setup new backup job" option and then click "Close". The new backup job wizard should now start, if it doesn't you may start it manually by clicking the "Backup" tab and then clicking "New". The first page of the wizard will list all the virtual machines on your vSphere infrastructure, with check boxes so you can select them for backup:
Tick the boxes of the VMs you want backed up, if you wish you can expand a specific VM and select to only backup certain disks, or you can just select the cluster/datacenter to backup all the VMs it contains. Click "Next" and then on the next page select the backup store which you wish the backups to go to, there should only be one to choose from at this stage. VMware Data Recovery supports multiple stores, although it can only backup to two different stores simultaneously, however you should bear in mind that you will not maximise the benefits of the data de-duplication if you split your backups across several stores.
On the next page you need to define the "backup window" for the job, i.e. when it is allowed to run on each day of the week. The virtual machine backups themselves do not have a great impact on
performance but the initial "quiesce" operation when the VM is snapshotted at the start of the backup can cause it to freeze for a while, especially if it has a high data throughput. As a result you should schedule your backup window so the backups start when your users aren't online and when the processing demands on the VMs are at their lowest. In practice once the initial full backup of a VM has been completed the subsequent incrementals are much smaller and so are completed in a fraction of the time, so you may want to specify as large a window as possible to start with and then reduce it later on. Its here that one of the limitations of VMware Data Recovery compared to other commercial backup solutions becomes apparent, you have fairly limited control over your backup scheduling. You cannot run more than one backup a day and the precise timing of that backup starting is hard to control, although usually they will start at the first window of opportunity each day. You can however restrict the backup frequency to less than daily by defining your backup windows appropriately.
On the last page you have to define your retention policy, i.e. how many historic backups you want to keep and for how long. What you choose here will be a compromise between the amount of storage space you need for your backups and how far you will be able to go back if you need to recover systems or files from the past. At this stage it is virtually impossible to judge how much space each backup will consume, since it is a combination of the daily changed data against the savings achieved by deduplication. Therefore I would advise selecting a fairly conservative policy (e.g. "more" or "many") for now, and then if necessary adjust it in a few weeks time when you are able to judge more accurately your storage consumption. Here you will discover another shortcoming of VM-DR, the reporting in general is rather concise and it can be fiddly to work out how much storage your backups are consuming. This is partly a side effect of the de-duplication, the logs will indicate figures for each backup
but these are the "theoretical" total and as a result the best option is to monitor how the free space on your backup store declines with usage. The final page of the wizard will confirm the settings you have chosen, so check these are ok and then click "Finish" to save the backup job. Depending on whether you are currently within your backup window it may start running the backup job immediately, in which case you will see the snapshot tasks appear in the task pane at the bottom. The backup jobs themselves do not appear here but you can monitor their progress by clicking the "Reports" tab and selecting "Running Tasks". After a few days of operation if all has gone well you should see a list of successful backup tasks on this page, and if you click "Virtual Machines" you should be able to see the daily backup points for each VM. isplay Connection Configuration: ipconfig /all Display DNS Cache Info: ipconfig /displaydns Clear DNS Cache: ipconfig /flushdns Release All IP Address Connections: ipconfig /release Renew All IP Address Connections: ipconfig /renew Re-Register the DNS connections: ipconfig /registerdns Change/Modify DHCP Class ID: ipconfig /setclassid Network Connections: control netconnections Network Setup Wizard: netsetup.cpl Test Connectivity: ping whatismyip.com Trace Route: tracert Displays the TCP/IP protocol sessions: netstat Display Local Route: route Display Resolved MAC Addresses: arp Display Name of Computer Currently on: hostname Display DHCP Class Information: ipconfig /showclassid NameServer Lookup: nslookup whatismyip.com
An A-Z Index of the Windows CMD command line ADDUSERS Add or list users to/from a CSV file ADmodcmd Active Directory Bulk Modify ARP Address Resolution Protocol ASSOC Change file extension associations• ASSOCIAT One step file association ATTRIB Change file attributes b BCDBOOT Create or repair a system partition BITSADMIN Background Intelligent Transfer Service BOOTCFG Edit Windows boot settings BROWSTAT Get domain, browser and PDC info c CACLS Change file permissions CALL Call one batch program from another• CD Change Directory - move to a specific Folder•
CHANGE Change Terminal Server Session properties CHKDSK Check Disk - check and repair disk problems CHKNTFS Check the NTFS file system CHOICE Accept keyboard input to a batch file CIPHER Encrypt or Decrypt files/folders CleanMgr Automated cleanup of Temp files, recycle bin CLEARMEM Clear memory leaks CLIP Copy STDIN to the Windows clipboard CLS Clear the screen• CLUSTER Windows Clustering CMD Start a new CMD shell CMDKEY Manage stored usernames/passwords COLOR Change colors of the CMD window• COMP Compare the contents of two files or sets of files COMPACT Compress files or folders on an NTFS partition COMPRESS Compress individual files on an NTFS partition CON2PRT Connect or disconnect a Printer CONVERT Convert a FAT drive to NTFS COPY Copy one or more files to another location• CSCcmd Client-side caching (Offline Files) CSVDE Import or Export Active Directory data d DATE Display or set the date• DEFRAG Defragment hard drive DEL Delete one or more files• DELPROF Delete user profiles DELTREE Delete a folder and all subfolders DevCon Device Manager Command Line Utility DIR Display a list of files and folders• DIRUSE Display disk usage DISKPART Disk Administration DISKSHADOW Volume Shadow Copy Service DNSSTAT DNS Statistics DOSKEY Edit command line, recall commands, and create macros DriverQuery Display installed device drivers DSACLs Active Directory ACLs DSAdd Add items to active directory (user group computer) DSGet View items in active directory (user group computer) DSQuery Search for items in active directory (user group computer) DSMod Modify items in active directory (user group computer) DSMove Move an Active directory Object DSRM Remove items from Active Directory e ECHO Display message on screen• ENDLOCAL End localisation of environment changes in a batch file• ERASE Delete one or more files• EVENTCREATE Add a message to the Windows event log EXIT Quit the current script/routine and set an errorlevel•
EXPAND Uncompress files EXTRACT Uncompress CAB files f FC Compare two files FIND Search for a text string in a file FINDSTR Search for strings in files FOR /F Loop command: against a set of files• FOR /F Loop command: against the results of another command• FOR Loop command: all options Files, Directory, List• FORFILES Batch process multiple files FORMAT Format a disk FREEDISK Check free disk space (in bytes) FSUTIL File and Volume utilities FTP File Transfer Protocol FTYPE File extension file type associations• g GETMAC Display the Media Access Control (MAC) address GLOBAL Display membership of global groups GOTO Direct a batch program to jump to a labelled line• GPRESULT Display Resultant Set of Policy information GPUPDATE Update Group Policy settings h HELP i iCACLS Change file and folder permissions IF Conditionally perform a command• IFMEMBER Is the current user a member of a Workgroup IPCONFIG Configure IP k KILL l LABEL Edit a disk label LOCAL Display membership of local groups LOGEVENT Write text to the event viewer LOGMAN Manage Performance Monitor LOGOFF Log a user off LOGTIME Log the date and time in a file m MAPISEND Send email from the command line MBSAcli Baseline Security Analyzer MEM Display memory usage MD Create new folders• MKLINK Create a symbolic link (linkd) MODE Configure a system device MORE Display output, one screen at a time MOUNTVOL Manage a volume mount point MOVE Move files from one folder to another• MOVEUSER Move a user from one domain to another Remove a program from memory Online Help
MSG Send a message MSIEXEC Microsoft Windows Installer MSINFO32 System Information MSTSC Terminal Server Connection (Remote Desktop Protocol) MV Copy in-use files n NET Manage network resources NETDOM Domain Manager NETSH Configure Network Interfaces, Windows Firewall & Remote access NETSVC Command-line Service Controller NBTSTAT Display networking statistics (NetBIOS over TCP/IP) NETSTAT Display networking statistics (TCP/IP) NOW Display the current Date and Time NSLOOKUP Name server lookup NTBACKUP Backup folders to tape NTRIGHTS Edit user account rights o OPENFILES Query or display open files p PATH Display or set a search path for executable files• PATHPING Trace route plus network latency and packet loss PAUSE Suspend processing of a batch file and display a message• PERMS Show permissions for a user PERFMON Performance Monitor PING Test a network connection POPD Return to a previous directory saved by PUSHD• PORTQRY Display the status of ports and services POWERCFG Configure power settings PRINT Print a text file PRINTBRM Print queue Backup/Recovery PRNCNFG Display, configure or rename a printer PRNMNGR Add, delete, list printers set the default printer PROMPT Change the command prompt• PsExec Execute process remotely PsFile Show files opened remotely PsGetSid Display the SID of a computer or a user PsInfo List information about a system PsKill Kill processes by name or process ID PsList List detailed information about processes PsLoggedOn Who's logged on (locally or via resource sharing) PsLogList Event log records PsPasswd Change account password PsService View and control services PsShutdown Shutdown or reboot a computer PsSuspend Suspend processes PUSHD Save and then change the current directory• q QGREP Search file(s) for lines that match a given pattern
Query Process Display processes (TS/Remote Desktop) Query Session Display all sessions (TS/Remote Desktop) Query TermServer List all servers (TS/Remote Desktop) Query User Display user sessions (TS/Remote Desktop) r RASDIAL Manage RAS connections RASPHONE Manage RAS connections RECOVER Recover a damaged file from a defective disk REG Registry: Read, Set, Export, Delete keys and values REGEDIT Import or export registry settings REGSVR32 Register or unregister a DLL REGINI Change Registry Permissions REM Record comments (remarks) in a batch file• REN Rename a file or files• REPLACE Replace or update one file with another Reset Session Delete a Remote Desktop Session RD Delete folder(s)• RMTSHARE Share a folder or a printer ROBOCOPY Robust File and Folder Copy ROUTE Manipulate network routing tables RUN Start | RUN commands RUNAS Execute a program under a different user account RUNDLL32 Run a DLL command (add/remove print connections) s SC Service Control SCHTASKS Schedule a command to run at a specific time SCLIST Display Services SET Display, set, or remove session environment variables• SETLOCAL Control the visibility of environment variables• SETX Set environment variables SFC System File Checker SHARE List or edit a file share or print share ShellRunAs Run a command under a different user account SHIFT Shift the position of batch file parameters• SHORTCUT Create a windows shortcut (.LNK file) SHOWGRPS List the Workgroups a user has joined SHOWMBRS List the Users who are members of a Workgroup SHUTDOWN Shutdown the computer SLEEP Wait for x seconds SLMGR Software Licensing Management (Vista/2008) SOON Schedule a command to run in the near future SORT Sort input START Start a program, command or batch file• SU Switch User SUBINACL Edit file and folder Permissions, Ownership and Domain SUBST Associate a path with a drive letter SYSTEMINFO List system configuration
t TAKEOWN Take ownership of a file TASKLIST List running applications and services TASKKILL Remove a running process from memory TIME Display or set the system time• TIMEOUT Delay processing of a batch file TITLE Set the window title for a CMD.EXE session• TLIST Task list with full path TOUCH Change file timestamps TRACERT Trace route to a remote host TREE Graphical display of folder structure TSSHUTDN Remotely shut down or reboot a terminal server TYPE Display the contents of a text file• TypePerf Write performance data to a log file u USRSTAT List domain usernames and last login v VER Display version information• VERIFY Verify that files have been saved• VOL Display a disk label• w WAITFOR Wait for or send a signal WHERE Locate and display files in a directory tree WHOAMI Output the current UserName and domain WINDIFF Compare the contents of two files or sets of files WINMSDP Windows system report WINRM Windows Remote Management WINRS Windows Remote Shell WMIC WMI Commands WUAUCLT Windows Update x XCACLS Change file and folder permissions XCOPY Copy files and folders :: Comment / Remark• Port Number Description 1 5 7 18 20 21 22 23 25 29 37 TCP Port Service Multiplexer (TCPMUX) Remote Job Entry (RJE) ECHO Message Send Protocol (MSP) FTP -- Data FTP -- Control SSH Remote Login Protocol Telnet Simple Mail Transfer Protocol (SMTP) MSG ICP Time
Host Name Server (Nameserv) WhoIs Login Host Protocol (Login) Domain Name System (DNS) Trivial File Transfer Protocol (TFTP) Gopher Services Finger HTTP Hostname X.400 Standard SNA Gateway Access Server POP2 POP3 Simple File Transfer Protocol (SFTP) SQL Services Newsgroup (NNTP) NetBIOS Name Service NetBIOS Datagram Service Interim Mail Access Protocol (IMAP) NetBIOS Session Service SQL Server SNMP Border Gateway Protocol (BGP) Gateway Access Control Protocol (GACP) Internet Relay Chat (IRC) Directory Location Service (DLS) Lightweight Directory Access Protocol (LDAP) Novell Netware over IP HTTPS Simple Network Paging Protocol (SNPP) Microsoft-DS Apple QuickTime DHCP Client DHCP Server SNEWS MSN Socks