primary - dbi services

Report
SQL Server AlwaysOn
Groupes de disponibilités en détail
SQLSaturday 323 – Paris 2014
> whoami
~ depuis 2002
6.5 <= SQL Server <= 2014
[email protected] / [email protected]
http://blog.developpez.com/mikedavem
http://www.dbi-services.com/index.php/blog/dbi-bloggers/blogger/
listings/dab
@mikedavem
SQLSaturday 323 – Paris 2014
Sponsors Gold
SQLSaturday 323 – Paris 2014
Sponsors Silver et Bronze
SQLSaturday 323 – Paris 2014
Agenda
Cluster Windows WSFC et interaction
avec les groups de disponibilités
Groupes de disponibilités – Réplication
Groupes de disponibilités – Réplicas
secondaires
SQLSaturday 323 – Paris 2014
SQL Server AlwaysOn et les groupes de
disponibilités : Architecture globale
SQLSaturday 323 – Paris 2014
Cluster à basculement Windows
Cluster
• Groupe indépendant d’ordinateurs travaillant ensemble pour augmenter la
disponibilité d’une application
• 2 ressources associées par défaut : un nom virtuel (VNN) et une adresse
IP virtuelle (VIP)
Ressource
•
•
•
•
•
Composant physique ou logique
Peut être mis en ligne / hors ligne
Hébergé par un seul nœud à la fois (propriétaire)
Dépendances de ressources
Abstraction du service fourni  gestion des ressources via des DLL
Groupes de ressources
• Collection de ressources
• Définit une unité de basculement
• Hébergé sur un nœud à la fois (propriétaire)
SQLSaturday 323 – Paris 2014
Cluster à basculement Windows - Quorum
Offre un mécanisme de protection contre le «split brain»
• Cluster divisé en plusieurs partitions distinctes
• Une seule partition active et arrêt des autres
Type de quorum
•
•
•
•
Nœuds majoritaires
Nœuds et disques majoritaires
Nœuds et partage de fichiers majoritaires
Aucune majorité : disque uniquement
Gestion des poids des nœuds
• Modifiable et statique à partir de Windows 2008 R2
• Dynamique depuis Windows 2012
Dois-je passer à
Windows Server
2012 ?
SQLSaturday 323 – Paris 2014
Cluster à basculement Windows – Sous
système d’hébergement des ressources
RHS
Cluster Service
Groupe de disponibilité
RCM
State / action
Nom réseau
SQL Server
isAlive() / LooksAlive()
Communications
hadrres.dll  sp_server_diagnostics
isAlive() / LooksAlive()
IP
IP
SQLSaturday 323 – Paris 2014
….
sp_server_diagnostics
 < SQL Server 2012  @@SERVERNAME
 améliore les capacités de diagnostique en cas de basculement
 élimination des problèmes de connectivité
 Procédure stockée interne associé à un thread préemptif à
haute priorité depuis la dll de ressources hadrres.dll
 Possède sa propre réservation mémoire et non bloquant
 Exécution toutes les 5 secondes (1/4 lease timeout)
 Fournit des informations détaillées (system, resource,
query processing, IO subsystem, events)
 Permet une plus grande flexibilité sur les règles de
basculement (5 niveaux)
SQLSaturday 323 – Paris 2014
Cluster à basculement Windows – RHS et
DLL de ressource SQL Server
RHS.exe (hadrres.dll)
AG1
AG2
Health
Worker
primary
Dedicated thread
Health
Worker
LOG
SQLSaturday 323 – Paris 2014
AG3
LeaseTimeOut
{SetEvent() / WaitForSingleObject()}
Result Sets =
smallestTimeOut = max (5,
min (all active AAG) / 3)
sp_server_diagnostics
Cluster à basculement Windows –
paramètre Lease Timeout
failover
AAG
unresponsive
responsive
Timeout
SECONDARY
PRIMARY
Lease Split brain
SQLSaturday 323 – Paris 2014
SECONDARY
PRIMARY
Cluster à basculement Windows – Démo
SQLSaturday 323 – Paris 2014
Groupes de disponibilités et type de
réplication
Log block
6
3
4
1
2
6
5
2
hardened LSN
Ok – I’m ready
SQLSaturday 323 – Paris 2014
Groupes de disponibilités et réplication –
Démo
SQLSaturday 323 – Paris 2014
Groupes de disponibilités – réplicas
secondaires (en lecture seule)
 Accès en lecture «réelle»
 Redirection automatique via le listener
 Snapshot isolation (SI) si réplica utilisé en lecture seule
-> impact stockage data + tempdb
 Statistiques temporaires possibles
 Plans de maintenance et sauvegarde
 Impact d’une charge en lecture
SQLSaturday 323 – Paris 2014
Groupes de disponibilités et réplicas
secondaires en lecture seule – Démo
SQLSaturday 323 – Paris 2014

similar documents