unbreakable sharepoint 2016 with sql server 2016 always on availability groups
TRANSCRIPT
Serge Luca SharePoint MVPIsabelle Van Campenhoudt SQL Server MVPShareQL - BelgiumUnbreakable SharePoint 2016 with SQL Server 2016 Always On Availability Groups
To add your image, first delete the place holder image as shown in the white box.Then insert your picture and scale it to be bigger than the size of the white box shown.Finally, right click on your image and select Send to back your image should now be framed correctly.2
ShareQLIsabelle Van CampenhoudtMVP SQL ServerTheSQLgrrrl.wordpress.comBruxelles
Serge LucaMVP SharePointSergeluca.wordpress.comBruxelles
ShareQL.com
Isabelle Van CampenhoudtIsabelle Van CampenhoudtSQL Server MVP, BrusselsConsultant, speaker, trainer, PASS V-Chapter LeaderManaging partner de www.ShareQL.comSQL Server since 1999Blog: http://thesqlgrrrl.wordpress.com/[email protected]@thesqlgrrrlIsabelle Van Campenhoudt
globalfrench.sqlpass.org
TODO GUSS4
Serge LucaSerge Luca10 x SharePoint MVP, BrusselsConsultant, speaker, trainerManaging partner of www.ShareQL.comSharePoint since 2001Blog: http://sergeluca.wordpress.com/[email protected]@SergeLuca
Serge Luca
Agenda
6
Business Continuity
Start from the business
IT Role
Prevent incidentsProactive Monitoring Staff organization
In case of incidentHA (High Availability)DR (Disaster Recovery)
Terminology
RequirementsRecovery Point Objective (RPO)How much data can we afford to loose ?Recovery Time Objective (RTO)How long can we afford to wait ?
RPORTO
Example:RTO 1 hourRPO 3 hours
I wait max 1 hour I loose max 3 hours of data
Service Level Agreement (SLA)Contracted delivery timeAvailability%Stop/YearStop/MonthStop / Week99%3.65 hours7.20 hours1.68 hours99.9%8.76 hours43.20 minutes10.10 minutes99.99%52.56 minutes4.32 minutes1.01 minutes99.999%5.26 minutes25.90 seconds6.05 seconds99.9999%31.50 seconds2.59 seconds0.61 seconds
RPO/RTO versus CostRPO/RTOCost
HA-DR
HADR
Architecture SharePoint 2013/2016
A SharePoint farm is not alone Office Online Server farm++ Wokflow Manager farm
SharePoint 2016 farm
AppsAdd-ins
SharePoint DatabasesUsageContentUser ProfileBDCManaged MetaSearchStateConfigCentral adminContent
SharePoint and Business Continuity
Remarks
Achieving H-A (High Availability)Server redundancySharePoint, Office Web App, Workflows, SQLServices redundancyServices can be started on several machinesDifferent roles : search
DR Strategy (Disaster Recovery)Recovery in hours or daysBackup, restoreCold standbyRecovery in minutes, hoursBackup, restore, send VMsWarm standbyRecovery in seconds, minutes2 farms, synchronized via log shipping, mirroring, Always On Availability GroupsHot standby
SharePoint and SQL Server Always On Availability Groups
High Availability and Disaster RecoveryPotential Data Loss (RPO)Potential Recovery Time (RTO)Automatic FailoverReadable SecondariesBackup, Copy, Restorehourshours -to-daysNoNot during a restoreLog ShippingMinutesMinutes-to-hoursNoNot during a restoreDatabase Mirroring - High-safety (sync + witness)ZerosecondsYesNADatabase Mirroring - High-performance (async)secondsMinutesNoNAAlways On Failover Cluster Instance (FCI)NAseconds to minutesYesNAAlways On Availability Groups - synchronous-commitZerosecondsYes0 3Always On Availability Groups - asynchronous-commitsecondsMinutesNo0 - 8
TODO readable nodes ISA23
Always On Availability & SharePoint
SQL 1FARM 1SQL 2
ProductionVienna
High Availabilty Synchronous (no data loss)
HA-Always On Availability Groups & SharePoint
SQL 1FARM 1SQL 2Synchronous
ProductionVienna
High Availabilty
You can take backup from the replicas, but youll need a licence25
HA Sync CommitUsageContentUser ProfileBDCManaged MetaSearchStateConfig
SP FARMVIENNACentral adminUsageContentUser ProfileBDCManaged MetaSearchStateConfigCentral adminSync
https://msdn.microsoft.com/en-us/library/ff877931.aspx
26
Set up: farm in Vienna (main farm)SharePoint 2013 with SP1 and CU April 2014 or SP20163 aliases : 1 for content DB, 1 for Services DB, 1 for farm DB (CA, Config, State).Install the SharePoint farm in Vienna3 SQL aliasesRecovery mode to full for databases to be syncSharePoint 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 DBCreate the 3 listeners (1/AVG)Copy SP logins & permissions and other server objects on every nodeConfigure SQL Server Cluster& Always On
$alias1 = AVG1 listener $alias2 = AVG2 listener $alias3 = AVG3 listener
$configDB = ...$alias1 = SQL1 $alias2 = SQL1 $alias3 = SQL1New-SPConfigurationDatabase -databaseName $ConfigDB -DatabaseServer $alias1New-SPWebApplication -DatabaseServer $alias2 New-SPMetadataServiceApplication -DatabaseServer $alias3New-SPEnterpriseSearchServiceApplication -DatabaseServer $alias1Everything can easily be scripted !
Database Support Sync CommitDatabaseSupportedAdmin ContentYesApp ManagementYesBDC YesConfigYesContentYesManaged MetadataYesPerformancePointYesPowerPivotNot TestedProjectYesSearch Analytic ReportingYesSearch AdminYes
DatabaseSupportedSearch CrawlYesSearch LinksYesSecure StoreYesState ServiceYesSubscription SettingsYesTranslation ServicesYesUPA Profile YesUPA SocialYesUPA SyncYesUsage(=loggingDB)Yes NRWord AutomationYes
DR with Always On Availability Groups & SharePoint (Active/Passive)
SQL 1FARM 1SQL 2
FARM 2
SQL 3
ProductionViennaDRBrussels
Asynchronous (potential data loss)DisasterRecovery
Synchronous (no data loss)
Todo ISA sync and async not visible in projector->to fix29
UsageContentUser ProfileBDCManaged MetaSearchStateConfigCentral adminUsageContentUser ProfileBDCManaged MetaSearchStateConfigStateContentUser ProfileBDCManaged MetaSearch !!!Central adminConfig
Central adminUsageAsyncSyncSQL01SQL02SQL03
SP FARMVIENNA
SP FARMBRUSSELS(DR)
TODO vibrer30
Database Support Async CommitDatabaseSupportedAdmin ContentNoApp ManagementYesBDC YesConfigNoContentYesManaged MetadataYesPerformancePointYesPowerPivotNot Tested*ProjectYesSearch Analytic ReportingNoSearch AdminNo
DatabaseSupportedSearch CrawlNoSearch LinksNoSecure StoreYesState ServiceNoSubscription SettingsYesTranslation ServicesYesUPA Profile YesUPA SocialYesUPA SyncNoUsageYes NRWord AutomationYes
Set up: farm in Brussels (DR farm)SharePoint 2013 with SP1 and CU April 2014 or SP20163 aliases : 1 for content DB, 1 for Services DB, 1 for farm DB (CA, Config, State).Aliases should point to listenersInstall the SharePoint farm in Brussels3 SQL aliasesTest DR failover with SharePointTest,Test,TestEverything can easily be scripted !
SQL Server and Always On Availability Groups (AOAG)
How toAdd databases into AVG (powershell is better)Create 3 listenersCreate 3 availability groups (AVG)Install the Windows Server Failover Cluster on the SQL Machines Add the Nodes Configure the QuorumPredefine Cluster Named Object (CNO) & grant the permission to create the cluster (full control on CNO)
Architecture of our demos
Failover Cluster and ALWAYS ON
demo
1630 1830Show clusterShow nodeShow no central diskSHow SQL Show listenersShow AVGs : explain each databaseShow scripts to add db into AVG, including tatoosShow scripts to sync logins26 2236
SP High Availability
demo
Make an automatic switchShow web site38
Sharepoint disaster recovery
demo
Show web site 1 in Main farmShow web site 1 in DR farm
Add a document in main farm, show in DRShow managed metadata in farm 1- add one value, show in DR
Show central admin farm 1, farm 2Make a failoverShow web site 1 in DR farmShow web site 1 in Main farmSwicth back to main
39
SharePoint Search and DR2 farms-> 2 search ?Problems2 search configurationsAnalytics
SharePoint Search & DR solutionsBackup Restore of the Search Admin DBFollowed by a full crawlNo analyticsBackup Restore of the Search SAAnalytics
Patching with 2 farms (no downtime)
1.Patch Farm 2 (DR)
Todo (serge)42
Patching 2 farms (continued)2.Patch Farm 1
Pitfalls for Availability Groups
Check Network Multisubnet44
Adjust your cluster settings
Get-cluster).SameSubnetThreshold = 10(Get-cluster).CrossSubnetThreshold = 10(Get-cluster).CrossSubnetDelay = 400(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 daugmenter ces valeurs ?
TODO isa check45
If you use apps/add-ins$authrealm = Get-SPAuthenticationRealm
#on the DR farm Set-SPAuthenticationRealm Realm &authrealmRestart-Service sptimerv4Restart-Service spadminv4
Use the same authentification realm in the main farm and in DR farm !
Conclusions
47
Define SLAs with the businessMajor Role of SQL Server AOAG in HA/DRHA = 1 SP farm SP, DR = 2 SP farmsSearch limitation !!!SP farm + Workflow farm + Office Web App farmBe proactive !
Danke ! Thank you ! Merci !
[email protected]@[email protected]@sergeluca