Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Unbreakable Sharepoint 2016 With SQL Server 2016 availability groups

520 views

Published on

SQL Server is really the brain of SharePoint; in this session, Serge Luca (SharePoint MVP) and Isabelle Van Campenhoudt (SQL Server MVP) will give you an overview of what any SharePoint consultant and DBA need to know regarding business continuity in SharePoint 2013 & 2016. Of course SQL Server plays a major role in this story; the sessions will be animated with real & live demos.

Topics covered:

Concepts of business continuity
SharePoint and Business continuity
Patterns and anti-patterns
SharePoint and SQL Server Always on Availability groups : what works, what doesn’t work (demos)
Lessons learned from real projects
SharePoint 2016 Min Role and Business continuity

Published in: Technology
  • Be the first to comment

Unbreakable Sharepoint 2016 With SQL Server 2016 availability groups

  1. 1. Unbreakable SharePoint 2016 with SQL Server 2016 Always On Availability Groups Serge Luca SharePoint MVP Isabelle Van Campenhoudt SQL Server MVP ShareQL - Belgium SharePoint Saturday Genève – 3 Décembre 2016
  2. 2. Sponsorship Level: Raffle
  3. 3. Isabelle Van Campenhoudt Isabelle Van Campenhoud t SQL Server MVP, Brussels Consultant, speaker, trainer, PASS V-Chapter Leader Managing partner de www.ShareQL.com SQL Server since 1999 Blog: http://thesqlgrrrl.wordpress.com/ ivc@ShareQL.com @thesqlgrrrl Isabelle Van Campenhoudt globalfrench.sqlpass.org
  4. 4. Serge Luca Serge Luca 10 x SharePoint MVP, Brussels Consultant, speaker, trainer Managing partner of www.ShareQL.com SharePoint since 2001 Blog: http://sergeluca.wordpress.com/ sergeluca@ShareQL.com @SergeLuca Serge Luca
  5. 5. Business Continuity - Concepts SharePoint 2016 Architecture SharePoint 2016 and Business Continuity SharePoint 2016 and Always On Availability Groups SQL Server and Always On Availability Groups (details) Conclusions – Q&A Agenda
  6. 6. Business Continuity
  7. 7. Start from the business Good management practices, start from the business • Don’t reinvent the wheel: • ISO 22301 • Compatible with : • ISO 9001 (quality) • ISO 27001 (security) • http://www.iso.org/iso/fr/news.htm?refid=Ref1602
  8. 8. IT Role Prevent incidents •Proactive Monitoring •Staff organization In case of incident •HA (High Availability) •DR (Disaster Recovery)
  9. 9. Terminology Service Level Agreement HA DR RPO RTO
  10. 10. Requirements Recovery Point Objective (RPO) How much data can we afford to loose ? Recovery Time Objective (RTO) How long can we afford to wait ? RPO RTO Example: RTO 1 hour RPO 3 hours “I wait max 1 hour I loose max 3 hours of data”
  11. 11. Service Level Agreement (SLA) Contracted delivery time Availability% Stop/Year Stop/Month Stop / Week 99% 3.65 hours 7.20 hours 1.68 hours 99.9% 8.76 hours 43.20 minutes 10.10 minutes 99.99% 52.56 minutes 4.32 minutes 1.01 minutes 99.999% 5.26 minutes 25.90 seconds 6.05 seconds 99.9999% 31.50 seconds 2.59 seconds 0.61 seconds
  12. 12. RPO/RTO versus Cost RPO/RTO Cost
  13. 13. HA-DR HA DR
  14. 14. Architecture SharePoint 2013/2016
  15. 15. A SharePoint farm is not alone… Office Online Server farm Wokflow Manager farm SharePoint 2016 farm Apps Add-ins
  16. 16. SharePoint Databases Usage Content User Profile BDC Managed Meta Search State Config Central admin Content …
  17. 17. SharePoint and Business Continuity
  18. 18. Remarks… Patching (HA) • in SharePoint 2013 - > Downtime even if farm redundant Patching (HA) • In SharePoint 2016 - > No Downtime if farm redundant • Still risky…could become DR if farm is broken Deployment • New custom code « breaks » the farm -> DR ? Stretched farm • Not popular anymore latency requirements very strict  • Stretched farm is not DR • What if Config DB is corrupted ? DR • Building destroyed
  19. 19. Achieving H-A (High Availability) Server redundancy • SharePoint, Office Web App, Workflows, SQL Services redundancy • Services can be started on several machines • Different roles : search
  20. 20. DR Strategy (Disaster Recovery) • Recovery in hours or days • Backup, restore Cold standby • Recovery in minutes, hours • Backup, restore, send VMs Warm standby • Recovery in seconds, minutes • 2 farms, synchronized via log shipping, mirroring, Always On Availability Groups) Hot standby
  21. 21. SharePoint and SQL Server Always On Availability Groups
  22. 22. High Availability and Disaster Recovery Potential Data Loss (RPO) Potential Recovery Time (RTO) Automatic Failover Readable Secondaries Backup, Copy, Restore hours hours -to-days No Not during a restore Log Shipping Minutes Minutes-to- hours No Not during a restore Database Mirroring - High-safety (sync + witness) Zero seconds Yes NA Database Mirroring - High-performance (async) seconds Minutes No NA Always On Failover Cluster Instance (FCI) NA seconds to minutes Yes NA Always On Availability Groups - synchronous-commit Zero seconds Yes 0 – 3 Always On Availability Groups - asynchronous-commit seconds Minutes No 0 - 8
  23. 23. Always On Availability & SharePoint SQL 1 FARM 1 SQL 2 High Availabilty Synchronous (no data loss)
  24. 24. HA-Always On Availability Groups & SharePoint SQL 1 FARM 1 SQL 2 Synchronous High Availabilty
  25. 25. HA – Sync Commit Usage Content User Profile BDC Managed Meta Search State Config SP FARM VIENNA Central admin Usage Content User Profile BDC Managed Meta Search State Config Central admin Sync
  26. 26. Set up: farm in Geneva (main farm) • SharePoint 2013 with SP1 and CU April 2014 or SP2016 • 3 aliases : 1 for content DB, 1 for Services DB, 1 for farm DB (CA, Config, State). Install the SharePoint farm in Vienna 3 SQL aliases • Recovery mode to “full” for databases to be sync • SharePoint databases Full Backup • !!! In Test take log backups Configure SharePoint DB • Create Windows Cluster and add every SQL Node • Create 3 Always On AG & Add SharePoint DB • Create the 3 listeners (1/AVG) • Copy SP logins & permissions and other server objects on every node Configure SQL Server Cluster & Always On $alias1 = “AVG1 listener” $alias2 = “AVG2 listener” $alias3 = “AVG3 listener” $configDB = ... $alias1 = “SQL1” $alias2 = “SQL1” $alias3 = “SQL1” New-SPConfigurationDatabase -databaseName $ConfigDB -DatabaseServer $alias1 New-SPWebApplication -DatabaseServer $alias2 New-SPMetadataServiceApplication -DatabaseServer $alias3 New-SPEnterpriseSearchServiceApplication -DatabaseServer $alias1 Everything can easily be scripted !
  27. 27. DR with Always On Availability Groups & SharePoint (Active/Passive) SQL 1 FARM 1 SQL 2 FARM 2 SQL 3 Asynchronous (potential data loss) Disaster Recovery Synchronous (no data loss)
  28. 28. Usage Content User Profile BDC Managed Meta Search State Config Central admin Usage Content User Profile BDC Managed Meta Search State Config State Content User Profile BDC Managed Meta Search !!! Central admin Config Central admin UsageAsync Sync SQL01 SQL02 SQL03 SP FARM VIENNA SP FARM BRUSSELS (DR)
  29. 29. Database Support – Async Commit Database Supported Admin Content No App Management Yes BDC Yes Config No Content Yes Managed Metadata Yes PerformancePoint Yes PowerPivot Not Tested* Project Yes Search Analytic Reporting No Search Admin No Database Supported Search Crawl No Search Links No Secure Store Yes State Service No Subscription Settings Yes Translation Services Yes UPA Profile Yes UPA Social Yes UPA Sync No Usage Yes – NR Word Automation Yes
  30. 30. Set up: farm in Brussels (DR farm) • SharePoint 2013 with SP1 and CU April 2014 or SP2016 • 3 aliases : 1 for content DB, 1 for Services DB, 1 for farm DB (CA, Config, State). • Aliases can point to listeners (not mandatory) Install the SharePoint farm in Brussels 3 SQL aliases • Test DR failover with SharePointTest,Test,Test… Everything can easily be scripted !
  31. 31. SQL Server and Always On Availability Groups (AOAG)
  32. 32. How to Add databases into AVG – (powershell is better) Create 3 listeners Create 3 availability groups (AVG) Install the Windows Server Failover Cluster on the SQL Machines – Add the Nodes – Configure the Quorum Predefine Cluster Named Object (CNO) & grant the permission to create the cluster (full control on CNO)
  33. 33. FAILOVER CLUSTER AND ALWAYS ON
  34. 34. SP HIGH AVAILABILITY
  35. 35. SHAREPOINT DISASTER RECOVERY
  36. 36. SharePoint Search and DR • 2 farms-> 2 search ? • Problems – 2 search configurations – Analytics
  37. 37. SharePoint Search & DR solutions Backup Restore of the Search Admin DB • Followed by a full crawl • No analytics Backup – Restore of the Search SA • Analytics
  38. 38. Patching with 2 farms (no downtime) Install binaries Dismount content DBs (because read- only) Switch Services to farm2 Stop data movement from services AVG – set read-only in farm1 primary node Upgrade farm2 with Psconfig Mount content DB in farm 2 (run in compatibility range) Switch users to farm 2 1.Patch Farm 2 (DR)
  39. 39. Patching 2 farms (continued) 2.Patch Farm 1 Install binaries Dismount content DB (because read-only) Resume data movement in service AVG - >farm1 get patch from farm 2 PSConfig Upgrade content database (SP- UpgradeContentD atabase)
  40. 40. Pitfalls for Availability Groups Installation • File location • Security sync • AD permissions Operations • Backups & Logs • Logins synchronization • Patching • Avoid VMotion
  41. 41. Adjust your cluster settings Get-cluster).SameSubnetThreshold = 10 (Get-cluster).CrossSubnetThreshold = 10 (Get-cluster).CrossSubnetDelay = 400 (Get-cluster).SameSubnetDelay = 2000
  42. 42. If you use apps/add-ins… $authrealm = Get-SPAuthenticationRealm #on the DR farm Set-SPAuthenticationRealm –Realm &authrealm Restart-Service sptimerv4 Restart-Service spadminv4 Use the same authentification realm in the main farm and in DR farm !
  43. 43. Conclusions
  44. 44. Define SLAs with the business Major Role of SQL Server AOAG in HA/DR HA = 1 SP farm SP, DR = 2 SP farms • Search limitation !!! SP farm + Workflow farm + Office Web App farm Be proactive !
  45. 45. Danke ! Thank you ! Merci ! ivc@shareql.com @thesqlgrrrl sergeluca@shareql.com @sergeluca
  46. 46. #JSS2014 Danke ! Thank you ! Merci ! ivc@shareql.com @thesqlgrrrl sergeluca@shareql.com @sergeluca
  47. 47. This is my awesome text This a my awesome slide title
  48. 48. Evaluez les sessions grâce à l’application SPS Genève ! Et gagnez des licences

×