IT tutorials
 
Technology
 

Sharepoint 2013 : Upgrading from SharePoint 2010 - Planning (part 2) - Pre-Upgrade Maintenance, Managing Customizations

10/1/2013 9:36:29 PM
- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019

Pre-Upgrade Maintenance

Generally, SharePoint upgrades go much smoother when sourced from a well-maintained legacy SharePoint farm. If your legacy farm is several versions behind on service packs and fixes, your legacy farm reports critical issues in your health monitoring service, or perhaps your Windows event log reports some serious errors, chances are that your upgrade will not go well.

As part of any upgrade plan, it is essential that you take care of some housekeeping tasks in your legacy system first. I mentioned a few of them in the previous paragraph. The following lists those I previously mentioned and some more maintenance tasks for you to consider before starting an upgrade:

  • Patch all SharePoint servers to the latest major service pack.
  • Patch all SQL servers to the latest major service pack.
  • Consider patching to the latest Cumulative Update (taking into account that Microsoft usually does not recommend these updates on production servers).
  • Ensure that you run the SharePoint Configuration Wizard after installing updates on all servers.
  • Check the SharePoint version number of each server in your farm to ensure that each server is fully patched. I have witnessed a number of upgrades go wrong because one server was not at the same patch level as other servers in the farm.
  • Review all Windows event log errors and warnings and fix as many of these as possible.
  • Take care of any critical errors reported in the Health Monitor service (Health Checker).
  • Delete any unused subsites and site collections. You can obtain a report containing last accessed date of sites—consult with your users on whether a site is no longer required.
  • Carefully review large lists (containing more than 2000 items). SharePoint 2010 supports large lists, as does SharePoint 2013. However, large lists can make the upgrade process more complex and so consider the implications of their upgrade in the overall process.
  • Review the size of your content databases. Typically, a database of 10GB will upgrade quicker than a database of 1TB. Plan for upgrade of large databases by avoiding parallel upgrades, since parallel upgrading of large databases might overtax your new SharePoint 2013 farm.
  • Consider splitting multiple site collections in large databases to smaller and more manageable databases.
  • Look for wide-lists—lists with a large number of columns and metadata. You can use the PowerShell Cmdlet Test-SPContentDatabase to search for wide-lists.
  • Consider reducing the number of document versions maintained in document libraries, as these can significantly increase the time it takes to complete an upgrade. Use PowerShell and code against the SharePoint API to reduce stored versions.
  • Uninstall any unused customizations as customizations can add complexity to the upgrade process .
  • Remove any PowerPoint broadcast sites because SharePoint 2013 does not support these site templates. The new Office Web Apps server provides PowerPoint broadcast support.
  • Remove any FAST Search Center sites because these sites do not upgrade in SharePoint 2013. SharePoint 2013 supports standard Enterprise Search Administration upgrade. If you use FAST in SharePoint 2010 you must provision a new SharePoint 2013 Enterprise Search Application.
  • Make sure that all site collections and sites use the SharePoint 2010 experience, which you can check using the PowerShell Cmdlet:
    Get-SPSite | ForEach-Object{$_.GetVisualReport()}
  • Ensure that you repair any issues in content databases, prior to upgrade, using STSADM to check for corruption.
  • Check for any issues with Variation Publishing sites (multilingual sites).

Managing Customizations

Although not unheard of, seldom have I seen a SharePoint system without any customization. Customization of a SharePoint farm, site collection, or subsite may consist of the installation of a third-party module, in-house developed components, and/or branding. Since SharePoint builds on top of ASP.NET, and Microsoft promotes extending SharePoint capabilities with an extensive API, any manner of customizations can be conceived of in a SharePoint 2010 farm, prior to upgrade.

If something is to go wrong with an upgrade, the first place I usually look (having combed the log files) is at any customizations. Even when an upgrade appears to complete without issue, I am expecting something in the new SharePoint 2013 farm to fail if the legacy farm included customizations. If you think about it, this is inevitable: Microsoft cannot account for every possible scenario in the development of the upgrade process and can really account only for situations occurring from its own technology. So, if a third party extends SharePoint (especially if it does not maintain Microsoft SharePoint development guidelines), it is entirely possible that a third-party customization will break the upgrade process. This is not to say you should avoid installing third-party SharePoint components, or shy away from SharePoint custom development; the key is isolating these customizations during the upgrade process.

The first task in managing customizations is to itemize them. If you have only ever installed customizations using SharePoint deployment packages (Microsoft best practice), then you are in a good place. However, if your SharePoint site has evolved over time with various manual edits to files in the hive (the file location where SharePoint maintains static files), manual changes to configuration files, and manual placement of custom assemblies in the GAC or web application, then you have a greater task to manage.

SharePoint 2007 to 2010 upgrade used to include a pre-upgrade check tool, which would list all potential issues prior to an upgrade. This tool included a report of all installed features and customizations in the farm. Microsoft has since retired this tool. Although the process of identifying customizations is not as straightforward as with the pre-upgrade checker, the good news is that SharePoint 2013 supports parallel hives, so you can maintain your customizations in a “14” hive directory structure without breaking your customizations.

Note  SharePoint 2013 no longer supports the pre-upgrade checker.

I recommend that you upgrade all customizations to SharePoint 2013, which might involve installing the latest version of a third-party product, or may involve some in-house development of custom components. However, this process need not hold up the upgrade process and prevent users using the post-upgraded site on the new platform while your development team undertakes this effort.

Once you have itemized your customizations, you should next evaluate the impact of each customization on the upgrade. Customizations typically fall into one of three categories, as described in Table 2.

Table 2. Customization Categories

Category of Customization Types of Customization Potential Effects on Upgrade
Visual Master pages
Themes
Custom controls
Web pages
Web Parts Custom JavaScript
Custom CSS files
No impact on database attach upgrades; should work in SharePoint 2010 user interface mode; likely requires change to work in SharePoint 2013 user interface
Data Structure Content types
List types
Web templates
Site definitions
May affect database upgrade if content or list types conflict with new SharePoint 2013 list or content types; missing list definitions or templates may also cause the upgrade to fail
Non-Visual Web services
Windows services
HTTP handlers
HTTP modules
Custom classes
Might not work with SharePoint 2013; test thoroughly in the new platform and consider updating to a new version (third-party) or developing against the latest version of SharePoint 2013 API (in-house development)

After evaluating every customization and assessing the impact of the customization on the upgrade to the new SharePoint system, you can decide the outcome of each customization as follows:

  • Keep the customization but do not upgrade site collections—In cases where a customization depends on the SharePoint 2010 platform, e.g., a particular branding married to the SharePoint 2010 branding style, you can continue to use the customization in the legacy visual mode. Users are unable to use some of the newer features of SharePoint 2013 (especially some of the visual capabilities) until you convert the customization to use SharePoint 2013.
  • Replace the customization—Perhaps you are taking this upgrade opportunity to redesign your site or redevelop existing customizations. In this case, redeveloping customizations or deploying the latest SharePoint 2013–supported version of a third-party component will allow your users to take full advantage of the SharePoint 2013 capabilities.
  • Discard the customization—Sometimes a customization is no longer relevant. Perhaps SharePoint 2013 now provides capabilities that SharePoint 2010 lacked and the customization fulfilled. Perhaps the upgrade is part of a larger strategy to redesign and there is no place for a particular customization. In these cases, retire the customization from service and remove references of the customizations prior to upgrade (as part of pre-maintenance). The extent of the customization in the database (e.g., a content type) will determine how easy it is to remove the customization prior to upgrade, and therefore determine if you should remove the customization from a production copy of your SharePoint 2010 farm, rather than production itself—I never said dealing with customizations is easy.

Different types of customization require different consideration in their upgrade to work in SharePoint 2013. Let me assume you have a customization that you intend to upgrade to SharePoint 2013 and fully integrate into the new visual style of SharePoint 2013. The implementation type of the customization will determine the best course of action to upgrade, as shown in Table 3.

Table 3. Customization Types and Upgrade Approach

Customization Upgrade Approach
Site definition Apply the main components of your site definition to an existing definition in SharePoint 2013—apply features, files, etc. In cases where you no longer wish to create new sites based on the custom site definition in SharePoint 2013, you can move over the custom site definition as is and run legacy sites in SharePoint 2010 mode.
Feature Evaluate your feature and redesign as necessary. The feature-packaging model in SharePoint 2013 is identical to that of SharePoint 2010—it is the capabilities contained in the feature itself that usually require redevelopment.
Workflow and server controls Upgrade of workflow and server components depends on the implementation and typically aligns closely to a business need. Consult the users of said workflow or component to determine the need of such functionality in the new SharePoint 2013 system.
Event handler Event handlers should continue to operate in SharePoint 2013 after upgrading content. However, any API calls that event handlers make, or assumptions about the environment, may affect the continual successful operation of these event handlers.
Themes You should re-create themes, based on best practices for creating themes for SharePoint 2013.
Master pages and CSS files Rework visual customizations into SharePoint 2013 master pages and CSS files so your brand works with the latest SharePoint 2013 user interface.
JavaScript Validate that your JavaScript works with the new SharePoint 2013 page mode, and redevelop as appropriate.
Web Parts Similar to event handlers, Web Parts may make API calls, which require changes to support SharePoint 2013 API. Additionally, visual Web Parts should comply with XHTML and support the user interface of SharePoint 2013 if not operating in legacy SharePoint 2010 compatibility mode.
Services Services should remain unaffected by an upgrade to SharePoint 2013, if you host the service outside of SharePoint. Services hosted inside SharePoint infrastructure follow the same rules as any other code customization that leverages the SharePoint API and should adhere to the new version of API.
Authentication providers SharePoint 2013 implements Claims-Based-Authentication (CBA), which Microsoft introduced in SharePoint 2010. SharePoint 2013 has dropped support for Classic Mode Authentication, so you should redevelop any custom authentication provider that supported Classic Mode and not CBA. Redeploy and provide to the new SharePoint 2013 farm as part of the upgrade process.
Custom search solutions using SQL syntax SharePoint now uses FQL (FAST Query Language) and KQL (Keyword Query Language) instead of SQL-based search query. Redevelop any component that uses the legacy SQL syntax.

Having itemized, evaluated, and reworked (when necessary) your customizations, the final step is to determine the packaging type of your customization. Table 4 details the various packaging and deployment types for customizations to a SharePoint farm.

Table 4. Packing Consideration of Customizations

Package Type Details
MSI files Vendors sometimes like to package their customizations into MSI files. In this situation, contact the vendor for the latest version of the package with customizations that support SharePoint 2013.
Manually deployed–dropped files on the server As with the previous version, you can deploy these customizations the same way in SharePoint 2013. As a best practice, I recommend that you use this opportunity to package all manual configurations into SharePoint solution packages and features for easy deployment and retraction.
Sandbox solutions Sandbox solutions (user solutions) deploy to a site collection and live in the content database. These solutions operate within a restricted environment, which SharePoint 2013 supports. You need not make any changes to these types of deployed customizations, since they upgrade with the content database.
Solution packages (WSP) Solution packages are the Microsoft-recommended way to deploy customizations. Redeploy these solution packages to the new farm and validate correct operation of your customizations in the new SharePoint 2013 farm.
Administrator-deployed form templates These templates live in the SharePoint farm and therefore do not upgrade as part of service application and content database upgrade. Extract these form templates as XSN files and redeploy them to the new SharePoint 2013 farm.
 
Others
 
- Sharepoint 2013 : Upgrading from SharePoint 2010 - Planning (part 1) - Database Attach Process, Minimizing Downtime
- SQL Server 2008 : Data management - Filegroups - Backup and restore flexibility
- SQL Server 2008 : Database file configuration (part 2) - Multiple data files, Sizing database files
- SQL Server 2008 : Database file configuration (part 1) - Volume separation
- Active Directory 2008 : Installing and Managing Trees and Forests - Creating Domain Trees and Forests (part 3) - Joining a New Domain Tree to a Forest
- Active Directory 2008 : Installing and Managing Trees and Forests - Creating Domain Trees and Forests (part 2) - Creating a Domain Tree
- Active Directory 2008 : Installing and Managing Trees and Forests - Creating Domain Trees and Forests (part 1) - Planning Trees and Forests
- Active Directory 2008 : Installing and Managing Trees and Forests - Reasons for Creating Multiple Domains
- Microsoft Lync Server 2013 : Integration with Other Microsoft Applications
- Microsoft Lync Server 2013 : Versions and Licensing
 
 
Top 10
 
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
Technology FAQ
- Is possible to just to use a wireless router to extend wireless access to wireless access points?
- Ruby - Insert Struct to MySql
- how to find my Symantec pcAnywhere serial number
- About direct X / Open GL issue
- How to determine eclipse version?
- What SAN cert Exchange 2010 for UM, OA?
- How do I populate a SQL Express table from Excel file?
- code for express check out with Paypal.
- Problem with Templated User Control
- ShellExecute SW_HIDE
programming4us programming4us