We implemented SharePoint 2010 in early 2012 and then upgraded to SharePoint 2013 in early 2015. After acquiring Office 365 enterprise licences in April 2016 we began to play for the migration of our existing on-premise environment to SharePoint Online. After testing the migration process with inactive sites, we started to migrate active sites from early 2018. We expect to complete all the migrations by 31 December 2018.
This post, the first of three, outlines the factors that influenced and guided how we approached the migration. Our approach may not be the same as your approach, but many of the basic principles may be similar.
Overview of our SharePoint environment pre-migration
A key principle for our SharePoint environment since 2012 was to avoid customisation and dependencies, and use the product ‘out of the box’ (OOTB) as much as possible.
- Customisation would almost always require some degree of development and ongoing maintenance. It also meant that upgrades could be more complex and expensive.
- Dependencies of any sort – be they integration components or third-party add-ons – could also make upgrades more complex and expensive.
We also implemented a ‘balanced’ controlled environment, following the technical design models for SharePoint 2010 described by Microsoft (extract in image above), which recommended that organisations strike balance across three key governance elements:
- IT Governance. Centrally managed or locally managed?
- Information Management. Tightly managed or loosely managed?
- Application Management. Strictly managed or loosely managed development?
In our environment, the ability to create new SharePoint sites and sub-sites required the completion of a (SharePoint) online form and was restricted to the SharePoint Administrators. This enabled us to prevent uncontrolled growth in the environment and to ensure that all new sites were created within a pre-defined – but not overly strict – architecture design model.
Upgrade to SharePoint 2013 in early 2015
Our SharePoint site collections were created across five web applications: team (approximately 120 sites), project (approx. 120 sites), publication, apps, and intranet. Most of the corporate records were stored in team or project sites, as well as a single ‘apps’ site. (Our apps sites (< 10) were set up to address small business problems that in the past might have been addressed by using Microsoft Access).
Thanks to our OOTB model, we were able to upgrade to SharePoint 2013 over a weekend, with almost no errors. The only site we could not upgrade was the intranet which remains (as at August 2018) in ‘compatibility mode’.
Note: It is not possible to migrate directly from SharePoint 2010 to SharePoint Online. It must be upgraded to SharePoint 2013 or SharePoint 2016 first.
The situation in 2016
In May 2016 we changed our Microsoft Enterprise Agreement to an Office 365 subscription model. Our reasons for going to Office 365 were driven by multiple factors, including the need for mobile access to information.
It is important to remember that SharePoint Online is only one element among many others in Office 365. That is, while it is technically possible to do it, SharePoint would not normally be migrated on its own to SharePoint Online. Any migration must take in account a range of considerations relating to the broader Office 365 environment, including (but not limited to):
- Office 365 licences (and what this meant for our users with Office installed on existing computers which were being upgraded to new Windows 10-based devices as part of a separate project)
- Active Directory syncing so users can access the environment.
- Exchange mailbox migrations so SharePoint-based, email-linked Flow workflows can work.
- OneDrive for Business, as a SharePoint service to replace ‘personal’ drives on network file shares.
- Security controls and records retention policies, set from the Office 365 Security and Compliance admin portal, as well as audit logs in that same portal.
- Office 365 Groups with associated SharePoint sites, Yammer groups (which can be linked with Office 365 Groups) and Microsoft Teams (which can also be linked with Office 365 Groups).
- ‘Classic’ and modern team sites, Office 365 Group-based sites, and communication sites.
- The SharePoint user portal.
- The mobile app, and how sub-sites are accessed.
- The ever-changing SharePoint Online environment in which anything described as ‘classic’ is likely to be deprecated at some point, and new features appear.
Migrating multiple web applications to one
We needed to plan our migration process, moving away from our five web applications to a new model. We new that, with the exception of our customised intranet, we would probably be able to migrate almost all of our sites relatively easily because we had always kept to the OOTB model.
Fortunately, Microsoft produced a very useful 12-page document which provided a good overview describing how it ran its own SharePoint migration, and good advice for how we might do our own migration.
We had a range of factors to take into account.
- One of our initial decisions was not to migrate any active site until all Exchange mailboxes were migrated (and preferably, end-users had new Windows 10 devices). As it turned out, the decision to migrate mailboxes was delayed and as a result we would end up migrating most sites first.
- We need to work out how to migrate our content as it was no longer possible to do a ‘lift and shift’. We investigated the market and made the decision to acquire a migration tool, ShareGate, to do the migrations ourselves. We would later find the same tool useful to migrate personal drives to OneDrive for Business.
- We identified the likelihood that we would create new SharePoint Online sites in parallel with the migration of on-premise sites; this was partially because some existing on-premise sites with multiple sub-sites would be split into separate sites instead, but also because the new SharePoint was so much more versatile and would likely be popular.
The new architecture model
An important point to note is that the new SharePoint Online architecture model provided the opportunity to re-think our SharePoint model and, to some extent, clean up or leave unwanted SharePoint content behind. To quote the Microsoft site above, ‘the best migration is no migration’.
As noted above, we had five primary web applications in our SharePoint 2013 environment. These had to be migrated (or re-created, in the case of publication sites) under one of two paths (only – /teams or /sites) to one of three site option:
- ‘Classic’ sites (the default for all team and project sites)
- Office 365 Group-based team sites
- Communication sites (re-created page-based content)
- Migrated team and project sites would become classic team sites under either (a) /teams/sitename path or (b) /teams/prj_sitename path, respectively. There were some exceptions:
- Some sites with multiple sub-sites would be split up into multiple independent sites (including using the new ‘hub’ sites).
- A couple of team sites would become communication sites.
- Team sites that crossed multiple organisational business areas would be created as classic team sites under the /sites/sitename path.
- Most publication sites that used the publishing features would need to be re-created as communication sites under the /sites/sitename path. There were some exceptions:
- Some publication sites would become team sites instead.
- The intranet would be managed separately as, at the very least, it would need to be re-created in SharePoint Online. It could not be migrated ‘as is’.
- Application sites would become team sites.
- Some existing sites or sub-sites might be migrated to SharePoint sites linked to Office 365 Groups, with the naming prefix of either GRP_ or PRJ_.
The above ‘mapping’ model was an early decision that did not change.
We also commenced work on the following elements of work:
- Reviewing all existing sites to determine which sites would be migrated or discarded – see below.
- Re-developing our SharePoint Architecture documentation for the Online version.
- Investigating and documenting all Office 365 admin and Office 365 Security and Compliance admin configuration settings, and determining roles. This process, which required Global Admin access, included establishing records retention policies (from mid 2018) in the Security and Compliance admin portal.
- Re-developing our existing SharePoint admin documentation for the Online version, including all the configuration settings. We included the OneDrive for Business config settings in this same document as it is a SharePoint service.
- Understanding how the new environment worked, and would work.
- Re-establishing our SharePoint Admin and SharePoint User Group sites in SharePoint Online.
- We also created a range of ‘test’ sites to better understand the new environment.
- Creating an initial schedule for the migration of sites, targeting inactive sites first.
- Assigning the initial batches of Office 365 licences.
- Developing a repeatable process to migrate sites using ShareGate. In our environment steps involved:
- Identify need to migrate site
- Register a new site request in our SharePoint Admin portal.
- Register the task in our Jira task management system.
- Create the SharePoint Online site (via a script linked to the request).
- Migrate the on-premise site, make it read only with a re-direct notice on the front page (and a three month deletion notice*).
- Prepare the migrated site, including swapping the classic default home page to a modern home page.
- Hand over the site to the business owners and close the task
* In practice many of these sites still remained after 6 months.
As part of our review process, we identified around a dozen sites that had one or all of the following elements, that would mean we had to devote more time to their migration (‘custom workload’ in the Microsoft document above):
- Complex workflows which would need to be re-created.
- Integration with other systems (mostly via BizTalk).
- Links with ETL processes.
We also identified around 50 sites that would not be migrated:
- Sites that were unused or had no content of value (often because the original was still on a drive).
- Sites that did not need to be migrated, for example if their content had been migrated to a different business system.
- Test sites.
Sites that were no longer used but contained records that needed to be kept were to be migrated with the word ‘Archive’ to the end of the site URL name, assigned a site retention policy, and then made read only.
By August 2017, we had identified that 250 site collections would be migrated to SharePoint Online. We acquired ShareGate in September 2017 and were ready to start migrating.
In Part 2 of this series of posts I will describe the migration process and the lessons we learned along the way.