7 minutes à lire
TODO - Mise à jour du livre SQL Server HADR
Résumé
Analyse effectuée le 2026-02-03 pour identifier les manques et mises à jour nécessaires pour couvrir SQL Server 2022 et les meilleures pratiques actuelles.
Chapitre 00 - Introduction
Fichier : 00-introduction.adoc
- Aucune modification majeure nécessaire
Chapitre 01 - Fondamentaux des solutions de haute disponibilité
Fichier : 01-fondamentaux-des-solutions-de-haute-disponibilite.adoc
Priorité HAUTE
Ajouter section Contained Availability Groups (SQL Server 2022)
- Définition : Les Contained AG étendent le concept des bases de données répliquées pour inclure les portions pertinentes des bases master et msdb
- Avantages : Réplication automatique des logins, jobs SQL Agent, linked servers, permissions
- Limitations : Incompatible avec les Distributed AG, incompatible avec la réplication, Edition Enterprise uniquement, les jobs ne s’exécutent que sur le principal
- Source : https://learn.microsoft.com/en-us/sql/database-engine/availability-groups/windows/contained-availability-groups-overview
Ajouter section Lien vers Azure SQL Managed Instance
- Bidirectionnel depuis SQL Server 2022 (avant, unidirectionnel uniquement depuis SQL Server 2016-2019)
- Failover en ligne entre SQL Server et Azure
- Hybrid failover benefit pour réduire les coûts de licence
- Source : https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/managed-instance-link-disaster-recovery
Priorité MOYENNE
Mettre à jour tableau comparatif (ligne 61-89)
- Ajouter Contained AG
- Ajouter Link to Azure SQL MI
- Ajouter Distributed AG (manquant)
Ajouter section Sauvegarde vers stockage S3-compatible (SQL Server 2022)
- Intégration avec tout stockage compatible S3 (AWS S3, MinIO, etc.)
- Sauvegardes miroir vers plusieurs buckets S3 pour le DR
- Support de la compression et du chiffrement
- Source : https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/sql-server-backup-and-restore-with-s3-compatible-object-storage
Priorité BASSE
Mettre à jour mention Query Store sur réplicas secondaires (ligne 104)
- Préciser que la fonctionnalité reste en preview avec le trace flag 12606
- Sera activée par défaut dans SQL Server 2025
- Source : https://learn.microsoft.com/en-us/sql/relational-databases/performance/query-store-for-secondary-replicas
Mettre à jour ADO.NET Configurable Retry Logic (ligne 46)
- Fonctionnalité maintenant disponible dans Microsoft.Data.SqlClient
- Nécessite activation via AppContext.SetSwitch
Chapitre 02 - Log Shipping
Fichier : 02-log-shipping.adoc
Priorité BASSE
Ajouter mention des améliorations SQL Server 2025 (pour information)
- Support TDS 8.0 pour le log shipping
- Chiffrement TLS 1.3
- Utilisation de OLEDB version 19 par défaut
- Source : https://learn.microsoft.com/en-us/sql/database-engine/log-shipping/about-log-shipping-sql-server
Ajouter section : Utilisation pour les migrations
- Le log shipping peut être utilisé pour migrer vers SQL Server 2022 avec temps d’arrêt minimal
Chapitre 03 - Windows Server Failover Clustering (WSFC)
Fichier : 03-windows-server-failover-clustering-wsfc.adoc
Priorité HAUTE
- Compléter section Cloud Witness sur Azure (ligne 293)
- Configuration : Nécessite un compte Azure Storage Standard general-purpose V2
- Port : Doit avoir le port 443 (HTTPS) ouvert sur tous les nœuds
- Avantages : Élimine le besoin d’un serveur de quorum on-premises, réduction des coûts, haute disponibilité native d’Azure
- Source : https://learn.microsoft.com/en-us/windows-server/failover-clustering/deploy-quorum-witness
Priorité MOYENNE
Ajouter section Nouveautés Windows Server 2022 pour WSFC
- Affinity Rules : Règles pour maintenir plusieurs rôles sur le même nœud
- Automatic Site Fault Domains : Création automatique des domaines de panne basée sur les sites Active Directory ou les sous-réseaux IP
- Améliorations Azure Extended Network
- Source : https://www.mssqltips.com/sqlservertip/7841/build-windows-failover-cluster-windows-2022-sql-server-2022/
Compléter section WSFC sans domaine (ligne 646)
- Restrictions supplémentaires
- Compatibilité avec Contained AG
- Utilisation de certificats obligatoire
Chapitre 04 - Failover Clustering
Fichier : 04-failover-clustering.adoc
Priorité HAUTE
- Ajouter section Accelerated Database Recovery (ADR)
- Multi-threaded Version Cleanup : Nettoyage parallèle des versions
- User Transaction Cleanup : Nettoyage par transactions utilisateur
- Extent-Level PVS Tracking : Suivi au niveau extent
- Temps de récupération significativement réduits après basculement
- Source : https://www.microsoft.com/en-us/sql-server/blog/2023/03/28/accelerated-database-recovery-enhancements-in-sql-server-2022/
Priorité MOYENNE
Mettre à jour la section (référence obsolète à SQL Server 2012 - ligne 29)
- Actualiser pour SQL Server 2022
Ajouter section Storage Spaces Direct (S2D)
- Option moderne pour le stockage partagé en FCI sans SAN traditionnel
Ajouter mention intégration avec Azure SQL Managed Instance
- Le lien bidirectionnel avec Azure MI peut servir de stratégie DR pour les FCI
Priorité BASSE
- Ajouter mention modèle Pay-As-You-Go
- SQL Server 2022 introduit le modèle PAYG permettant une facturation à l’heure pour les instances on-premises
- Nécessite l’extension Azure pour SQL Server
Chapitre 05 - AlwaysOn Availability Groups (AG)
Fichier : 05-alwayson-availability-groups-ag.adoc
Priorité HAUTE
Ajouter section complète Contained Availability Groups (SQL Server 2022)
=== Contained Availability Groups (SQL Server 2022) Les Contained AG permettent de répliquer automatiquement : - Les logins SQL et Windows - Les jobs SQL Agent - Les linked servers - Les permissions Syntaxe : CREATE AVAILABILITY GROUP [MonAG] WITH (CONTAINED) ... Limitations : - Non compatible avec Distributed AG - Non compatible avec la réplication - Les jobs s'exécutent uniquement sur le principal - Conversion impossible depuis un AG traditionnelAjouter section Améliorations Parallel Redo SQL Server 2022
- Parallel Redo Thread Pool : Pool de threads partagé au niveau instance
- Parallel Redo Batch Redo : Traitement par lots des enregistrements de log contigus
- Élimination de la limite des 100 threads : L’ancienne limite n’est plus un plafond
- Nouvel algorithme de récupération parallèle : Attribution dynamique des workers
- Source : https://blog.sqlauthority.com/2023/05/26/sql-server-2022-thread-management-for-performance-improvement/
Ajouter section Link to Azure SQL Managed Instance
- Failover bidirectionnel (nouveauté SQL Server 2022)
- Support depuis CU10 pour créer un lien depuis Azure MI
- Hybrid failover benefit pour les coûts de licence
- Source : https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/managed-instance-link-feature-overview
Ajouter section Distributed Availability Groups
- Architecture et cas d’usage
- Cross-platform (Windows/Linux)
- Support REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT (SQL Server 2022)
- Incompatibilité avec Contained AG
- Source : https://learn.microsoft.com/en-us/sql/database-engine/availability-groups/windows/configure-distributed-availability-groups
Priorité MOYENNE
Compléter section évolutions SQL Server 2022 (ligne 139-145)
- La section actuelle est incomplète, ajouter les éléments ci-dessus
Mettre à jour section BAG (ligne 336)
- Préciser que les Contained AG fonctionnent aussi en édition Standard (Basic AG)
Compléter section Clusterless AG / Read-Scale AG
- Distributed Clusterless AG supporté depuis SQL Server 2022
- Avantages : complexité réduite, pas de dépendance réseau
- Inconvénients : pas de HA automatique, pas de health checks
- Source : https://www.sqlservercentral.com/articles/sql-server-2022-clusterless-distributed-availability-group
Ajouter section ADR et AG
- Temps de récupération réduits
- Impact sur le failover
- Considérations avec CDC et réplication transactionnelle
Compléter section Automatic Seeding (ligne 542)
- Reste mono-thread (limitation)
- Maximum 5 bases à la fois
- Compression via trace flag 9567
- T-SQL Snapshot Backup peut accélérer le seeding (SQL Server 2022)
Mettre à jour section « Histoire : le miroir » (ligne 12)
- Le mirroring est déprécié depuis SQL Server 2016
- Non supporté dans SQL Server 2022
- Doit être remplacé par BAG (Basic AG) en Standard Edition
- Source : https://learn.microsoft.com/en-us/sql/database-engine/deprecated-database-engine-features-in-sql-server-2022
Priorité BASSE
- Ajouter section Best Practices
- Configuration Resource Governor identique sur tous les réplicas
- Documentation des configurations Contained AG
- Utilisation de groupes de sécurité Active Directory pour les logins
Chapitre 06 - Mise en œuvre sur Linux
Fichier : 06-mise-en-uvre-sur-linux.adoc
Priorité MOYENNE
Ajouter section Support cgroup v2 (SQL Server 2022 CU20+)
- Détection et respect des contraintes cgroup v2
- Amélioration de la stabilité dans Docker/Kubernetes/OpenShift
- Réduction des erreurs OOM dans les environnements containerisés
- Source : https://learn.microsoft.com/en-us/sql/linux/sql-server-linux-editions-and-components-2022
Développer section Intégration Red Hat Enterprise Linux
- Rôle système RHEL pour SQL Server AG
- Intégration avec HA Cluster system role
- Support conjoint Microsoft/Red Hat
- Source : https://www.redhat.com/en/blog/automate-microsoft-sql-server-always-availability-groups-red-hat-enterprise-linux
Ajouter mention Contained AG sur Linux
- Les Contained AG sont supportés sur Linux avec les mêmes limitations
Compléter section Quorum (ligne 62)
- Expliquer l’absence de témoins dans Pacemaker et les alternatives
- Réplicas configuration-only
- Fencing matériel/logiciel
Ajouter mention Parallel Redo Thread Pool sur Linux
- Les améliorations du parallel redo s’appliquent aussi à Linux
Résumé des Priorités
Priorité HAUTE (15 tâches)
Impactant significativement la valeur du livre - À traiter en premier
- Contained Availability Groups - Chapitres 01 et 05
- Link to Azure SQL Managed Instance - Chapitres 01 et 05
- Améliorations Parallel Redo SQL Server 2022 - Chapitre 05
- Distributed Availability Groups - Chapitre 05
- ADR et HADR - Chapitres 04 et 05
- Cloud Witness Azure - Chapitre 03
Priorité MOYENNE (12 tâches)
Améliorations importantes
- WSFC Windows Server 2022 - Chapitre 03
- Dépréciation du Mirroring - Chapitre 05
- Support cgroup v2 Linux - Chapitre 06
- Sauvegarde S3-compatible - Chapitre 01
- Storage Spaces Direct - Chapitre 04
- Intégration RHEL - Chapitre 06
Priorité BASSE (8 tâches)
Pour information ou améliorations mineures
- Query Store secondaires - Chapitre 01
- Améliorations TDS 8.0 log shipping - Chapitre 02
- Pay-As-You-Go - Chapitre 04
- Best Practices AG - Chapitre 05
Sources Principales
- Microsoft Learn - Contained Availability Groups
- Microsoft Learn - Managed Instance Link
- Microsoft Learn - Query Store for Secondary Replicas
- Microsoft Learn - ADR Concepts
- Microsoft Learn - Distributed Availability Groups
- Microsoft SQL Server Blog - ADR Enhancements
- SQL Authority - Thread Management Improvements
- SQLHA - Contained Availability Groups
- SQL Server Central - Clusterless Distributed AG
- Microsoft Learn - Deprecated Features SQL Server 2022