Upgrading to SharePoint 2013 Bert Johnson About Bert Johnson • SharePoint Architect with Protiviti • Microsoft Certified Master since 2010 • bert@bertjohnson.net • http://www.slideshare.net/bertjohnsonnet/ • Twitter: @SPBert Agenda • Overcoming Upgrade Constraints • What To Know Before Upgrading • Upgrade Planning and Preparation • Executing the Upgrade • Upgrade Verification and Cleanup • Troubleshooting Upgrades • Behind the Scenes Overcoming Upgrade Constraints Cost Constraints • Licensing, which may be included in your Enterprise Agreement • No “in-place upgrade”, so SharePoint 2013 will require dedicated servers / VMs • Legacy version upgrades (SPS2003, MOSS2007) may require third-party migration applications • Training investments shouldn’t be overlooked Time Constraints • One or more trial upgrades should take place beforehand • Features and Information Architecture may need planning • Overall duration constrained by database size and IOPS • Once binaries and databases are upgraded, the search index needs to be rebuilt • Can be performed in phases: • Upgrade service applications before web applications • As-needed or “deferred” web application upgrades • Individual site collection upgrades can be delegated to users Usability Constraints • No more “pre-upgrade check”; the process is more manual • To leverage new functionality, master pages need to be converted to 15 mode • Overall, SharePoint 2013 provides a much more intuitive UI and requires less core training • SharePoint 2013 is mostly accretive, but some features have been removed What To Know Before Upgrading Upgrade Improvements • Test-SPContentDatabase • Deferred Site Collection Upgrades • Evaluation Upgrade Sites • Event Notifications System • Health Checks and Logging Improvements • Upgrade Throttling • V2V Service Application Support • All 2010 binaries, etc. installed; all features; existing customizations work; default Upgrading from Legacy Versions • No direct upgrade path from SPS2001/2003 or MOSS2007 • Options: • Upgrade to intermediate versions first • Use third-party tools • Manually migrate content • These are the most complex upgrades Office 365 • Nothing to worry about; Microsoft has it covered… • …except for usability, training, and communications • Office 365 is “versionless” going forward • Most SP2010->2013 cloud upgrades completed by end of summer Deprecated Features • Legacy Web Analytics Feature • Barcodes • Chart Web Part • Document and Meeting Workspaces • Internet Explorer 7 Support • PowerPoint Broadcasting • Project Web Access • Slide Libraries • Visual Upgrade Upgrade Planning What Happens in a SharePoint Upgrade? 1. 2. 3. 4. Planning A. B. C. D. E. F. Inventory settings Test for blocking issues Plan for customizations and UI updates Determine upgrade parameters Create project plan Change Management and communications Preparation A. B. C. Install new farm Mitigate blocking issues Prepare customization upgrades Execution A. B. C. D. E. Backup Upgrade service applications Set upgrade parameters Upgrade web applications Upgrade site collections (at once or deferred) Verify, Clean Up, and Communicate Why Upgrades Succeed or Fail Planning Step 1: Inventory Settings • Survey: • Servers • Databases • Customizations and solution packages • Save Get-SPFeature and Get-SPSolution files • Back up FEATURES directory • “Unghosted” / customized files • Search Settings • Authentication • Now is a great time to clean up unneeded content Planning Step 2: Test for Blocking Issues • Install a SharePoint 2013 farm to test existing content databases • This doesn’t have to be the eventual production environment • No, there’s no way to accurately test a 2010 database without 2013 • Run Test-SPContentDatabase for each content database and save the output Planning Step 3: Plan for Customizations/UI • Review known customizations • Ensure that all WSPs are available • These can be exported using Get-SPSolution and its SaveAs() method • Look for FEATURE differences between farm servers • Determine how UI changes will be applied • We can use the default 15 master page or create our own using the new Design Manager • Plan for any custom authentication, such as FBA Planning Step 4: Determine Upgrade Parameters • Are we doing a “big bang” upgrade with everything at once or a gradual, user-defined upgrade? • If gradual, will “preview sites” be enabled? • Are we going to apply other changes, such as navigation changes or feature roll-outs at the same time? • Should it be possible to create “SharePoint 2010 Mode” sites in the new farm? • Will upgrade reminder emails be sent out? • How should concurrent site upgrades be throttled? Planning Step 5: Create the Project Plan • Schedule pre-work and trial upgrades as far ahead as possible • If necessary, assign pre-work to end users first (e.g. delete unused content ahead of time) • Account for usual SLAs • Create a master checklist with explicit task assignments Planning Step 6: Change Management • Always account for: • • • • • Awareness Desire Knowledge Ability Reinforcement • Alert to the coming change early and get people on board • Leverage your “SharePoint” champions • If performing other changes, hold focus groups and pilots • SharePoint 2013 shouldn’t need extensive training over 2010 Upgrade Preparation Preparation Step 1: Install New Farm • First create and execute upgrades of preproduction farms • You have those, right? • Ensure there’s plenty of storage for database upgrades • Deploy all solution packages and settings, including authentication • Patch to desired Cumulative Update Preparation Step 2: Test for Blocking Issues • Re-run Test-SPContentDatabase on each database • Address common issues at the source: • Missing dependencies • Copy and deploy solution packages and/or feature folders • Orphaned sites • Remove-SPSite • Wide lists • Delete excess lookup, choice, or managed metadata columns • Consider upgrading to claims authentication • In 2010, $wa.UseClaimsAuthentication = $true; $wa.Update() Preparation Step 3: Customization Upgrades • Recreate master pages using Design Manager • Plan feature-specific upgrades if appropriate • Check for deprecated APIs • Switch to using new REST web services • Make all custom code claims-aware Upgrade Execution Upgrade Step 1: Back Up Everything • Databases • File System • Encryption Key from User Profile Service Upgrade Step 2: Service Applications • Core Service Applications are backwards compatible • Run PowerShell to upgrade each of the following first: • • • • Business Data Connectivity Managed Metadata PerformancePoint Search • Administration Database Only • Secure Store • User Profile • Profile, Social, and Sync Databases Only • Can attach to service proxies from original farm Upgrade Step 2: Service Applications • Other Service Applications can be created from scratch • FAST Search • Requires several manual steps: http://technet.microsoft.com/enus/library/dn130132(v=office.15) • Office Web Apps • New version should be installed; no need to upgrade data Upgrade Step 3: Set Parameters • $wa.CompatabilityRange: OldVersions, NewVersion, or AllVersions? • $wa.UpgradeReminderDelay and $wa.UpgradeMaintenanceLink • $wa.SiteUpgradeThrottlingSettings limits • $site.AllowSelfServiceUpdate: $true or $false? Upgrade Step 4: Upgrade Content Databases • Attach each content database using MountSPContentDatabase • Automatically starts upgrade; Upgrade-SPContentDatabase resumes • Can run multiple database upgrades at a time • Can even do this on separate farms / SQL servers, then move the upgraded databases later • Optimize spindles / IOPS when possible • Very upgraded sites work and are unlocked Upgrade Step 5: Upgrade Site Collections • Optionally, can choose to preupgrade some or all site collections • MySite host should be upgraded before MySites • Can be done through UI: • • • • Run site collection health checks Request evaluation site Upgrade the site Upgrade information logged to new _catalogs directory • Can be scripted: • Upgrade-SPSite • Note: upgraded files aren’t shredded by default Verify Upgrade, Clean Up, and Communicate Verify Upgrade, Clean Up, and Communicate • Use the “Upgrade Status” page in Central Administration • Review the log files for errors and warnings • Spot check for: • • • • • All content renders Permissions appear correct Search works Custom functionality works UI looks correct • Clean up backups and optionally shrink databases • Should be communicating throughout: make sure to highlight the benefits when the new version launches Troubleshooting Upgrades Troubleshooting • “Wide List” Issue • Too many lookup, choice, and/or managed metadata columns • No workaround short of removing columns • Missing Solutions and Feature Definitions • Can use PowerShell to export .WSP definitions • As a last resort, can copy feature folders between environments • Path conflicts • Shouldn’t have created objects in _catalogs; will need to delete • “Unghosted” / Customized Files • No shortcut; need to revert customizations in order to use SharePoint 2013 look and feel • Site locked after upgrading • Error likely occurred and upgrade didn’t finish; mitigate issue and rerun upgrade • Always check the logs Behind the Scenes SharePoint Upgrade Internals • Objects upgraded via SPSequence and SPAction in this hierarchy: • SPFarm • SPServices • SPFeatures • SPWebServiceInstances • SPWebServices • SPWebApplications • SPIISWebSite • SPFeatures • SPContentDatabases • SPSiteCollection • SPFeatures • SPWeb • SPWebTemplates • SPFeatures • Upgrade pipeline can be viewed in [Hive]\Config\Upgrade Q&A Resources • TechNet SP2013 Upgrade Center: http://technet.microsoft.com/enus/library/cc303420.aspx • TechNet Known SP2013 Issues: http://office.microsoft.com/enus/help/sharepoint-foundation-2013-known-issuesHA102919008.aspx • Discontinued Features: http://office.microsoft.com/en-us/sharepointhelp/discontinued-features-and-modified-functionality-in-microsoftsharepoint-2013-HA102892827.aspx • Updates for SP2013: http://technet.microsoft.com/enus/sharepoint/jj891062.aspx • Introduction to Upgrade: http://blogs.technet.com/b/wbaer/archive/2012/07/17/introductionto-upgrade-in-sharepoint-server-2013.aspx About Bert Johnson • SharePoint Architect with Protiviti • Microsoft Certified Master since 2010 • bert@bertjohnson.net • http://www.slideshare.net/bertjohnsonnet/ • Twitter: @SPBert