46
SharePoint Saturday Helsinki Unbreakable SharePoint 2013 With SQL Server Always On Isabelle Van Campenhoudt & Serge Luca

Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Embed Size (px)

Citation preview

Page 1: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint Saturday

HelsinkiUnbreakable SharePoint 2013

With SQL Server Always On

Isabelle Van Campenhoudt & Serge Luca

Page 2: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint Saturday Helsinki

Thank you to our sponsors!

Page 3: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

ShareQ

L

3

Isabelle Van Campenhoudt

MVP SQL ServerTheSQLgrrrl.wordpress.com

Bruxelles

Serge Luca

MVP SharePointSergeluca.wordpress.com

Bruxelles

ShareQL.com

Page 4: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Isabelle Van Campenhoudt

Isabelle Van

Campenhoud

t

SQL Server MVP, Bruxelles

Consultant, speaker, trainer, PASS V-Chapter Leader

Managing partner de www.ShareQL.com

SQL Server depuis 1999

Blog: http://thesqlgrrrl.wordpress.com/

[email protected]

@thesqlgrrrl

Isabelle Van Campenhoudt

4

globalfrench.sqlpass.org

Page 5: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Serge Luca

Serge Luca

SharePoint MVP, Bruxelles

Consultant, speaker, trainer

Managing partner de www.ShareQL.com

SharePoint since 2001

Blog: http://sergeluca.wordpress.com/

[email protected]

@SergeLuca

Serge Luca

Page 6: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Business Continuity - Concepts

SharePoint 2013 Architecture and Business Continuity

SharePoint 2013 and Business Continuity

SQL Server and Always On Availability Groups

SharePoint 2013 and Always On Availability Groups

Conclusions – Q&A

Agenda

Page 7: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Business Continuity

Page 8: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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

Page 9: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

IT Role

Prevent incidents

•Proactive Monitoring

•Staff organization

In case of incident

•HA (High Availability)

•DR (Disaster Recovery)

Page 10: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Terminology

Service Level Agreement

HA DR RPO RTO

Page 11: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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”

Page 12: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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

Page 13: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

RPO/RTO versus Cost

RPO/RTO Cost

NH

Page 15: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Architecture

SharePoint 2013

Page 16: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

A SharePoint farm is not alone…

Office Web

App farm

Wokflow

Manager

farm

SharePoint 2013

farm

Page 17: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint Farm

Site collection

Sites

Listes

Web applications (= IIS web sites)

Farm

Content database

Configuration Database

Service Application

Service Databases

Page 18: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint and

Business Continuity

Page 19: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Server redundancy

• SharePoint, Office Web App, Workflows, SQL

Services redundancy

• Services can be startedon several machines

• Different roles : search

Architecture H-A (High Availability)

Page 20: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint patching and downtimepatches

preparationPatching machine 1 machine 1 patched

Patching machine 2 Psconfig on machine 1 Psconfig on machine 2

How can we patch

without

downtime ?

Page 21: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint machines active in 2 data centers

Unsupported unless

• latency between web front ends et SQL Server< 1 ms

• 10 minutes

• 99.9 %

• Network > 1 Gbits /sec

DANGER : Stretched Farm

Page 22: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Ok only if the SharePoint farm is Stopped (physically stop VMs and take DB backups)

Every machine has a config cache

Snapshot is not atomic

Danger : VMs Snaphots

Page 23: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SQL Server and Always On

Availability Groups (AOAG)

Page 24: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SQL toolbox

Backup, Copy, Restore

Log ShippingDatabase Mirroring

Always On Failover Cluster

Instance

Always On

Availability Groups (AOAG)

Page 25: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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 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

Comparison Always On and other SQL Servers HA & DR

Page 26: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)
Page 27: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SQL Server AlwaysOn Availability Groups

Architecture

Page 28: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Pitfalls for Availability Groups

Installation

• File location

• Security

• AD permissions

• Network/DNS/MultiSubnet

Operations

• Backups & Logs

• Logins synchronization

• Patching

Page 29: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

ALWAYS ON AVAILABILITY GROUPS

Page 30: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint and Always On

Availability Groups

Page 31: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SharePoint and Always On Availability Groups

Page 32: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

• HA : nodes update in sync mode

• DR : nodes update in async mode

2 situations :

• Secondary nodes can be read (licence!)

• And used for backups..

• Switch very fast

• Switch logic based on quorum in the Cluster

Other benefits :

Page 33: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Always On Availability & SharePoint

SQL 1

FARM 1

SQL 2

High

Availabilty

Synchronous

Page 34: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

HA-Always On Availability Groups &

SharePoint

SQL 1

FARM 1

SQL 2

Synchronous

High

Availabilty

Page 35: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

• SharePoint 2013 with SP1 and CU April 2014

• SQL alias & pointing to a SQL node

• Setup the farm /connected to alias (SPAutoInstaller)Install the SharePoint farm

• Recovery mode to “full” for databases to be sync

• Usage database: NO

• SharePoint databases Full Backup

• !!! In Test take log backups

Configure SharePoint SharePoint for Always On AG

• Create Windows Cluster and add every SQL Node

• Create 1 or n Always On AG & Add SharePoint DB

• Create the listener

• Copy SP logins & permissions and other server objects on every node

Configure SQL Server Cluster

& Always On

• Test failover with SharePointTest

How to HA with AOAG

Everything can

easily be scripted !

Page 36: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Nice to have: several Availability Groups

• 1 for content databases

• 1 for search databases

• 1 for other service

databases

• 1 for other SharePoint

(Config, Central Admin)

several

availability

groups

Page 37: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Database Support – Sync

Commit

Database Supported

Admin Content Yes

App Management Yes

BDC Yes

Config Yes

Content Yes

Managed Metadata Yes

PerformancePoint Yes

PowerPivot Not Tested

Project Yes

Search Analytic Reporting Yes

Search Admin Yes

Database Supported

Search Crawl Yes

Search Links Yes

Secure Store Yes

State Service Yes

Subscription Settings Yes

Translation Services Yes

UPA Profile Yes

UPA Social Yes

UPA Sync Yes

Usage(=loggingDB) Yes – NR

Word Automation Yes

WE

Page 38: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SP HIGH AVAILABILITY

Page 39: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

DR with Always On Availability Groups &

SharePoint

SQL 1

FARM 1

SQL 2

FARM 2

SQL 3

Asynchronous

Disaster

Recovery

Synchronous

Page 40: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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

WE

Page 41: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Install Farm number 1

• Connect it on AG listener or on Node 1

Install Farm number 2

• Databases: configuration, central admin, search, user profile sync on node 2

• Other databases (content and services) come from farm 1

How to setup DR with 2 farms

Page 42: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Backup/Restore of the search Service application

Impact on SLA !

• O365 search SLA = 1 week

Search and DR

Page 43: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

SHAREPOINT DISASTER RECOVERY

Page 44: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Conclusions

Page 45: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

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

Page 46: Unbreakable SharePoint 2013 with SQL Server Always On Availability Groups (HA and DR)

Kiitos, Merci !

[email protected]

@thesqlgrrrl

[email protected]

@sergeluca