Haute Disponibilité et Reprise sur Incident en SharePoint 2013 - Journées SQL Server 2014 Paris- Serge Luca (SharePoint MVP) Isabelle Van Campenhoudt (SQL Server MVP)
Make your SharePoint fly by tuning and optimizing SQL Server
Haute disponibilité et Reprise sur Incident en SharePoint 2013 Journées SQL Server Paris 2014
1. #JSS2014
Les journées
SQL Server 2014
Un événement organisé par GUSS
Haute disponibilité &
Reprise sur incidents en
SharePoint 2013
Isabelle Van Campenhoudt & Serge Luca
4. #JSS2014
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/
ivc@ShareQL.com
@thesqlgrrrl
Isabelle
Van Campenhoudt
4
globalfrench.sqlpass.org
6. #JSS2014
Concepts de Business Continuity
Architecture SharePoint 2013
SharePoint et Business Continuity
SQL Server et Groupes de disponibilité AlwaysOn
SharePoint et Groupes de disponibilité AlwaysOn
Conclusions et questions-réponses
Agenda
8. #JSS2014
Role du Business
D’abord de bonnes pratiques de management,
partant du business
• Norme ISO 22301 (“Continuité des activités”)
• Compatible avec normes :
• ISO 9001 (qualité)
• ISO 27001 (securité)
• http://www.iso.org/iso/fr/news.htm?refid=Ref1602
9. #JSS2014
Role de l’IT
Prévenir les incidents
•HA (High Availability)
•Monitoring proactif
•…
Plan de reprise sur incidents
sur base des scenarios
élaborés par le business
•DR (Disaster Recovery) et la
mise en place des équipes
11. #JSS2014
Definition des Requirements
Recovery Point Objective (RPO)
Quantité de données pouvant être perdue
Recovery Time Objective (RTO)
Intervalle de temps au cours duquel un processus metier doit etre restauré après un désastre
RPO RTO
Exemple:
RPO de 1 heure
RTO de 3 heures
“Je perds au pire 60 minutes
de données et je patiente au
maximum 3 h.”
12. #JSS2014
Accord de niveau de Services (SLA)
Habituellement conclu entre vendeurs, fournisseurs et
client, ou entre les départements d’une organisation (OLAs)
Disponibilité% Temps d'arrêt /
année
Temps d'arrêt / Mois Temps d'arrêt / Week
99% 3.65 jours 7.20 heures 1.68 heures
99.9% 8.76 heures 43.20 minutes 10.10 minutes
99.99% 52.56 minutes 4.32 minutes 1.01 minutes
99.999% 5.26 minutes 25.90 secondes 6.05 secondes
99.9999% 31.50 secondes 2.59 secondes 0.61 secondes
18. #JSS2014
Une petite ferme typique
2 Web/Query/Application /Central
Admin/
1 Dedicated Index Server (With Web
role to allow it to crawl content)
2 SQL Standard Edition Cluster Nodes
(Active/Passive) – Mirror also option
21. #JSS2014
Redondance des
serveurs
• SharePoint, Office Web
App, Workflows, SQL
Redondance des
services applicatifs
SharePoint
• Ex: le service de
recherche peut être
réparti en roles
différents sur n
machines
Architecture H-A (High Availability)
22. #JSS2014
Perte de service lors du patching SharePoint
Préparation
patches
Patch machine 1 machine 1 patchée
Patch machine 2 Psconfig sur machine 1 Psconfig sur machine 2
Afin d’éviter
toute perte de
service, que faut-
il ?
23. #JSS2014
• Data center secondaire (heures, jours)
• Backup, restore
Cold
standby
• Data center secondaire (minutes, heures)
• Backup, restore, envoi de VMs
Warm
standby
• Data center secondaire (secondes, minutes)
• 1 ferme semi-active, synchronisée via log shipping,
mirroring, Always On Groupes de disponibilité)
Hot
standby
Stratégie de DR (Disaster Recovery)
24. #JSS2014
Ferme sharepoint dont les machines sont réparties entre
plusieurs Data Center
Risque de corruption de la database de configuration !!!
• latence entre web front ends et SQL Serveur< 1 ms
• Durant 10 minutes
• 99.9 %
• Réseau 1 Gbits /sec
DANGER : Stretched Farm
25. #JSS2014
Ok si le snapshot est pris lorsque la
ferme est arrêtée
Chaque machine SP a une cache de la
config
Rien ne garantit que le snapshot des
machines est atomique (ni le restore)
Danger : Snaphots de VMs
27. #JSS2014
Les solutions SQL pour SharePoint 2013
Backup, Copy,
Restore
Log Shipping
Database
Mirroring
Always On
Failover Cluster
Instance
Groupes de
Disponibilité
Always On
28. #JSS2014
High Disponibilité and Disaster Recovery
Potential
Data Loss
(RPO)
Potential
Recovery
Time (RTO)
Automatic
Failover
Readable
Secondaries
Backup, Copy, Restore heures
heures -to-
jours No
Not during a
restore
Log Shipping Minutes
Minutes-to-
heures No
Not during a
restore
Database Mirroring - High-safety (sync + witness) Zero secondes Yes NA
Database Mirroring - High-performance (async) secondes Minutes No NA
AlwaysOn Failover Cluster Instance NA
secondes to
minutes Yes NA
AlwaysOn DisponibilitéGroup - synchronous-
commit Zero secondes Yes 0 – 2
AlwaysOn DisponibilitéGroup - asynchronous-
commit secondes Minutes No 0 - 8
Comparison Always On and other SQL Servers HA & DR
33. #JSS2014
• HA : mise-à-jour en mode sync
• DR : mise-à-jour en mode async
2
situations :
• Les noeuds secondaires peuvent être lus
• Les noeuds secondaires peuvent être utilisés pour les
backups
• Basculement très rapide
• Logique de basculement géré par le système de
quorums au niveau du Cluster
Autres
avantages:
36. #JSS2014
• Préparer SharePoint 2013 avec SP1 et CU Avril 2014
• Créer SQL alias & pointer vers un noeud SQL
• Créer la ferme, la connecter à l’alias SQL
Créer la ferme SharePoint
• Changer le recovery mode à “full” pour les DB à synchroniser
• Usage database NO
• Full Backup des databases SharePoint
Preparer les databases
SharePoint pour AlwaysOn
• Créer le cluster windows
• Créer le listener
• Créer un groupe AlwaysOn et y placer les databases
Preparer le cluster SQL
Finaliser l’Always On AG
• Mettre à jour l’alias SQL alias sur chaque machine SharePoint (cliente)
• Tester le SQL failover avec SharePoint.
Intégrer SharePoint au cluster
AlwaysOn AG
Mise en oeuvre HA
37. #JSS2014
Conseil : Plusieurs Availability Groups
• 1 pour les databases de contenu
• 1 pour les databases de
rechercher
• 1 pour les autres databases de
service
• 1 pour les autres databases
SharePoint (Config, Admin
centrale)
Plusieurs
availability
groups
38. #JSS2014
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
40. #JSS2014
DR avec Always On Availability Groups &
SharePoint
SQL 1
FARM 1
SQL 2
FARM 2
SQL 3
Asynchronous
Disaster
Recovery
Synchronous
41. #JSS2014
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
42. #JSS2014
Installer la ferme SP
numero 1
• La brancher sur le
listener de l’AG ou sur
le noeud 1
Installer la ferme SP
numéro 2
• Les databases de
configuration, de
central admin, de
recherche, user
profile sync sur le
noeud 2
• Les autres databases
(contenu et services)
sur l’AG (ou noeud 2)
Mise en oeuvre DR
46. #JSS2014
Conclusions
Impliquer le business afin de définir les SLAs
SQL Server AOAG joue un role essential en HA/DR
HA = 1 ferme SP, DR = 2 fermes SP
• Limitation du search !!!
Fermes SP + Workflow + Office Web App