SharePoint 2010 and Your DR Plan: New Capabilities, New Possibilities!

Speaker: Sean P. McDonough

Attendee Audio: 312-878-0222 Access Code: 335-771-060 **Or you can listen through your computer speakers Agenda

. New capabilities and features that alter the disaster recovery (DR) landscape in SharePoint 2010 . Improvements to existing SharePoint 2007 functionality that affect DR . A few areas that require special attention for DR purposes SharePoint 2010 Additions

. “The New Hotness” . PowerShell support . Configuration-only /restore . SQL snapshot integration . Unattached database recovery . SQL Server database mirroring

PowerShell Support

. Wait … this is still a DR presentation, right? . PowerShell pervades the platform . What is it? . Command line of the future . >600 cmdlets supply SharePoint-specific operations . Object-oriented, more efficient, and more capable . Why you should care . All signs say STSADM.exe is on its way out . PowerShell empowers administrators to do their jobs … PowerShell Support

. Assigning a custom 404 page for all Web applications without one (pre-PowerShell) . Place HTML page in the of each WFE . Fire up Visual Studio on a workstation with SharePoint . Create a custom . Set appropriate SharePoint assembly reference(s) . Enter three lines of C# code . Compile the console application . Run the application on a SharePoint farm member . Detailed at http://support.microsoft.com/kb/941329

PowerShell Support

. Assigning a custom 404 page for all Web applications without one (using PowerShell) . Place HTML page in the file system of each WFE . Execute the following line PowerShell

Get-SPWebApplication | Where-Object {$_.FileNotFoundPage -eq $NULL} | ForEach-Object {$_.FileNotFoundPage = "Custom404.htm"; $_.Update()}

. That’s it! PowerShell Support

. Backup/restore PowerShell cmdlets Operation STSADM.exe (2007) PowerShell (2010) Farm backup STSADM –o backup Backup-SPFarm and restore STSADM –o restore Restore-SPFarm

Site collection STSADM –o backup Backup-SPSite backup and STSADM –o restore Restore-SPSite restore Granular export STSADM –o export Export-SPWeb and import STSADM –o import Import-SPWeb

Configuration N/A Backup-SPFarm backup and Restore-SPFarm restore Backup-SPConfigurationDatabase PowerShell Support

. DR planning implications . Will alter documented procedures that involve scripting . Provides new avenues for the collection of configuration data (e.g., using Export-Clixml cmdlet) . DR operational implications . May lead to changes in script execution and scheduling . PowerShell remoting! . Efficiency and concurrency improvements may shorten RTO windows Configuration Backup/Restore

. The pain we all felt in SharePoint 2007 . You need to set up additional farms . How do you copy configuration data between farms? . Configuration-only backup and restore . Extension of backup/restore API . Components report their portable configuration data . Captured in a standard native backup set . Backup set can then be restored . In-place (restore a farm’s previous ) . Out-of-place (to copy one farm’s settings to another)

Configuration Backup/Restore

. Full-farm configuration-only backup

Configuration Backup/Restore

. Full-farm configuration-only restore

. Hmmm … does that look a little “light?”

Configuration Backup/Restore

. Captures a limited subset of config data . Antivirus settings . Information rights management (IRM) settings . Outbound e- settings . Customizations and solution packages . Diagnostic logging settings . Web app settings aren’t captured. Ouch. . Service application configuration data isn’t captured, either. Double ouch.

Configuration Backup/Restore

. DR planning implications . Can be helpful for point-in-time configuration captures . Useful when establishing/maintaining standby farms . Judicious use may remove the need to document some farm configuration settings . DR operational implications . Generally minimal . If recovery plan employs a full farm rebuild, configuration-only restores can help reduce RTO SQL Server Snapshots

. What is a snapshot? . For all practical purposes, it’s a copy of a database with data that remains consistent to point-in-time of creation . Requires SQL Server Enterprise or Developer edition . How snapshots integrate with SharePoint . Object model support (via SPContentDatabase) . Snapshot clean-up through SharePoint Foundation Snapshot Management timer job . Admin tools extended to use snapshots where possible . Backup-SPSite and Export-SPWeb cmdlets

SQL Server Snapshots

. Site collection without snapshots . Site collection is locked to prevent updates

. Site collection backups using snapshots . Site collection remains unlocked; no writes blocked SQL Server Snapshots

. DR planning implications . Snapshots place additional load on SQL Server . Size and plan SQL Server environments accordingly . DR operational implications . Snapshots can increase SharePoint availability by avoiding locking Unattached Database Recovery

. Granular recovery using SharePoint 2007 1. Locate appropriate content database backup 2. Restore content DB to SQL Server in recovery farm 3. Attach content database to Web app in recovery farm 4. Export target content using STSADM –o export 5. Copy resultant .cmp export set to production farm 6. Execute STSADM –o import to bring in content . Why all the steps? . Bottom line: a content database can’t be attached twice to the same SharePoint farm due to GUID collision Unattached Database Recovery

. What is unattached content DB recovery? . Allows SharePoint to operate against a content database without actually joining it to the farm . Sidesteps the site collection duplicate GUID restriction . Granular recovery in SharePoint 2010 1. Locate appropriate content database backup 2. Restore content DB to live SQL Server environment 3. Use Central Administration to browse unattached content database, select data, and export data 4. Import .cmp export package using Import-SPWeb Unattached Database Recovery

. DR planning implications . Reduces or removes need for recovery farms . May affect SQL Server capacity planning and sizing . DR operational implications . Reduces operational overhead (fewer farms) . Can reduce RTO window for granular recovery activities SQL Database Mirroring

. What is mirroring? . Same database(s) on 2 SQL Server instances . Principal (the DB in the production SQL instance) . Mirror (aka, the failover partner) in another instance . Data is committed to both DBs at once . Loss of the principal means the mirror takes over . SharePoint 2010 is mirroring aware . Aliases and registry hacks no longer required . No more splits (i.e., unfortunate state where principal DBs are spread across both SQL instances)

SQL Database Mirroring

. All SharePoint databases can be mirrored . Yes, even the farm configuration database . Some important requirements to note . SQL Servers must use same version and edition . 1Gbps bandwidth between SQL Server instances . <1ms latency between SQL Server instances . High-safety mode (synchronous mirroring) . Witness server required for automatic failover . Mirrored databases must use full-recovery model . Planets must align (even Pluto) during a leap year SQL Database Mirroring

. DR planning implications . Mirroring for DR carries significant data center design and location considerations . Profound impact to DR strategies and plans . SQL Server sizing and capacity planning implications . DR operational implications . Effectively removes RPO windows and data loss . Can drastically reduce RTO windows vs. conventional backups

Introduction to Idera’s SharePoint backup

Improved from SharePoint 2007

. Quick tour of what’s been updated with 2010 . Read-only databases . Search indexing and related operations . Native backup/restore . Granular backup/restore Read-Only Databases

. Possible with SharePoint 2007 SP2 . User experience less-than-optimal . Some farm operations were adversely impacted . Behavior changes with 2010 . SharePoint fully aware of read-only DBs . Supported for both content DBs and service app DBs . UI elements react properly when read-only DBs in-use . Search crawling now possible against read-only DBs . Subtle but important change, particularly for log-shipped standby farms and other read-only environments … Search Changes

. Search broken into two different roles . Query – serve results, holds index segments . Crawl – index content, stateless in its operation . “Indexing” no longer a single point of failure . Both roles can be scaled-up and scaled-out . Fault-tolerance and load balancing achievable . Search backup now a two-stage process . Crawling continues during 1st stage, paused for 2nd . 90% faster than search backup in 2007 Native Backup/Restore

. Core functionality largely unchanged . Backup/restore is now multi-threaded . Defaults to 3 threads; adjustable from 1 to 10 . Additional threads is not necessarily better . Configuration-only backup now possible versus data + configuration . Native capabilities integrate service application backup/restore Granular Backup/Restore

. Central Administration support . Now permits site collection backups and exports . Command line largely unchanged . Introduction of PowerShell cmdlets . A couple of new tricks . SQL Server snapshot capability (already discussed) . Gradual deletion of site collection when restoring . Can be used when restore involves an overwrite . Defers deletion of overwritten site collection . Gradual Site Delete timer job cleans up later Special Attention

. New functionality that mandates some caution from a DR perspective . Service application framework . Remote BLOB storage (RBS) . Business Connectivity Services (BCS) Service Application Framework

. What’s good . Use only the service applications you need . Ability to scale-up and scale-out in most cases . Multi-tenancy and cross-farm consumption . What’s not-so-good . Doesn’t participate in configuration-only backup/restore . Tough to backup/restore – even with native tools . Document your farm configuration! . http://technet.microsoft.com/en-us/library/ff645391.aspx

Remote BLOB Storage (RBS)

. What is it? . Offloading storage of binary large objects (BLOBs) from SQL Server to another storage system . Reduces content database size (often dramatically) . SQL Server has the FILESTREAM RBS provider . Most enterprise systems use a 3rd party RBS provider . Why you should be concerned . FILESTREAM actually handles data on backup/restore . 3rd party providers may only work with RBS pointers . Understand implications for backup/restore Business Connectivity Services (BCS)

. What is it? . Evolution of the MOSS Business Data Catalog (BDC) . Surfaces data from line-of-business (LOB) systems as external lists that appear to belong to SharePoint . The Concern . Though data is surfaced through SharePoint, it doesn’t actually exist in SharePoint . BCS-connected LOB systems must be identified and protected separately of SharePoint Closing Thought

“Planning is bringing the future into the present so that you can do something about it now.”

- Alan Lakein Finding Me

Sean P. McDonough

Blog: http://SharePointInterface.com Email: [email protected] LinkedIn: http://www.linkedin.com/in/smcdonough Twitter: @spmcdonough

The SharePoint 2007 Disaster Recovery Guide http://tinyurl.com/SPDRBook

The SharePoint 2010 Disaster Recovery Guide http://tinyurl.com/SPDRBook2010