unbreakable sharepoint 2016 with sql server 2016 always on availability groups

47

Upload: serge-luca

Post on 16-Apr-2017

483 views

Category:

Software


1 download

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