sql server alwayson - blog dbi services · sql server alwayson groupes de disponibilités en...

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

Upload: others

Post on 03-Jun-2020

25 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

SQL Server AlwaysOn

Groupes de disponibilités en détail

Page 2: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

> whoami

~ depuis 2002

6.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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Sponsors Gold

Page 4: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Sponsors Silver et Bronze

Page 5: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

SQL Server AlwaysOn et les groupes de

disponibilités : Architecture globale

Page 7: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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

Communications

isAlive() / LooksAlive()

isAlive() / LooksAlive()

State / action

….

Page 10: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – RHS et

DLL de ressource SQL Server

AG1 AG2 AG3

Health

Worker

RHS.exe (hadrres.dll)

Health

Workersp_server_diagnostics

Result Sets =

smallestTimeOut = max (5,

min (all active AAG) / 3)

Dedicated thread

LOG

LeaseTimeOut

{SetEvent() / WaitForSingleObject()}

primary

Page 12: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Cluster à basculement Windows – Démo

Page 14: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Groupes de disponibilités et réplication –

Démo

Page 16: SQL Server AlwaysOn - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

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 - Blog dbi services · SQL Server AlwaysOn Groupes de disponibilités en détail. SQLSaturday 323 –Paris 2014 > whoami ~ depuis 2002 6.5

SQLSaturday 323 – Paris 2014

Groupes de disponibilités et réplicas

secondaires en lecture seule – Démo