+ All Categories
Home > Technology > Unbreakable Sharepoint 2016 With SQL Server 2016 availability groups

Unbreakable Sharepoint 2016 With SQL Server 2016 availability groups

Date post: 05-Apr-2017
Category:
Upload: isabelle-van-campenhoudt
View: 72 times
Download: 4 times
Share this document with a friend
51
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
Transcript

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

Sponsorship Level: Raffle

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/

[email protected]

@thesqlgrrrl

Isabelle Van Campenhoudt

globalfrench.sqlpass.org

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/

[email protected]

@SergeLuca

Serge Luca

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

Business Continuity

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

IT Role

Prevent incidents

•Proactive Monitoring

•Staff organization

In case of incident

•HA (High Availability)

•DR (Disaster Recovery)

Terminology

Service Level Agreement

HA DR RPO 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 ?

RPO RTOExample:

RTO 1 hour

RPO 3 hours

“I wait max 1 hour

I loose max 3 hours of data”

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

RPO/RTO versus Cost

RPO/RTO Cost

HA-DR

HA DR

Architecture

SharePoint 2013/2016

A SharePoint farm is not alone…

Office

Online

Server farm

Wokflow

Manager

farm

SharePoint 2016

farm

Apps

Add-ins

SharePoint Databases

Usage

Content

User Profile

BDC

Managed

Meta

Search

State

Config

Central admin

Content

SharePoint and

Business Continuity

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

Achieving H-A (High Availability)

Server redundancy

• SharePoint, Office Web App, Workflows, SQL

Services redundancy

• Services can be startedon several machines

• Different roles : search

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

SharePoint and SQL Server

Always On

Availability Groups

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

Always On Availability & SharePoint

SQL 1

FARM 1

SQL 2

High

Availabilty

Synchronous (no data loss)

HA-Always On Availability Groups & SharePoint

SQL 1

FARM 1

SQL 2

Synchronous

High

Availabilty

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

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 !

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)

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)

Database Support – AsyncCommit

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

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 !

SQL Server and Always On

Availability Groups (AOAG)

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)

FAILOVER CLUSTER AND ALWAYS

ON

SP HIGH AVAILABILITY

SHAREPOINT DISASTER RECOVERY

SharePoint Search and DR

• 2 farms-> 2 search ?

• Problems– 2 search configurations

– Analytics

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

Patching with 2 farms(no downtime)

Install binaries

Dismount content DBs

(because read-only)

Switch Services to farm2

Stop data movementfrom 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)

Patching 2 farms (continued)

2.Patch Farm 1

Install binariesDismount content

DB (because read-only)

Resume data movement in service AVG -

>farm1 get patch from farm 2

PSConfig

Upgrade content database (SP-

UpgradeContentDatabase)

Pitfalls for Availability Groups

Installation

• File location

• Security sync

• AD permissions

Operations

• Backups & Logs

• Logins

synchronization

• Patching

• Avoid VMotion

Adjust your cluster settings

Get-cluster).SameSubnetThreshold = 10

(Get-cluster).CrossSubnetThreshold = 10

(Get-cluster).CrossSubnetDelay = 400

(Get-cluster).SameSubnetDelay = 2000

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

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 !

Danke ! Thank you ! Merci !

[email protected]

@thesqlgrrrl

[email protected]

@sergeluca

#JSS2014

Danke ! Thank you ! Merci !

[email protected]

@thesqlgrrrl

[email protected]

@sergeluca

This is my awesome text

This a my awesome slide title

Evaluez les sessions grâce à l’application SPS Genève !

Et gagnez des licences


Recommended