26
Solutions de Haute Disponibilité Bertrand Audras, Architecte MTC [email protected] http://blogs.technet.com/baudras http://www.slideshare.net/baudras http://blogs.msdn.com/mtcparis SQL Server 2008 R2

Sql Server - High Availability - VM Live Migration

Embed Size (px)

DESCRIPTION

solutions de haute disponibilité pour SQL Server

Citation preview

Page 1: Sql Server - High Availability - VM Live Migration

Solutions de Haute Disponibilité

Bertrand Audras, Architecte [email protected]://blogs.technet.com/baudrashttp://www.slideshare.net/baudrashttp://blogs.msdn.com/mtcparis

SQL Server 2008 R2

Page 2: Sql Server - High Availability - VM Live Migration

Définitions

• Métriques SLA– Recovery Point Objective

(RPO) = perte de données

– Recovery Time Objective (RTO) = temps d’interruption

• Haute disponibilité locale (Local HA)

• Site de secours à distance (Site DR)

Défaillances

Arrêts planifiés & maintenance

Page 3: Sql Server - High Availability - VM Live Migration

Maintenance 100% Online• Administration online

– Reconfigurations, backup, réorganisation des indexs, mise à jour des statistiques, ajout dynamique de ressources CPU-RAM-disques…

• Batch online– Chargement et consultation en concurrence, verrouillage

"optimiste", isolation des ressources– Chargements optimisés (log), SSIS, CDC

• Gestion online des ressources• Rolling Upgrades

– Database Mirorring, Windows Failover Cluster

Page 4: Sql Server - High Availability - VM Live Migration

Contrat de service

Désastre

Corruption des données

Erreurs humaines

Perte de serveurs

Opérations de maintenance

Pannes du stockageCa

uses

des

inte

rrup

tions

de

serv

ice

99.9%

99.99%

99.999%

99.9999%

8.75h/an

52min/an

5.2min/an

32sec/an

Jours Heures Minutes Secondes Instantané

RTO: Temps de redémarrage

Coût

s

RPO: Point de redémarrageJours Heures Minutes Transactions

Page 5: Sql Server - High Availability - VM Live Migration

Log shipping SQL Server• Restauration des logs sur un

serveur de secours• Granularité: base de données

• Perte de données liée à la fréquence de sauvegarde

• Temps de reprise non garanti

• Solution simple• Pas de contrainte hardware ou

réseau• Multicopies• Protection contre les erreurs

humaines en introduisant un délai

Principal

Secondaire(s)

Svg JournauxRéapplication des Journaux

Copie des Journaux

Principal

Page 6: Sql Server - High Availability - VM Live Migration

• Réplication de transactions• Granularité: table

• Perte de données liée au mode asynchrone

• Peer immédiatement dispo pour bascule ou reporting

• Solution complexe, en extension d’un besoin de distribution d’information

• Pas de contrainte hardware• Protection contre les

corruptions• Solution distribuée sans

gestion de conflit

Distributionagent

Logreaderagent

DistDB

Londre Barcelone

ParisDistributionagent

Logreaderagent

DistDB

Distributionagent

Logreaderagent

DistDB

Peer-to-PeerTransactional Replication

Réplication Peer-to-Peer

Page 7: Sql Server - High Availability - VM Live Migration

Database Mirroring• La solution ultime sans single

point of failure logique !• Alimentation au fil de l’eau

d’une base mirroir bia le log• Granularité: base de données

• Pas de perte de données en mode synchrone

• Bascule automatique et immédiate avec témoin

• Pas de contrainte hardware• Impact sur la performance lié à la

distance/performance du LAN• Accès via snapshot au mirroir

DonnéesLog

Témoin

DonnéesLog

commit

SQL Server SQL Server

ServeurPrincipal

ServeurMirroir

Application

Page 8: Sql Server - High Availability - VM Live Migration

Failover Cluster 2008

• Intégration dans un cluster• Granularité: instance SQL

• Zéro perte de données avec un stockage redondant RAID

• Temps de reprise non garanti

• Pas d’impact sur la performance• Pas de duplication des données• Bascule automatique du serveur,

serveur virtuel pour les postes clients

• Avec Windows Server 2008, nouvelle outil de validation

App A

App B

App BApp A Cluster

AdresseServeurVirtuel

Page 9: Sql Server - High Availability - VM Live Migration

Géo-Cluster• La solution ultime sans single

point of failure physique !• Granularité: instance SQL• Stretch cluster

– Réplication synchrone– Zéro perte de données– Temps de reprise non garanti– Bascule automatique du serveur,

serveur virtuel pour les postes clients

• Géo-cluster– RPO paramétrable (MB, min)– Généralement asynchrone– Problématique spécifique de

reprise d’activité (client, LAN)• Moins de contraintes avec

Windows Server 2008

App A

App BApp A

Cluster

WAN

App B

App A

App A

Page 10: Sql Server - High Availability - VM Live Migration

Solutions SQL Server Solution RPO RTO Bascule

automatiqueImpact sur lesperformances

Complexité

SQL Server Database Mirroring mode Synchrone

100% 100% Oui avec témoin

FaibleNet Roundtrip

< 10msec

Moyenne

Cluster local MSCS/WSFC 100% H+1min Oui Reconnexion client

Non Moyenne

SQL Server Log Shipping H-15min H+30min Non Faiblelié à l’activité IO

Simple

SQL Server P2P Replication 99% H+10min Non Oui HauteNiveau table

SQL Server Database Mirroring mode Asynchrone

99% H+1min Non Faiblelié à l’activité IO

Moyenne

Géo-cluster Jusqu’à 100%

H+5min Oui Reconnexion client

Non Haute

Hau

te D

ispo

nibi

lité

Seco

urs

à di

stan

ce

Page 11: Sql Server - High Availability - VM Live Migration

Environnement [email protected]% - Indisponibilité annuelle cible de 2h

R/3 – Production environment

2.5 TbSAN

Primary DB Server

SQL Server 2005

2.5 TbSAN

Secondary DB Server

SQL Server 2005

Production Data Center

R/3 – Test environment(Failover Production environment)

2.5 TbSAN

Test DB Server

SQL Server 2005

2.5 TbSAN

ThirdDB Server

SQL Server 2005

Log Shipping

Failover Data Center

Log ShippingCentral Instance:

MS, ENQ,BTC,DIA,UPD,SPOIncl. ATP check

1 Batch and 1 DialogInstance

x64 Server

One instance per server: 3 Dialog,

2 Batch, 1 CIF instance

One instance per server: 3 Dialog,

2 Batch, 1 CIF instance

1 Batch and 1 DialogInstance

x64 Server

Central Instance: MS, ENQ,BTC,DIA,UPD,SPO

Incl. ATP check

Database Mirroring

Washington State

California State

Page 12: Sql Server - High Availability - VM Live Migration

Sony Ericsson: environnement SAP• Migration d’Unix/Oracle vers SQL Server• Réduction des coûts• Simplicité et efficacité des mécanismes de haute

disponibilité• RPO 100%, PRA

– Robustesse avec plateforme HP Integrity– Cluster local– Database Mirroring à distance

Page 13: Sql Server - High Availability - VM Live Migration

Virtualisez SQL Server sous Hyper-V

Bertrand Audras, Microsoft Technology Center [email protected]

Page 14: Sql Server - High Availability - VM Live Migration

Ressources utilisées par SQL Server• Forte activité disques en lecture et écriture

– Workload (OLTP, DW, BI, repository, web…)– Volumétrie des données– La ressource la plus importante pour la performance de SQL Server

• Mémoire (à partir de 2GB, généralement OS en 64bit)• Utilisation CPU variable

– Activité utilisateur OLTP, reporting– Batchs quotidien– Import par batch– Utilisation de procédures stockées et de fonctions– Compression des données (SQL2008+)

• Traffic réseau– Chargements– Reporting et extractions– Nombre d’utilisateurs concurrents

Page 15: Sql Server - High Availability - VM Live Migration

SQL – cas d’usage de la virtualisation• Consolidation d’instances faiblement utilisées

– Repository, warm-up db, test & développement– Faible nombre d’utilisateurs– Faible fréquence d’utilisation

• Infrastructure BI– Datamart, OLAP, Reporting Services, Data Staging Area

• Solution de haute disponibilité et de flexibilité– Utilisation du Live Migration pour la maintenance– Dynamic provisionning, architecture web– Consolidation de base stand by (Database Mirroring)

• Infrastructure Sharepoint rationnalisée– Moins de 100 utilisateurs et moins de 100GB de données

Page 16: Sql Server - High Availability - VM Live Migration

Ne pas virtualiser SQL si on doit…• Utiliser plus de 4 cores et 8GB de RAM

– Limites de hyper-V à 4 vCPU– Au delà de 8GB, le ROI diminue (lié au cout de la RAM)

• Servir plus de 50 utilisateurs simultanés– Contention sur les accès disque et la bande passante réseau

• Obtenir les meilleurs performances– Overhead de 15% sur les temps de réponse

• Garantir la stabilité des performances– Partage des ressources CPU, réseau et accès disques

• Et surtout si on ne connait pas bien l’activité de l’instance SQL– Mettre en place un monitoring, SCOM ou Multi-Server Mgt

Page 17: Sql Server - High Availability - VM Live Migration

Best practices• Stockage

– Disques VHD de taille fixe– Mapping VHD-LUN, attention au LOG et à TEMPDB– Disques en mode pass-through– A tester avec SQLIO!

• Limiter la surallocation CPU– En mode nominal, bien répartir les VM sur les serveurs

• Utiliser les private Virtual Network– Entre un serveur IIS et SQL, SSIS et un DW, amélioration des

performances en mode virtuel

• Adapter la stratégie de sauvegarde et de haute disponibilité– Utilisation de VSS– Remplacement d’un cluster par du Live Migration– Utiliser le Database Mirroring asynchrone

Page 18: Sql Server - High Availability - VM Live Migration

Démo

Live Migration d’une VM SQL Server

Page 19: Sql Server - High Availability - VM Live Migration

Windows 2008 R2 Hyper-V Live Migration

• Step 1: Snapshot VM memory Copy partition memory from source VM to

Destination

Root Partition

Hypervisor

Hardware

Physical Server Source Child Partition

Partition Memory

Network Connections

Hypervisor

Hardware

Changed Pages

Storage Connections

Root Partition

Physical ServerDestination Child Partition

Partition Memory

Shared StorageLUN 2LUN 1

Network Connections

Page 20: Sql Server - High Availability - VM Live Migration

Windows 2008 R2 Hyper-V Live Migration

• Step 2: Copy changed pages from source VM to destination

Root Partition

Hypervisor

Hardware

Physical Server Source Child Partition

Partition Memory

Network Connections

Hypervisor

Hardware

Changed Pages

Storage Connections

Root Partition

Physical ServerDestination Child Partition

Partition Memory

Shared StorageLUN 2LUN 1

Network Connections

Changed Pages

Page 21: Sql Server - High Availability - VM Live Migration

Windows 2008 R2 Hyper-V Live Migration

• Step 3: Storage connections are migrated from the source VM to the destination VM

Root Partition

Hypervisor

Hardware

Physical Server Source Child Partition

Partition Memory

Network Connections

Hypervisor

Hardware

Changed Pages

Storage Connections

Root Partition

Physical ServerDestination Child Partition

Partition Memory

Shared StorageLUN 1

Network Connections

Changed Pages

Storage Connections

LUN 2

Page 22: Sql Server - High Availability - VM Live Migration

Windows 2008 R2 Hyper-V Live Migration

• Step 4: Network connections are migrated from source VM to destination VM

Root Partition

Hypervisor

Hardware

Physical Server Source Child Partition

Partition Memory

Network Connections

Hypervisor

Hardware

Changed Pages

Storage Connections

Root Partition

Physical ServerDestination Child Partition

Partition Memory

Shared StorageLUN 1

Changed Pages

Storage Connections

Network Connections

Network ConnectionsLUN 2

Page 23: Sql Server - High Availability - VM Live Migration

Windows 2008 R2 Hyper-V Live Migration

• Step 5: Destination VM is brought online Source VM is taken off line

Source Child Partition

Root Partition

Hypervisor

Hardware

Physical Server Destination Child Partition

Hypervisor

Hardware

Root Partition

Physical Server

Partition Memory

Shared StorageLUN 1

Changed Pages

Storage Connections

Network Connections

Network ConnectionsLUN 2

Page 24: Sql Server - High Availability - VM Live Migration

Références clients• Indiana University

– Réduction de 150 à 32 serveurs– Réduction du temps de déploiement (facteur 10)– Amélioration des performances et de la qualité de service

• Microsoft IT– 100.000 bases de données, 5.000 instances SQL Server– Moyenne CPU < 10%– Ratio final de 6:1

• Index Multimédia– Virtualisation des développements et de la pré-production– Jusqu’à 4 instances SQL Server par VM (4 vCPU-8GB-64bit)

• LASCOM (ISV)– Mode hébergement, garantie d’étanchéité entre les clients

Page 25: Sql Server - High Availability - VM Live Migration

Pour aller plus loin – SQL Server• Executer SQL 2008 en environnement Hyper-V

– http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx

• Consolidation SQL Server: un case study Microsoft IT– http://download.microsoft.com/download/4/8/0/48030820-12A4-4FE9-

B001-C2CF56BC42A5/AJ18_EN.zip

– http://msdn.microsoft.com/en-us/architecture/dd393309.aspx

• Politique de support de SQL Server en environnement virtualisé– http://support.microsoft.com/?id=956893 – http://blogs.msdn.com/psssql/archive/2008/10/08/sql-server-support-i

n-a-hardware-virtualization-environment.aspx

• Blog de Bertrand Audras: SQL Server, Hyper-V, Green IT– http://blogs.technet.com/baudras/

Page 26: Sql Server - High Availability - VM Live Migration

Votre potentiel. Notre passion. TM