Download presentation
Presentation is loading. Please wait.
Published byLoreen Robbins Modified over 6 years ago
1
Serge Luca Isabelle Van Campenhoudt New-York City 2017 Unbreakable SharePoint 2016 with SQL Server Always On Availability Groups Watch our webinar here:
2
Serge Luca Serge Luca 10 x Office Server and Services MVP, Brussels
Consultant, speaker, trainer Managing partner of Serge Luca SharePoint since 2002 Blog: Serge Luca @SergeLuca
3
Isabelle Van Campenhoudt
Data Platform MVP, Brussels Consultant, speaker, trainer, comunity leader Managing partner de SQL Server since 1999 Isabelle Van Campenhoudt Blog: TODO GUSS @thesqlgrrrl Isabelle Van Campenhoudt
4
Agenda Business Continuity - Concepts SharePoint 2016 Architecture
SharePoint 2016 and Business Continuity SharePoint 2016 and Always On Availability Groups Conclusions – Q&A Watch our webcast
5
Business Continuity
6
Good management practices, start from the business
Don’t reinvent the wheel: ISO 22301 Compatible with : ISO 9001 (quality) ISO (security)
7
IT Role Prevent incidents Proactive Monitoring Staff organization
In case of incident HA (High Availability) DR (Disaster Recovery)
8
Service Level Agreement
Terminology Service Level Agreement HA DR RPO RTO
9
Recovery Point Objective (RPO) Recovery Time Objective (RTO)
Requirements Recovery Point Objective (RPO) How much data can we afford to loose ? Recovery Time Objective (RTO) How long can we afford to wait ? Example: RPO 3 hours RTO 1 hour “I loose max 3 hours of data I wait max 1 hour ” RPO RTO Source : Microsoft, modified
10
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 % 31.50 seconds 2.59 seconds 0.61 seconds
11
RPO/RTO versus Cost Cost RPO/RTO
12
HA-DR HA DR
13
Architecture SharePoint 2013/2016
14
A SharePoint farm is not alone…
Apps Add-ins SharePoint 2016 farm Office Online Server farm Wokflow Manager farm + +
15
SharePoint Databases Farm specific databases Content databases
Usage State Config Central admin Farm specific databases Content Content databases User Profile BDC Managed Meta Search … Services databases
16
SharePoint and Business Continuity
17
Remarks… Patching (HA) Deployment Stretched farm DR
in SharePoint > Downtime even if farm redundant In SharePoint > 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
18
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
19
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, Always On Availability Groups Hot standby
20
SharePoint and SQL Server Always On Availability Groups
21
SQL HA/DR technologies
High Availability and Disaster Recovery Potential Data Loss (RPO) Potential Recovery Time (RTO) Automatic Failover Secondaries Backup, Copy, Restore Hours Hours -to-days No Not during a restore Log Shipping Minutes Minutes-to-hours Database Mirroring - High-safety (sync + witness) Zero Seconds Yes NA Database Mirroring - High-performance (async) Always On Failover Cluster Instance (FCI) Seconds to minutes Always On Availability Groups - synchronous-commit 2 Always On Availability Groups - asynchronous-commit 0 - 8 TODO readable nodes ISA 2 secondaries Up to 8 nodes including 2 sync
22
HA-Always On Availability & SharePoint
High Availability Production New York FARM 1 Synchronous (no data loss) SQL 1 SQL 2
23
HA-Always On Availability Groups & SharePoint
High Availability Production New York FARM 1 Synchronous You can take backup from the replicas, but you’ll need a licence SQL 1 SQL 2
24
HA – Sync Commit SP FARM New York Sync
Config Config Central admin Central admin State State Usage Usage Content Content User Profile User Profile BDC BDC Managed Meta Managed Meta Search Search
25
Set up: farm in New York (main farm)
point alias LISTENER1 to “AVG1 listener” point alias LISTENER2 to “AVG2 listener” point alias LISTENER3 to “AVG3 listener” 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 Brussels 3 SQL aliases Everything can easily be scripted ! $configDB = ... $alias1 = “LISTENER1” # pointing to sql1 in a first place $alias2 = “LISTENER2” # pointing to sql1 in a first place $alias3 = “LISTENER3” # pointing to sql1 in a first place New-SPConfigurationDatabase -databaseName $ConfigDB -DatabaseServer $alias1 New-SPWebApplication -DatabaseServer $alias2 New-SPMetadataServiceApplication -DatabaseServer $alias3 New-SPEnterpriseSearchServiceApplication -DatabaseServer $alias1 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
26
DR with Always On Availability Groups & SharePoint (Active/Passive)
Production New York DR Brussels FARM 1 FARM 2 Synchronous (no data loss) Asynchronous (potential data loss) Todo ISA sync and async not visible in projector->to fix SQL 1 SQL 2 SQL 3 Disaster Recovery
27
SQL02 SQL03 SQL01 SP FARM SP FARM BRUSSELS New York (DR) Sync Async
Config Config Config Central admin Central admin Central admin State State State Usage Usage Async Usage Content Content Content TODO vibrer User Profile User Profile User Profile BDC BDC BDC Managed Meta Managed Meta Managed Meta Search Search Search !!! SQL01 SQL02 SQL03
28
Database Support – Async Commit
Supported Admin Content No App Management Yes BDC Config Content Managed Metadata PerformancePoint PowerPivot Not Tested* Project Search Analytic Reporting Search Admin Database Supported Search Crawl No Search Links Secure Store Yes State Service Subscription Settings Translation Services UPA Profile UPA Social UPA Sync Usage Yes – NR Word Automation
29
Set up: farm in Brussels (DR farm)
Everything can easily be scripted ! SharePoint 2013 with SP1 and CU April 2014 or SP2016 Install the SharePoint farm in Brussels Test DR failover with SharePoint Test,Test,Test…
30
How to Create a cluster as a Computer Name Object in Active Directory (specific OU) grant user account permission to create the cluster grant CNO permission to the OU Install the Windows Server Failover Cluster on the SQL Machines – Add the Nodes – Configure the Quorum Create 3 availability groups (AVG) Create 3 listeners Add databases into AG – (powershell is better)
31
Demo: Failover Cluster and Always On
Add-SqlAvailabilityDatabase ` -Path SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MyAG ` -Database "MyDb" Video : start after
33
Demo: SharePoint High Availability
34
Demo: SharePoint Disaster Recovery
35
SharePoint Search and DR
2 farms-> 2 search ? Problems 2 search configurations Analytics
36
SharePoint Search & DR solutions
Backup Restore of the Search Admin DB + recreate SSA Backup – Restore of the Search SA Followed by a full crawl No analytics Analytics
37
Patching with 2 farms (no downtime)
1.Patch Farm 2 (DR) Install binaries Dismount content DBs (because read-only) Remove Service DB 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 Patch farm2 while users & DBs stay on farm1. Install binaries. Dismount content DBs on farm2. Failover “service-apps” AG to farm2 SQL instance. No hacks needed here; it’ll just work. Suspend data movement for all service-app DBs. You’ll break farm1 if it receives the patched databases without having the equivalent binaries installed, which right now it doesn’t have. Finish upgrade on farm2 with PSConfig. Service-apps upgraded because they’re read/write Mount content-databases to farm2. Switch users and content-databases to farm2. Patch farm1 while users on farm2 Dismount content DBs Resume data movement in service-app AG so farm1 gets patch changes for service-app DBs. Finish upgrade on farm1 with PSConfig. Upgrade content database in PowerShell.
38
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 Mount content DB (run in compatibility range) Upgrade content database (SP-UpgradeContentDatabase) ALTER DATABASE [ManagedMetadata] SET SINGLE_USER WITH ROLLBACK IMMEDIATE ALTER DATABASE [ManagedMetadata] SET READ_ONLY WITH NO_WAIT ALTER DATABASE [ManagedMetadata] SET MULTI_USER RESTORE DATABASE ManagedMetadata WITH RECOVERY
39
Pitfalls for Availability Groups
Installation File location Same service accounts Operations Backups & Logs Logins synchronization Avoid VMotion Check Network Multisubnet
40
Adjust your cluster settings
Get-cluster).SameSubnetThreshold = 10 (Get-cluster).CrossSubnetThreshold = 10 (Get-cluster).CrossSubnetDelay = 4000 (Get-cluster).SameSubnetDelay = 2000 SameSubnetThreshold = Controls how many heartbeats can be missed on the same subnet before the route is declared as unreachable. CrossSubnetDelay = Controls the time interval, in milliseconds, that the cluster network driver waits between sending Cluster Service heartbeats across subnets Todo (Isa) : danger d’augmenter ces valeurs ? TODO isa check
41
If you use apps/add-ins…
Use the same authentification realm in the main farm and in DR farm ! $authrealm = Get-SPAuthenticationRealm #on the DR farm Set-SPAuthenticationRealm –Realm &authrealm Restart-Service sptimerv4 Restart-Service spadminv4
42
Conclusions
43
Define SLAs with the business
Conclusions 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
44
Thank you ! Merci ! ivc@shareql.com @thesqlgrrrl sergeluca@shareql.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.