JSS2014 – Infrastructure et Always-On

403 vues

Publié le

Session des Journées SQL Server 2014 - David Barbarin
---
Installer une infrastructure AlwaysOn c’est un peu comme un iceberg: en surface cela parait simple avec un wizard et sa suite de next, next, next …. en revanche la face cachée de l’iceberg réserve bien des challenges qu’il faut surmonter pour arriver à une infrastructure digne de ce nom. Je vous propose lors de cette session d’échanger sur les différentes problématiques rencontrées en clientèle que ce soit en implémentation mais aussi en exploitation

Publié dans : Données & analyses
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
403
Sur SlideShare
0
Issues des intégrations
0
Intégrations
6
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • On parlait des speakers, il y a une chose qui leur tient à cœur !
  • Cluster log
    Attention aux gaps présents avec Windows Server 2008 R2 – A collecter immédiatement le problème rencontré
    Possibilité d’utiliser l’option –UseLocalTime pour récupérer la date et heure au bon format
    Beaucoup d’informations
    Mots clés de recherche : <nom groupe de disponibilité>, [hadrag], [hadrag] Lease Thread terminated, [hadrag] Stopping Health Worker Thread,
    rcm::RcmApi::MoveGroup, has exceeded its restart limit, [NETFTAPI] Signaled NetftRemoteUnreachable,
    lost quorum, shutting down, Log Begin

    SQL Server error log
    Mots clés de recherche : RESOLVING, NOT AVAILAIBLE, Windows Failover Cluster, availability group, Quorum, Connection with primary database terminated,
    Connection with primary database terminated, Connection for availability group, lease

    Sessions d’événements étendues
    sp_server_diagnostics  information dans system_health + SQLDIAG (procédure exécutée depuis la dll de ressource via le resource control manager)
    AlwaysOn XE
  • Installer Windows cluster en mode Active directory-detached cluster :
    Windows Server 2012 R2
    Kerberos non supporté
    Authentification SQL Server conseillé

    CNO = Cluster Name Object
    VCO = Virtual Computer Object
  • MaxUserPort
     pour augmenter le nombre maximum de ports de connexion éphémères (5000 par défaut)
    TCP Chimmney
     pour décharger le traitement TCP (découpe et ré assemblement des paquets) depuis les processeurs vers les cartes réseaux qui le supportent (peut impliquer problème de performance)
  • Basculement inattendu
    Problème de ressources, redémarrage de service, redémarrage du serveur, crash du processus

    Basculement attendu mais non déclenché
    Problème de disque et qui concerne une base de données utilisateur
    Problème de connexion à l’AD
  • Etat de santé d’un groupe de disponibilité:
    Modèle de santé à 4 niveaux :
    Cluster (nœuds, quorum)
    Groupe de disponibilité
    Réplicas
    Bases de données
  • JSS2014 – Infrastructure et Always-On

    1. 1. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS
    2. 2. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS Infrastructure & AlwaysOn David Barbarin
    3. 3. #JSS2014 Merci à nos sponsors
    4. 4. #JSS2014#JSS2014 Les évaluations des sessions, c’est important !! …Et en plus on peut gagner des cadeaux http://GUSS.Pro/jss
    5. 5. #JSS2014 > whoami David Barbarin http://blog.devellopez.com/mikedavem david.barbarin@dbi-services.com @mikedavem Infrastructure at your Service www.dbi-services.com  Expertise  Training  FlexService (ISO 20000 certified)
    6. 6. #JSS2014 Installer, configurer et maintenir SQL Server AlwaysOn ? Un constat Pour certains … … en revanche pour d’autres
    7. 7. #JSS2014 Erreurs rencontrées Active directory / DNS Basculements inattendus / attendus Listener Multisubnet Journal des transactions Secondaires Kerberos Quorum 80% du temps passé pour 20% des problèmes Certains problèmes sont très chronophages
    8. 8. #JSS2014  Cluster  Windows log  Cluster log (attention au format UTC)  SQL Server  Fichiers en sortie d’événements étendues (system_health, AlwaysOn, SQLDIAG)  SQL Server error log  DMV concernant les groupes de disponibilités (sys.dm_hadr_*, sys.dm_availability_*)  Compteurs de performances (objets <instance>:Availability Replica, <instance>:Database Replica) Outils à disposition
    9. 9. #JSS2014 Architecture de démo SQL141 SQ142 SQL143 192.168.0.0/24 192.168.10.0/24 Weight : 1 Weight : 1 Weight : 1 Weight : 0 WINCLUST-01 RRAS
    10. 10. #JSS2014  Configuration du quorum  Perte de connectivité avec la ressource témoin  Comportement hasardeux à cause d’un antivirus  Configuration des exclusions antivirus pour le quorum  Choix du quorum important en fonction de la topologie (exclusion de nœuds, utilisation des poids de vote dynamique, ressource témoin etc..)  Choix du témoin (disque vs partage) Quorum
    11. 11. #JSS2014  Droit administrateur sur le CNO  Permissions liées au CNO sur les VCO (AD et DNS)  Validation du cluster (partie système)  Donner les permissions nécessaires ou préparer les objets d’ordinateurs dans l’active directory  Installer Windows cluster en mode «Active Directory-Detached Cluster» Permissions Active Directory / DNS Cluster admin CNO VCO
    12. 12. #JSS2014  Permissions dans l’active directory / DNS  Entrée dupliquée (AD ou DNS)  Conflit de port d’écoute > SQL port Listener port endpoint port  Analyse du message d’erreur depuis SSMS / console PowerShell  Analyse du problème côté Windows failover cluster – SQL Server  API du cluster pour créer le CAP (client access point) Création d’un listener
    13. 13. #JSS2014  Configuration de la topologie réseau  Timeout de connexion des applications vers les listeners  Validation du cluster (partie réseau)  Configuration des priorités et des routes statiques vers les différents sous- réseaux  Configuration spécifique des ressources réseaux (RegisterAllProviderIP et HostRecordTTL) et propriétés de connexion côté client (MultiSubnetFailover)  Clés de registres : MaxUserPort, TCP Chimmney Cas des architectures multi sous-réseaux
    14. 14. #JSS2014  Peut être causé par  Des sauvegardes du journal qui ne se ont plus correctement  Redo thread bloqué  Cause non déterminée ? …  Utilisation de la DMV sys.databases (colonne log_reuse_desc)  Trouver la cause du blocage du thread redo  Supprimer et joindre la base de données au groupe de disponibilité Grossissement du journal des transactions
    15. 15. #JSS2014  2 catégories de problème  Basculement inattendu (problème de ressources, redémarrage des services, du serveur, crash du processus sqlservr.exe, configuration de la police de basculement etc.)  Basculement attendu qui ne se produit pas (problème de disque, problème de connexion à l’active directory)  Analyse des différents logs associés aux groupes de disponibilités + cluster Basculements
    16. 16. #JSS2014  Synchronisation  Réplication en pause (intentionnel ou non après un basculement ASYNC)  Problème d’architecture asymétrique  Stress ou architecture lente (réseau / disques)  Erreur de connexion (erreurs 1418, 35250)  Autorisation des comptes de service sur les points de terminaison  Problème de firewall  Problème d’antivirus  Accès en lecture seule  Définition de routes en lecture seule absente ou mal définie  Mauvais paramètres au niveau de la chaîne de connexion (application intent, initial catalog)  Listener non joignable  Réplica non joignable Secondaires
    17. 17. #JSS2014  Configuration hétérogène des comptes de service  Absence des SPN (listener et réplicas en lecture seule)  Délégation désactivée  Chaque réplica doit posséder le même compte de domaine  Configuration et méthode de résolution classique d’une infrastructure Kerberos pour SQL Server (http://mikedavem.developpez.com/tutoriels/sqlserver/serveurs-lies- et-delegation-kerberos/)  Utilisation de Kerberos Configuration Manager for SQL Server Kerberos (double hop)
    18. 18. #JSS2014  http://technet.microsoft.com/en-us/library/dn466519.aspx  http://blogs.technet.com/b/timmcmic/archive/2009/04/26/windows-2008- multi-subnet-clusters-and-using-static-routes.aspx  https://support.microsoft.com/kb/2855417?wa=wsignin1.0  http://msdn.microsoft.com/fr-fr/library/ff878308.aspx  http://blogs.technet.com/b/askpfeplat/archive/2012/01/09/failover-cluster- communication-failures.aspx Références
    19. 19. #JSS2014 Questions / Réponses Merci à tous pour votre présence.
    20. 20. #JSS2014#JSS2014

    ×