SQL Server AlwaysOn

17
QLSaturday 323 – Paris 2014 SQL Server AlwaysOn Groupes de disponibilités en détail

description

SQL Server AlwaysOn. Groupes de disponibilités en détail. > whoami. ~ depuis 2002 6.5

Transcript of SQL Server AlwaysOn

Page 1: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

SQL Server AlwaysOn

Groupes de disponibilités en détail

Page 2: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

> whoami

~ depuis 20026.5 <= SQL Server <= 2014

@mikedavem

[email protected] / [email protected]

http://blog.developpez.com/mikedavem

http://www.dbi-services.com/index.php/blog/dbi-bloggers/blogger/listings/dab

Page 3: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Sponsors Gold

Page 4: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Sponsors Silver et Bronze

Page 5: SQL Server AlwaysOn

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

Page 6: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

SQL Server AlwaysOn et les groupes de disponibilités : Architecture globale

User connections

Client Access Point :Virtual Network Name

Replica

AAG

Page 7: SQL Server AlwaysOn

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)

Page 8: SQL Server AlwaysOn

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 ?

Page 9: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – Sous système d’hébergement des ressources

Groupe de disponibilité

Nom réseau

IP IP

SQL Server

hadrres.dll sp_server_diagnostics

RHSCluster Service

RCM

CommunicationsisAlive() / LooksAlive()

isAlive() / LooksAlive()

State / action

….

Page 10: SQL Server AlwaysOn

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)

Page 11: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – RHS et DLL de ressource SQL Server

AG1 AG2 AG3

Health Worker

RHS.exe (hadrres.dll)

Health Worker

sp_server_diagnostics

Result Sets = smallestTimeOut = max (5, min (all active AAG) / 3)

Dedicated thread

LOG

LeaseTimeOut

{SetEvent() / WaitForSingleObject()}

primary

Page 12: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – paramètre Lease Timeout

unresponsive

failover

AAG

responsive

PRIMARY SECONDARYPRIMARY

Split brainLease

TimeoutSECONDARY

Page 13: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – Démo

Page 14: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Groupes de disponibilités et type de réplication

1

22

3

5

4

6

6

Ok – I’m ready

Log block

hardened LSN

Page 15: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Groupes de disponibilités et réplication – Démo

Page 16: SQL Server AlwaysOn

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

Page 17: SQL Server AlwaysOn

SQLSaturday 323 – Paris 2014

Groupes de disponibilités et réplicas secondaires en lecture seule – Démo