Serge Isabelle SharePoint 2016 Unbreakablex

Download Report

Transcript Serge Isabelle SharePoint 2016 Unbreakablex

SharePoint Saturday Genève – 3 Décembre 2016
Unbreakable SharePoint 2016
with SQL Server 2016
Always On Availability Groups
Serge Luca SharePoint MVP
Isabelle Van Campenhoudt SQL Server MVP
ShareQL - Belgium
Sponsorship Level: Raffle
Isabelle Van Campenhoudt
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/
Isabelle Van
Campenhoud
t
Isabelle
Van Campenhoudt
[email protected]
@thesqlgrrrl
globalfrench.sqlpass.org
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]
Serge Luca
Serge Luca
@SergeLuca
Agenda
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
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 ?
Example:
RTO 1 hour
RPO 3 hours
“I wait max 1 hour
I loose max 3 hours of data”
RPO
RTO
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…
SharePoint 2016
farm
Office
Online
Server farm
Wokflow
Manager
farm
Apps
Add-ins
SharePoint Databases
User Profile
Config
BDC
Central admin
Content
Managed
Meta
State
Content
Search
Usage
…
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
Services redundancy
• SharePoint, Office Web
App, Workflows, SQL
• Services can be started
on several machines
• Different roles : search
DR Strategy (Disaster Recovery)
Cold
standby
Warm
standby
Hot
standby
• Recovery in hours or days
• Backup, restore
• Recovery in minutes, hours
• Backup, restore, send VMs
• Recovery in seconds, minutes
• 2 farms, synchronized via log shipping, mirroring, Always
On Availability Groups)
SharePoint and SQL Server
Always On
Availability Groups
Potential
Recovery Time Automatic
(RTO)
Failover
Readable
Secondaries
hours
hours -to-days No
Not during a
restore
Log Shipping
Minutes
Minutes-tohours
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
High Availability and Disaster Recovery
Backup, Copy, Restore
Potential
Data Loss
(RPO)
Always On Availability &
SharePoint
FARM 1
Synchronous (no data loss)
SQL 1
SQL 2
High
Availabilty
HA-Always On Availability Groups
& SharePoint
FARM 1
Synchronous
SQL 1
SQL 2
High
Availabilty
HA – Sync Commit
SP FARM
VIENNA
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
Set up: farm in Geneva
(main farm)
Install the SharePoint farm in
Vienna
$configDB = ...
3 SQL $alias1
aliases= “SQL1”
• 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).
$alias1
$alias2==“AVG1
“SQL1”listener”
$alias2
$alias3==“AVG2
“SQL1”listener”
• Recovery mode to “full”
for databases to
be sync
$alias3 = “AVG3 listener”
Everything
can
• SharePoint databases Full Backup
Configure SharePoint
DB
New-SPConfigurationDatabase
-databaseName $ConfigDB -DatabaseServer $alias1
easily
• !!! In Test take log
backups be
scripted !
New-SPWebApplication -DatabaseServer $alias2
New-SPMetadataServiceApplication -DatabaseServer $alias3
• Create Windows Cluster and
add every SQL Node
New-SPEnterpriseSearchServiceApplication
-DatabaseServer
$alias1
Configure SQL Server Cluster
& Always On
• 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
DR with Always On Availability
Groups & SharePoint (Active/Passive)
FARM 1
FARM 2
Synchronous (no data loss)
Asynchronous (potential data loss)
SQL 1
SQL 2
SQL 3
Disaster
Recovery
SP FARM
BRUSSELS
(DR)
SP FARM
VIENNA
Sync
Config
Config
Config
Central admin
Central admin
Central admin
State
State
State
Usage
Usage
Content
Content
Content
User Profile
User Profile
User Profile
BDC
BDC
BDC
Managed Meta
Managed Meta
Managed Meta
Search
Search
Search !!!
SQL02
SQL03
SQL01
Async
Usage
Database Support – Async
Commit
Database
Supported
Database
Supported
Admin Content
No
Search Crawl
No
App Management
Yes
Search Links
No
BDC
Yes
Secure Store
Yes
Config
No
State Service
No
Content
Yes
Subscription Settings
Yes
Managed Metadata
Yes
Translation Services
Yes
PerformancePoint
Yes
UPA Profile
Yes
PowerPivot
Not Tested*
UPA Social
Yes
Project
Yes
UPA Sync
No
Search Analytic Reporting
No
Usage
Yes – NR
Search Admin
No
Word Automation
Yes
Set up: farm in Brussels (DR
farm)
Install the SharePoint farm in
Brussels
3 SQL aliases
Test,Test,Test…
• 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)
Everything can
easily be scripted !
• Test DR failover with SharePoint
SQL Server and Always On
Availability Groups (AOAG)
How to
Predefine Cluster Named Object (CNO) & grant the permission to create the cluster (full
control on CNO)
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 AVG – (powershell is better)
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)
1.Patch Farm 2 (DR)
Install binaries
Dismount
content DBs
(because readonly)
Stop data movement
from services AVG –
set read-only in
farm1 primary node
Upgrade farm2
with Psconfig
Mount content
DB in farm 2 (run
Switch users to
farm 2
in compatibility range)
Patching 2 farms (continued)
2.Patch Farm 1
Install binaries
Dismount content
DB (because
read-only)
PSConfig
Upgrade content
database (SPUpgradeContentD
atabase)
Resume data
movement in
service AVG >farm1 get patch
from farm 2
Pitfalls for Availability Groups
Installation
Operations
• File location
• Security sync
• AD permissions
• 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…
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
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
Danke ! Thank you ! Merci !
[email protected]
@thesqlgrrrl
[email protected]
@sergeluca
#JSS2014
This a my awesome slide title
This is my awesome text
Evaluez les sessions grâce à l’application SPS Genève !
Et gagnez des licences