Successfully reported this slideshow.
Your SlideShare is downloading. ×

Performing successful migrations to the microsoft cloud


Check these out next

1 of 21 Ad

More Related Content

Slideshows for you (20)

Similar to Performing successful migrations to the microsoft cloud (20)


Recently uploaded (20)

Performing successful migrations to the microsoft cloud

  1. 1. Performing successful migrations to the Microsoft Cloud CD36 • Andries den Haan • @awdhaan
  2. 2. Platinum sponsors Gold sponsors Silver sponsors Community sponsor
  3. 3. Code of Conduct As event and experience organizers, we seek to provide a respectful, friendly, professional experience for everyone, regardless of gender, sexual orientation, physical appearance, disability, age, race or religion. We do not tolerate any behavior that is degrading to any gender, race, sexual orientation, or disability, or any behavior that would be deemed harassment or discrimination. Individuals are responsible for knowing and abiding by our standards and we encourage everyone to assist in creating a welcoming and safe environment. Please report any concerns, suspicious or disruptive activity or behavior to the organizing team, so that we can address the issue immediately. More information can be found on the CollabDays Benelux website at
  4. 4. A brief personal introduction • Working in technology since 1999 • Currently as a Cloud Solution Architect at Wortell, which is an awesome company • Previously: Pink Elephant, PinkRoccade, Getronics, Ordina, KPN Consulting & ETTU • Crazy about technology that connects people • Focus on Business & IT Alignment: o Governance & security o Use of Best practices • Certified Microsoft Office 365 technology expert • Proudly addicted to (large-scale) migrations ☺ Twitter: @awdhaan Blog:
  5. 5. What you can expect from this session Focus on technology opposed to other project streams Fuzzy blend of slides & demos when you’re neck-deep into migrations Inspiration on how to handle and admin your large-scale scenarios Getting the latest info on what is happening around tools and approaches (excluding Mover) Sharing some experiences from previous projects This is not a 101 session Advice from the Microsoft and ShareGate product teams Some (PnP) PowerShell, fun and interaction! ☺
  6. 6. Session agenda • Getting the best migration performance • Gathering metrics from your migrations • How to proof migrations were done in full • Automating like a boss • Tenant-2-tenant migrations for Microsoft Teams.
  7. 7. Some fundamental recommendations • Choose the right tool for the job (the list below is based on previous experiences): • SharePoint Migration Tool (SharePoint, file shares, PowerShell-driven) • Migration Manager (file shares, scalable, new features coming later) • Migrate through the SharePoint Online PowerShell module > Walkthrough • ShareGate:Desktop • AP Elements Fly • Register ShareGate:Desktop (if used) as an Azure AD Desktop application • Also use PnP PowerShell Azure AD App registration (which is now super easy) for improved performance during pre- or postmigration actions (also to workaround ADFS/MFA-issues) -> Demo
  8. 8. PnP PowerShell Azure AD App registration Demo summary • Use the latest PnP PowerShell release which includes a bug fix when using PowerShell ISE • Run Initialize-PnPPowerShellAuthentication as a Global Administrator • Give consent for the required permissions • Import the certificate into the local certificate store including the private key • Store the Client Id and Certificate Thumb in the Windows Credential store • Authenticate using the new Azure AD App credentials.
  9. 9. Recommendations from the Microsoft & ShareGate:Desktop product teams: • Limit to 200-300K files per migration to keep things manageable during the ‘Azure hop’ • Don’t migrate large amounts to a single site. Sites per organization (2.000.000) is sufficient, so plenty of room to split up data • Limit the amount of simultaneous operations • For typical office file share migrations (~1.5 MB/file), 1 TB/day should be feasible • Throttling is less outside of typical business hours. Daytime migration are still possible, but with a little bit more throttling. Sizing your migrations is key
  10. 10. Ground rules: keep it simple • Data needs to be copied from A to B, that’s all! • Avoid pre- or postmigration script actions to beautify or tidy the folder structure (especially with large-scale file shares) • Don’t migrate (granular) permissions. People work differently in the target-environment, so that same applies to authorizations.
  11. 11. Incremental vs. delta-migrations? • Incremental migrations compares each file in source and destination which can be really time consuming with large amounts of files • Delta migrations are faster as these use date filters to only overwrite files that were added or modified since the last full migration. Initial full migration “Delta” migration Register the start time End-users continue to work in the source environment Migrate in “Overwrite”-mode using the date filter Content freeze in the source
  12. 12. Why should you care about gathering metrics from your migrations? • Especially relevant for large-scale migrations • All activities cost time, but how much by average? • How much data can be migrated within e.g. a day? • It can help you to determine a baseline.
  13. 13. Comparing some popular tools on metrics ShareGate:Desktop • Summary reporting is limited to ItemsCopied, Successes, Warnings and Errors • Detailed reports can become difficult to process for large amounts of data, although still valuable. Especially, when exporting to CSV. SharePoint Migration Tool • Summary reporting is surprisingly useful -> Demo • GB/Hour metric • GB in source and migrated • Item-level summaries are also included -> Demo. Migration manager • Similar reporting as SharePoint Migration Tool • Currently manual download from the SharePoint Admin Center (this will change soon). Migration Manager
  14. 14. How to proof that you’re done • In addition to migration reports, item count comparison shows if all in scope was copied as expected • PowerShell to the rescue as always • Consider UNC path length limitations in scripting logic • Consider 5.000 item query limit when programmatically querying the list • Distinguish between files and folders • Use a loop and function approach to populate e.g. a csv- based report • Demo!
  15. 15. Automating like a boss • Why? Because the administration can be time consuming with large amounts of data • Stakeholders expect (near) real-time progress reporting • It should be one of your goals as a migration admin to spend the least amount of time on administration.
  16. 16. • Alternate approach when you are working on large-scale migrations with 10.000’s of users and multiple Terabytes of data • Data-model can be easily created using Visual Studio and published to Azure • Use common PowerShell functions to execute stored procedures to Create, Read, Update or Delete data through PowerShell • Link scripts to scheduled tasks • Works when using e.g. SPMT or ShareGate as these tools have sufficient PowerShell support • Use email as a means of notifying the migration admin about errors (could also be used to inform data owners on migration start/end) • Simplified walkthrough and demo of a Data Migration Factory. Stepping up from CSV’s to databases
  17. 17. Error notification using PowerShell
  18. 18. Data Migration Factory High level architecture • Inventory clients importing data for each organizational entity into the database • Batches are created and assigned to file shares and migration servers to distribute the load • Scheduled console apps poll the database for any batch- items that needs to be processed and trigger the PowerShell scripts using the record Id as the only parameter • Integrated reporting through database queries. Migration database SharePoint 2013 SharePoint 2010 Filers Inventory clientInventory client Migration servers PS SharePoint Online Microsoft Teams Reporting Inventory client
  19. 19. Migrating Teams tenant-2-tenant • Copy Channels (conversations and files), Tabs and Apps • Some limitations apply (more on support articles): • Migrations are limited to the last 50 messages including replies. All other messages are stored in an HTML archive page (tab) • Meeting URL’s are tenant-specific, so recreate meetings after migration • Private channel (files, not conversations) can be difficult to migrate • ShareGate is doing a great job, supports PowerShell (GUI is currently richer) for this and will extend their capability soon: • Choosing specific channels to migrate • Merge into existing Teams.
  20. 20. Let’s wrap-up this session… • Slides will be shared • Script examples available upon request • Check my blog for upcoming posts • Contact me for any questions or comments ☺
  21. 21. Thank you!