Translate this site using Windows Live Translator:
Welcome to TechNet Blogs Sign in | Join | Help

La newsletter de Juin

L’année fiscale est terminée et tout repart à zéro mais pas nos incidents :-)

Beaucoup de nouveautés ont été livrées l’an passé (Windows Server 2008, Hyper-V, SCVMM, DPM, App-V, j’en passe et des meilleures) : beaucoup de changements dans le code, le comportement ou encore les fonctionnalités et une adoption rapide par nos clients ont fait de ces douze derniers mois une année riche en apprentissage !

Le contexte financier a bien provoqué quelques remous mais rien qui n’a entamé notre détermination à rester à fond de 5ème et continuer à assister nos clients !

Un changement important à venir pour nous : notre déménagement à Issy-les-Moulineaux vers le milieu du mois de Juillet. Un grand projet qui prend forme qui va certainement changer certaines de nos habitudes mais qui a le bénéfice de nous apporter des bureaux tout neufs et tout brillants à quelques encablures de la Seine :-)

En attendant, nous vous souhaitons une bonne lecture.

 

 

Bing

Effets d’annonces et budget énorme mais ambitions humbles, Bing est le nouveau moteur de recherche de Microsoft.

Les efforts consentis ont été bénéfiques. Dans sa version US, Bing est très pertinent ce qui semble se vérifier avec la croissance de son utilisation outre-atlantique.

Vivement que la version finale pour la France soit disponible !

 

 

Server Virtualization Validation Program - Support Policy Wizard

Comment déterminer rapidement la politique de support d’un produit Microsoft exécuté dans un environnement virtualisé.

Lien : Support Policy Wizard

image

 

 

Microsoft File Server Migration Toolkit

Cet outil permet de simplifier la migration ou la consolidation des serveurs des fichiers.

Lien : Microsoft File Server Migration Toolkit

clip_image002

 

 

Windows 7 approche, MDT2010 également !

Michael Niehaus a publié plusieurs bulletins présentant les nouvelles fonctionnalités de MDT 2010 (Microsoft Deployment Toolkit). Ayant joué un peu avec la Beta 2, il s’avère en effet qu’il y a quelques changements significatifs.

image

Liens :

MDT 2010 New Feature #1: Logging directly to the network

MDT 2010 New Feature #2: Gathering virtualization details

MDT 2010 New Feature #3: Suspend and resume a Lite Touch task sequence

MDT 2010 New Feature #4: Folders everywhere

MDT 2010 New Feature #5: Support for multiple deployment shares

MDT 2010 New Feature #6: Drag and drop

MDT 2010 New Feature #7: Boot image creation optimized

MDT 2010 New Feature #8: No more visible command windows when booting Lite Touch Windows PE

MDT 2010 New Feature #9: Copy and paste support in the Deployment Workbench task sequence editor

MDT 2010 New Feature #10: Detection of signed drivers

MDT 2010 New Feature #11: Windows 7 and Windows Server 2008 R2 support

MDT 2010 New Feature #12: USMT 4.0 hardlink support

MDT 2010 New Feature #13: New task sequence templates

MDT 2010 New Feature #14: Database improvements

Il y en aura certainement d’autres alors n’hésitez pas à consulter le blog de Michael Niehaus régulièrement : http://blogs.technet.com/mniehaus/default.aspx

 

 

Ce que peuvent faire les accélérateurs IE8 pour vous

Courte présentation des accélérateurs Internet Explorer 8 pour trouver plus rapidement ce que vous cherchez.


Accelerators in IE8 Help Save Time!

 

 

Hypervisor Functional Specification v2.0: For Windows Server 2008 R2

Document publié sous le cachet Microsoft Open Specification Promise et détaille les spécifications de la prochaine version de l’hypervisor Microsoft.

Lien : Hypervisor Functional Specification v2.0: For Windows Server 2008 R2

 

 

Un peu de nostalgie pour finir

L’histoire de Microsoft de 1975 à 1995 (pour le moment) en vidéo et avec Bill Gates.

Lien : The History of Microsoft

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Supportabilité du cluster Windows Server 2008

Parmi les nouveautés (ce ne sont plus vraiment des nouveautés à l’heure actuelle) apportées avec Windows Server 2008, l’outil de diagnostic Validate en est une qui laisse parfois dubitatif.

En effet, il est expliqué que les clusters n’ayant pas satisfait les deux critères suivants ne sont pas supportés :

  • Passage “réussi” de Validate sur chacun des noeuds (ou futurs noeuds) du cluster
  • Chaque composant (logiciel ou matériel) de chaque noeud (ou futur noeud) du cluster doit avoir été qualifié et disposer du logo “Certified for Windows Server 2008”

image

Mais alors, pourquoi un composant ne disposant pas du logo “Certified for Windows Server 2008” compromettrait la supportabilité de mon cluster alors que le passage de Validate n’indique aucune erreur ?

La réponse tient en deux points :

  • Garantie fonctionnelle : la qualification des composants apporte l’assurance que leur développement respecte le mode de fonctionnement du cluster Windows Server 2008
  • Garantie opérationnelle : le passage de Validate permet de s’assurer que le cluster respecte les meilleures pratiques et dispose d’une configuration adéquate pour assurer un fonctionnement optimal

La mise en place d’un cluster étant toujours déterminé par un besoin de haute disponibilité, la mise en place de ces nouveaux critères de supportabilité apportent une assurance plus importante sur ces plateformes critiques.

De plus, un cluster est énormément dépendant des composants tiers qui sont mis en oeuvre pour le faire fonctionner : SAN, cartes réseau, drivers de carte HBA, etc… Comme Microsoft n’est pas maître pour le développement de ces parties, nous nous devions d’offrir cette garantie supplémentaire.

 

 

Concrètement, qu’apporte cette nouvelle stratégie de support ?

 

 

Auparavant, par le biais de la HCL (Hardware Compatibility List), les constructeurs proposaient des “solutions” cluster, autrement dit des packages en bon français. L’ensemble était validé par chaque constructeur suivant les préconnisations de Microsoft.

Désormais, le niveau de validation n’est plus au niveau du cluster mais du composant. Il est donc possible de choisir des composants disparates pour construire son cluster. Tant que ces éléments disposent du logo “Certfied for Windows Server 2008”…

En allant plus loin, il est possible d’installer un cluster Windows Server 2008 avec des serveurs de marques différentes même s’il est toujours recommandé de garder une configuration homogène.

Pour trouver des composants certifiés : Windows Server Catalog (en Anglais)

 

 

Une fois remplis le critère de la qualification des éléments qui formeront un cluster, Validate apporte un avantage important par rapport à Windows Server 2003 consistant à s’assurer du fonctionnement du cluster et de tous les composants impliqués dans son fonctionnement avant son installation.

Pour avoir un point de comparaison, jusqu’à Windows Server 2003 lorsque l’on planifait la mise en place d’un cluster MSCS, la seule façon de savoir si un cluster fonctionnerait correctement était de créer ce cluster (avec tous les problèmes potentiels à résoudre pendant l’installation) puis de le tester en forçant des bascules de groupes et de ressources.

Depuis Windows Server 2008, en utilisant Validate, il est possible de vérifier avant la création du cluster si la plateforme matérielle et logicielle sélectionnée fonctionnera de manière optimale.

Principalement, cet outil permet d’identifier les problèmes de configuration réseau (adressage, connectivité, …) et stockage (zoning, pré-requis SCSI, …) de manière proactive et d’y remédier avant l’installation du cluster.

Si le rapport de validation ne présente que des feux vert alors le cluster fonctionnera de manière optimale.

Autrement, il faudra traiter les erreurs remontées. A ce sujet, chaque erreur identifiée est accompagnée de commentaires permettant d’en identitifer la cause.

image

 

 

Validate est un assistant de diagostic visant donc deux objectifs principaux :

  • Valider le fonctionnement de la “feature” Failover Clustering
  • Assurer le respect des critères “opérationnels” de la supportabilité du cluster

 

 

Validate, meilleures pratiques

 

 

Pour garantir la supportabilité d’un cluster dans le temps, il est recommandé (sinon requis) d’exécuter Validate à chaque fois qu’un changement est apporté au cluster (ajout d’un noeud, changement d’une carte HBA, …).

Les scénarios pour lesquels il est recommandé d’exécuter Validate sont identifiés ici : Understanding the validation tests required for your scenario (TechNet, en Anglais)

Au delà de la supportabilité, Validate peut également être utilisé pour diagnostiquer d’éventuels dysfonctionnement.

Grâce au rapport généré par cet outil, il peut être possible de mettre le doigt sur un problème de configuration qui permettra de corriger ce problème.

 

 

Ressources

 

 

Failover Cluster Step-by-Step Guide: Validating Hardware for a Failover Cluster (TechNet, en Anglais)

KB943984 - The Microsoft Support Policy for Windows Server 2008 Failover Clusters (en Anglais)

Windows Server Catalog (en Anglais)

Failover Cluster Configuration Program (en Anglais)

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments

Le cluster logging sous Windows Server 2008

J’ai déjà parlé ici du nouveau modèle de quorum de Windows Server 2008 ainsi que de certaines notions d’arbitrage des disques mais le mécanisme de logging du cluster a lui aussi beaucoup changé avec Windows Server 2008.

Au delà des différents journaux d’évènements qui présentent une vue synthétique et compréhensible des évènements, on se réfère encore beaucoup au fameux cluster.log.

Pour ceux qui n’ont jamais osé en ouvrir un, ce log est au format texte pur et dur avec des évènements au millième de seconde et beaucoup de mots incompréhensible sinon par les développeurs eux-mêmes.

Rébarbatif n’est pas un mot assez fort semble-t-il !

 

 

Avec Windows Server 2008, le cluster.log dans ce format n’existe plus. C’est désormais sur le moteur ETW que se repose le service cluster pour écrire ses évènements dans des logs un peu bizarres avec une extension .ETL.

ETW veut dire Event Tracing for Windows. Je ne vais pas m’étendre sur le sujet mais ce mécanisme existe depuis Windows Server 2003 et est de plus en plus utilisé par les développeurs de Windows pour inclure dans leur partie de code des fonctions permettant d’activer l’écriture d’évènements dans un log spécifique lorsque l’on a besoin de diagnostiquer un problème spécifique.

Quelques ressources sur le sujet :

Improve Debugging And Performance Tuning With ETW (MSDN Magazine en Anglais)

Event Tracing (MSDN en Anglais)

 

 

Revenons à notre cluster.log… Que puis-je faire des fichiers .ETL générés par le service cluster ?

En l’état pas grand chose. Mais en tapant la commande suivante depuis un prompt CMD en mode privilégié, on retrouve le cluster.log au format texte et donc largement plus exploitable (je me comprends):

CLUSTER LOG /G /COPY:"C:\TEMP"

Cette ligne de commande concatène tous les fichiers .ETL de tous les noeuds du cluster et les transforme en fichier texte.

Voilà le grand changement qui se devait d’être expliqué. Mais ce n’est pas tout…

 

 

En effet… maintenant que nous pouvons jeter un oeil au cluster.log, on peut parfois se rendre compte que certaines périodes ne sont pas couvertes dans ce log.

Quand on veut diagnostiquer un problème et que l’on a pas les évènements couvrant la période où a eu lieu ce dysfonctionnement, on peut être partagé entre l’énèrvement ou le fatalisme.

Pour ma part, c’est de la frustration.

 

 

Pourquoi cela peut-il arriver ? On s’attend à ce qu’un log serve justement à collecter tous les évènements, sans trou noir. C’est son rôle...

Il faut donc savoir quelques petits détails supplémentaires.

 

 

Le principe est le suivant :

  • Les évènements du service cluster sont écrits dans plusieurs fichier ETL qui sont soumis chacun au mode circular logging :
    • Ces fichiers sont présents dans le dossier %WINDIR%\System32\winevt\logs
    • Les fichiers .ETL sont nommés ClusterLog.etl.00x où x représente un incrément de 1
  • A chaque démarrage d’un nœud de cluster une nouvelle session de tracing est démarrée :
    • Cette session est liée à un fichier .ETL particulier, en l’occurrence le fichier  ClusterLog.etl.00x+1
    • Le nombre maximum de fichiers de tracing est 5 donc lorsque l’on atteint le 5ème log, le prochain redémarrage entrainera la conséquence que le logging s’écrira dans le premier fichier ETL, à savoir : ClusterLog.etl.001
  • Pendant une session de tracing, le logging est soumis à la taille maximum du cluster log qui s’applique au fichier ETL de la session en cours :
    • Si l’on atteint cette limite, le tracing continue d’écrire les évènements du service cluster mais écrit au début du fichier .ETL en cours par-dessus les évènements les plus anciens

Lorsque l’on génère le cluster.log au format texte, tous les fichiers .ETL sont pris en compte et concaténés pour former la trace complète

Donc, si, lors d’une session de tracing, la taille maximale du cluster log a été atteinte, le fichier au format texte aura des « trous » et manqueront des évènements

 

Exemple :

 

Session Fichier .ETL Démarrage du noeud Arrêt du noeud Atteinte de la taille maximale Perte
#1 clusterLog.etl.001 10/06 13/06 Non Aucune
#2 clusterLog.etl.002 13/06 17/06 15/06 Evènements du 14/06
#3 clusterLog.etl.003 17/06 22/06 19/06 Evènements du 18/06

 

Cet exemple assume que la taille maximale du cluster log est définie pour garder 72 heures d’évènements.

Lorsque l’on génère le cluster.log au format texte, nous aurons dans ce fichier les évènements suivants : {10/06 -> 13/06} {15/06 -> 17/06} {19/06 -> 22/06}.

Il manquera les évènements suivants du 14/06 et du 18/06 car les évènements de ces jours auront été écrasés car les sessions de tracing correspondantes (#2 et #3) auront duré plus de 72 heures (équivalent de notre taille maximale du cluster.log).

Vous trouverez des explications plus détaillées sur le logging cluster en suivant les webcasts ci-dessous :

Failover Cluster Validation and Troubleshooting with Windows Server 2008 (Level 300) (en Anglais)

Une version mise à jour pour Windows Server 2008 R2 (en Anglais)

 

 

Ce que l’on conseille de manière générale est de configurer le cluster log pour pouvoir détenir les évènements des dernières 72 heures. Ceci permet de récupérer les cluster logs suite à l’identification d’un problème même dans le cas où ce problème intervient au début du week-end et que celui-ci n’est détecté que le lundi suivant.

En ayant conscience de cela, la taille maximale du cluster log devra être calculée en fonction des éléments suivants pour permettre de pouvoir tracer tous les évènements dans la période de 72 heures:

  • Le ou les services ou applications mises en cluster : chaque service peut avoir une façon différente d’écrire des évènements
    • Verbosité des applications en cluster
    • Looks alive/is alive
  • Le niveau de verbosité du cluster log en lui-même (cluster log level)
  • La configuration du cluster et des ressources du cluster :
    • Configuration des ressources pour qu’elles s’exécutent dans des Resource Monitors distincts
    • Configuration des temps de polling
    • Configuration des thresholds de redémarrage des ressources et du service cluster en cas de défaillance
  • Le comportement des ressources et des nœuds : défaillance des nœuds, défaillance des ressources
    • Nombre de modifications apportées à la configuration du cluster dans la période des 72 heures

 

 

Pour déterminer la taille du cluster log il s’agit donc de superviser le cluster et les logs en situation de production pour identifier la taille convenable.

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Disk Arbitration et Persistent Reservations

Il n’y a pas eu de newsletter au mois de Mai pour cause de grosse charge et aussi peu d’informations interessantes à collecter.

En compensation, voici un bulletin traitant de la façon dont l’arbitrage des disques est assuré entre les noeuds d’un cluster. D’où le titre barbare…

 

 

Qu’est-ce que l’arbitrage des disques et à quoi cela sert-il ?

 

 

Tout d’abord, une notion très simple à laquelle on ne pense jamais.

Jusqu’à Windows Server 2003, il faut savoir qu’il n’existait aucun mécanisme au sein du système d’exploitation permettant d’indiquer quel serveur est le propriétaire d’un disque partagé. Lorsque l’on présente un disque à plusieurs serveurs Windows Server 2003, chacun d’entre eux va tenter de s’approprier le disque et y écrire des informations. Par conséquent, cela peut induire des corruptions sur ce volume.

En effet, lorsqu’un disque est présenté à un serveur, le périphérique va être détecté par le driver disk.sys puis par la pile de stockage jusqu’au Volume Manager afin d’être visible par le Disk Manager afin de le rendre utilisable pour les administrateurs. Aucun driver ni composant n’a pas la capacité de voir que le disque est déjà utilisé par un autre serveur…

Lorsque ces mêmes serveurs sont inclus dans un cluster, le principe est le même tant que ce disque n’est pas inclus dans le cluster en tant que ressource du cluster (Physical Disk).

 

Depuis Windows Server 2008, un nouveau mécanisme a été introduit pour passer tous les disques présentés et considérés comme non connus en mode protégé (autrement appelé le “mode SAN”). Il faut une opération manuelle pour que le disque soit utilisable, et cela sur le serveur depuis lequel on effectue cette opération. Ceci implique que le disque peut être présenté à plusieurs serveurs Windows Server 2008 sans dommage.

 

L’arbitrage des disques intervient au sein d’un cluster et permet d’assurer la cohérence de l’appartenance des disques entre les noeuds.

En clair, un mécanisme (décrit plus bas) permet de notifier aux noeuds du cluster si un disque est déjà utilisé par un autre noeud ou s’il peut être disponible car il est très important de se rappeler qu’une ressource cluster ne peut être détenue que par un seul noeud à un instant T.

 

 

Un peu d’histoire

 

 

Avec Windows Server 2003, l’arbitrage des disques repose sur une mécanique très simple qui consiste à envoyer des commandes SCSI visant à réserver ou libérer le disque. Ce mécanisme est appelé Challenge/Defense Protocol.

Ce mécanisme entre en oeuvre lorsqu’un noeud du cluster tente de s’approprier un disque partagé actuellement attribué à un autre noeud qui semble défaillant.

 

Les commandes SCSI utilisée sont les suivantes :

  • Reserve : lit et écrit sur le secteur 12 du disque partagé
  • Release : libère le disque partagé (dans le cas d’une mise offline de la ressource)
  • Reset : vise à casser la réservation en écrivant sur le secteur 12 du disque partagé

La commande Reset est particulière car elle peut être interprétée comme un reset de la LUN ou un reset du bus SCSI complet.

 

 

Dans le cadre du protocol de Challenge/Defense on parle de Successful Defense et de Successful Challenge ou en bon Français : Défense réussie et Challenge réussi.

 

Le principe d’une défense réussie est le suivant :

image

  1. Le noeud qui détient le disque envoie une commande SCSI Reserve toutes les 3 secondes
  2. Le noeud qui veut s’approprier le disque envoie une commande SCSI Reset toutes les 10 secondes
    1. 3 secondes pour que le propriétaire renouvele sa réservation et 2 secondes pour que le bus se réinitialise
    2. x2 pour donner au propriétaire deux chances de renouveler son bail
  3. Le noeud qui détient le disque continue d’envoyer ses commandes SCSI Reserve prouvant sa bonne santé
  4. La tentative d’appropriation par le challenger échoue donc

 

Le principe d’un challenge réussi est le suivant :

image

  1. Le noeud qui détient le disque envoie une commande SCSI Reserve toutes les 3 secondes
  2. Le noeud qui veut s’approprier le disque envoie une commande SCSI Reset toutes les 10 secondes
  3. Le noeud qui détient le disque n’envoie plus de commandes SCSI Reserve impliquant une défaillance
  4. La tentative d’appropriation par le challenger est donc réussie

 

La fiche technique suivante explique de manière plus détaillée ce mécanisme :

KB309186 - How the Cluster service reserves a disk and brings a disk online

 

Comme indiqué plus haut, la commande SCSI utilisé par le challenger peut se traduire dans certains cas par un bus reset. Ce qui pose problème si d’autres disques sont sur ce bus et présentés à d’autres serveurs.

En effet, ce qui peut se produire est que tous les disques soient désolidarisés de leurs propriétaires (que ce soient des serveurs Windows ou non) et causer des interruptions de service plus ou moins impactantes.

Cela survient bien sûr si la configuration du SAN est ainsi faite, en théorie les bus ne sont pas partagés.

Le mécanisme tel qu’il est connu avec Windows Server 2003 a donc été totallement modifié afin d’améliorer le fonctionnement de l’arbitrage au sein des clusters Windows.

 

 

Les Persistent Reservations

 

 

Windows Server 2008 introduit l’utilisation forcée des Persistent Reservations définies par le standard SCSI-3 SPC-3.

On ne parle plus de Challenge/Defense Protocol mais de Registration Defense Algorithm !

 

Le principe est le suivant :

Une table de réservation est maintenue par le SAN pour chaque LUN présentée. Cette table n’est pas exposée aux serveurs mais est mis en oeuvre sous la forme d’un “élément” virtuel au sein du SAN associé à chaque LUN. Je parle d’”élément” ne connaissant pas la terminologie des différents fabricants.

 

Cette table contient les informations d’enregistrement et de réservation de chaque HBAs a qui est présentée la LUN.

Chaque noeud ayant accès à la LUN disposera d’une entrée dans la table des enregistrements sous la forme d’une clé de 8 octects qui est générée sur chaque noeud. Le noeud disposant de la LUN verra sa clé dans la table des réservations comme schématisé ci-dessous :

 

Enregistrements

Réservations

Nœud 1 HBA1 Clé 1 Clé 1
Nœud 2 HBA1 Clé 2  

 

 

Le mécanisme d’arbitrage reprend alors ce que nous avons déjà vu plus haut.

 

Le principe d’une défense réussie est le suivant :

  1. Le noeud qui détient le disque a sa clé dans la table des réservations et vérifie toutes les 3 secondes que son entrée est toujours présente et qu’aucune nouvelle entrée n’est présente
  2. Le noeud qui veut s’approprier le disque envoie une demande d’enregistrement et une demande de réservation toutes les 6 secondes
    1. La demande d’enregistrement va s’effectuer
    2. La demande de réservation va échouer car il y a déjà une clé dans la table des réservations
  3. Dans son cycle de 3 secondes, le noeud qui détient le disque vérifie que sa clé est toujours présente dans la table des réservations
    1. Ce noeud s’aperçoit qu’il existe une nouvelle entrée dans la table des enregistrements
    2. Il supprime les informations qui ne le concerne pas dans la table des enregistrements
  4. Le noeud qui veut s’approprier le disque termine son attente de 6 secondes et tente de s’approprier le disque en inscrivant sa clé dans la table des réservations
    1. Cette tentative échoue car ce noeud ne dispose plus d’entrée dans la table des enregistrements

 

Le principe d’un challenge réussi est le suivant :

  1. Le noeud qui détient le disque a sa clé dans la table des réservations et vérifie toutes les 3 secondes que son entrée est toujours présente et qu’aucune nouvelle entrée n’est présente
  2. Le noeud qui veut s’approprier le disque envoie une demande d’enregistrement et une demande de réservation toutes les 6 secondes
    1. La demande d’enregistrement va s’effectuer
    2. La demande de réservation va échouer car il y a déjç une clé dans la table des réservations
  3. Du fait d’une défaillance, le noeud qui détient le disque ne vérifie pas que sa clé est toujours présente dans la table des réservations
    1. Ce noeud ne s’aperçoit donc pas qu’il existe une nouvelle entrée dans la table des enregistrements
    2. Et il ne supprime pas les informations qui ne le concerne pas dans la table des enregistrements
  4. Le noeud qui veut s’approprier le disque termine son attente de 6 secondes et tente de s’approprier le disque en inscrivant sa clé dans la table des réservations
    1. Cette tentative réussie car ce noeud dispose de son entrée dans la table des enregistrements
    2. Ce noeud supprime les informations qui ne le concerne pas dans la table des enregistrements

 

 

Peut-on dire que nous n’aurons plus de problèmes d’arbitrage de disques ?

Malheureusement il y a quelques cas où l’on peut avoir des comportements non souhaités… Même si c’est une amélioration énorme, les noeuds envoient des commandes standard SCSI 3 qui sont interprétées par le SAN, il s’avère que dans certaines situations, les persistent reservations posent problème.

C’est extrêmement rare mais dans la situation ou la connectivité entre le SAN et les noeuds d’un cluster est interrompue abruptement (crash des serveurs, ou pire…), au redémarrage de ces serveurs il apparaît que les persistent reservations ne sont pas “purgées” et les noeuds ne parviennent pas à prendre possession des disques et donc le service cluster ne parvient pas à démarrer.

Comme je l’ai dit c’est rare mais cela arrive… et c’est largement mieux que le Challenge/Defense Protocol !

 

 

Ressources

 

KB947710 - Parallel SCSI support in Windows Server 2008 Failover Clusters has been removed

Understanding Cluster Validation Tests: Storage (TechNet en Anglais)

 

 

Guillaume

Windows Core – Support Escalation Engineer

Posted by GuillaumeD | 1 Comments
Filed under: ,

La newsletter d’Avril

Un mois bien chargé se termine. Chargé en terme d’actualité mais aussi en terme de travail… Cela n’a pas empêché la collection de petites ou grandes nouvelles durant ce mois d’Avril.

Bonne lecture !

 

La nouvelle loi de Moore

Une réflexion intéressante sur la loi de Moore et la tendance actuelle à multiplier les cores en stabilisant la fréquence des processeurs.

Lien : The New Moore’s Law

 

Support de NUMA par Windows 7 et Windows Server 2008 R2

NUMA ou Non-Uniform Memory Access (voir une définition sur Wikipedia), est une architecture matérielle peu fréquente en entreprise (du moins ayant une vocation commerciale).

Cependant, cette architecture est dors et déjà supportée par les plateformes Windows existantes.

Pour Windows Server 2008 R2, le lien suivant n’est pas définitif et fera parti de la documentation du SDK Windows.

Lien : New NUMA Support with Windows Server 2008 R2 and Windows 7

Lien : Windows Server 2008 - Dynamic Hardware Partitioning

 

Disponibilité de !exploitable Crash Analyzer

Déjà annoncé le mois dernier, cet outil est désormais disponible. !exploitable Crash Analyzer est une extension du debugger (WinDbg) qui fournit une analyse automatique des crashes et une évaluation des risques d’une application. Cet outil regroupe les exceptions similaires et permet d’en classifier l’exploitabilité.

Lien : !exploitable Crash Analyzer - MSEC Debugger Extensions

Dimensionnement de votre plateforme Hyper-V

Téléchargeable sur le site de HP, cet outil permet de déterminer le dimensionnement visant à consolider les serveurs physiques.

Ne concerne que des solutions HP mais intéressant tout de même.

Lien : HP Sizing and Configuration Tool for Microsoft Hyper-V

image   image image

Anticipez Windows Server 2008 R2

Afin d’évaluer les nouvelles fonctionnalités de la prochaine version de Windows Server, n’hésitez pas à visiter cette url.

Lien : Windows Server 2008 R2 Resources

Une bonne grosse station de qualification ou de développement

Passez-moi l’expression mais c’est énorme. A peine sorti, le Xeon 5500 est déjà annoncé chez Dell et HP embarqué dans des stations de travail. Et quelles stations de travail !

La machine absolue du geek !

Apple et Lenovo se dotent aussi de matériel s’appuyant sur le nouveau modèle d’Intel.

Dell Precision T7500 HP Z Workstation MacPro Lenovo ThinkStation D10

Lien : Dell Precision T7500

Lien : HP Z Workstations

Lien : Apple MacPro

Lien : Lenovo ThinkStations

 

Les serveurs ne sont pas en reste

Toujours à propos du Xeon 5500, la gamme serveurs des constructeurs s’étoffe également.

Lien : IBM System x iDataPlex

Lien : Dell PowerEdge R710

Lien : HP ProLiant DL370 G6 Server series

Microsoft Virtualization Solution Accelerators

Lien : Microsoft Virtualization Solution Accelerators

Lien : Hyper-V Security Guide (final)

 

Hyper-V health model

Ou comment troubleshooter Hyper-V. Le référencement des events ID remontés par Hyper-V.

Lien : Hyper-V health model

 

Le dernier rapport de sécurité Microsoft

Lien : Microsoft Security Intelligence Report volume 6 (July - December 2008)

 

L’usage de la virtualisation par Microsoft et VMware

Dans la newletter précédente, j’avais déjà mis un pointeur vers le document décrivant comme l’IT de Microsoft avait mis en oeuvre la virtualisation.

Vous trouverez ici les points marquants pour les deux sociétés. A noter que Microsoft IT n’a fait part que de l’état du parc virtualisé avec la V1 de Hyper-V… Attendons, que Windows Server 2008 R2 soit déployé et je gage que le ratio de machines virtualisées augmentera de manière significative !

Lien : How Microsoft and VMware use virtualization internally

Et on reparle du teaming

Suite au différents bulletins précédents, voici deux nouvelles sources d’informations pour configurer la partie réseau sur un hôte Hyper-V.

Lien : Dell™ Networking Solutions Guide for Microsoft® Hyper-V™

Windows Live SkyDrive

Le 14 avril, l’équipe en charge de Windows Live SkyDrive a annoncé quelques nouveautés : arranger vos photos pour qu’elle s’affichent dans l’ordre souhaité pendant un slideshow (avec SilverLight, il est possible de le faire en glissant/déposant les images), migration des Live Favorites vers Live SkyDrive.

Lien : SkyDrive adds new features!

slideshow

Les prochaines versions d’Exchange Server, SharePoint et Office

La beta d’Exchange 2010 est disponible au téléchargement. Sur le blog officiel de l’équipe SharePoint a été également annoncé la nouvelle version de SharePoint.

Il faudra attendre un peu pour la nouvelle version d’Office.

Lien : Exchange 2010

Lien : Microsoft SharePoint “14” is now Microsoft SharePoint 2010

Home

Microsoft Hyper-V Server 2008 R2

Zane Adams (Senior Director Virtualization) se fend d’un billet sur le blog officiel de l’équipe virtualisation pour annoncer les disponibilités de la fonctionnalité Failover Cluster sur Microsoft Hyper-V Server et incidement la capacité de mettre en oeuvre Live Migration sur cette plateforme gratuite.

Lien : Live Migration and Host Clustering available at no charge in Microsoft Hyper-V Server 2008 R2

Téléchargement : Microsoft® Hyper-V™ Server 2008 R2 Beta

Microsoft Hyper-V Server 2008

 

Quelques publications sur Hyper-V

J’ai déjà commandé mon exemplaire !

Lien : Windows Server® 2008 Hyper-V(TM) Resource Kit (PRO - Resource Kit)

Lien : Windows Server 2008 Hyper-V: Insiders Guide to Microsoft's Hypervisor

 

Fix It Solution Center

Le sujet à déjà été abordé sur ce blog, mais désormais FixIt dispose de son centre de ressources.

Lien : http://support.microsoft.com/fixit#tab0

Windows XP Mode et Windows VirtualPC pour Windows 7

Annonce loin d’être annodine… Windows XP Mode et Windows VirtualPC risquent d’être deux fonctionnalités majeures de Windows 7. Imaginez pouvoir exécuter des applications dans un contexte Windows XP ou encore voir ses machines virtuelles intégrées dans Windows… Je n’en dit pas plus, ces deux “add-ons” seront largement décrits bientôt…

Lien : Coming Soon: Windows XP Mode and Windows Virtual PC

Office 2007 Service Pack 2

On en dit que du bien ! Notamment pour ce gourmand d’Outlook. A noter également l’intégration des formats OpenDocument et PDF (plus besoin d’add-on).

Lien : KB953195 - Description of 2007 Microsoft Office Suite Service Pack 2 (SP2) and of Microsoft Office Language Pack 2007 SP2

Microsoft Online Services ouvert aux clients Français

Depuis le 24 Avril, vous pouvez souscrire à l’un des services d’hébergement proposé par Microsoft.

A savoir :

  • Exchange Online
  • SharePoint Online
  • Office Live Meeting
  • Office Communications Online

Lien : Microsoft Online Services

WIM2VHD

Vous ne connaissez pas cet outil ? Alors n’hésitez pas à jeter un oeil sur ces possibilités. Tout simplement : créez des VHDs sysprepés de Windows 7.

Lien : Windows(R) Image to Virtual Hard Disk (WIM2VHD) Converter

Vidéo :

 

 

Windows Server 2008 with Service Pack 2

Le Service Pack 2 est RTM. Bientôt disponible à tous.

Lien : Windows Server 2008 Service Pack 2

Lien : Things to know about Windows Server 2008 Service Pack 2 and Windows Vista Service Pack 2

Parcourez TechNet et MSDN plus rapidement

Pour ceux qui disposent d’un accès à internet limité, cela peut se révéler utile !

image

Et… Windows 7 Release Candidate

Tout le monde en parle, tout le monde spéculait sur sa mise à disposition, bref on l’attendait avec impatience. La Release Candidate de Windows 7 est disponible aux abonnés MSDN et TechNet depuis le milieu de l’après-midi.

Pour le grand public, il faudra attendre le 5 Mai…

En attendant, un blog incontournable à lire et relire (avec abnégation parfois) : Engineering Windows 7 et un nouveau site web : Talking about Windows.

En parlant de Windows 7, faites part de votre expérience !

Un site permet de reporter les incompatibilités logicielles avec Windows 7. Si vous utilisez un logiciel qui ne fonctionne pas correctement sous Windows 7, vous pouvez remonter cette information pour que nous puissions aider à régler ce problème. Encore une belle initiative pour rendre Windows 7 encore plus utilisable dès sa sortie.

Lien : Windows 7 Applications et Compatibilité

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Rollup System Center DPM 2007

C’est le mois du rollup ! Après SCVMM et VirtualPC, c’est au tour de Data Protection Manager.

Et celui-ci est copieux : pas moins de 14 dysfonctionnements corrigés et non des moindres.

S’y intéresser de près :

KB968579 - Description of the hotfix rollup package for System Center Data Protection Manager 2007: April 14, 2009

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: , ,

Rollup pour Virtual PC 2007 Service Pack 1

Après la mise à disposition de Virtual PC 2007 Service Pack 1, voici un rollup apportant le support de trois nouvelles éditions de Windows en tant qu’OS virtualisé mais aussi deux nouvelles éditions de Windows sur lesquelles Virtual PC 2007 SP1 est supporté.

Ce rollup apporte également des améliorations et des corrections.

La liste est conséquente et je vous engage à la consulter :

KB958162 - Description of the hotfix rollup package for Virtual PC 2007 Service Pack 1: February 20, 2009

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Rollup SCVMM 2008

Un bon point pour l’équipe qui délivre les correctifs System Center Virtual Machine Manager : un rollup est désormais disponible.

Il addresse un certain nombre de dysfonctionnements :

  • Lors de la migration de machine virtuelles VMware, les pools de ressources associées aux machines virtuelles sont modifiés
  • Les machines virtuelles hébergées au sein d’un cluster Windows Server 2008 Hyper-V ont un statut “Configuration cluster non supportée” si l’un des noeuds du cluster n’est pas joignable ou a été redémarré
  • Les disques différentiels sont perdus dans les conditions suivantes :
    • Après la migration d’une machine virtuelle provenant de Virtual Server
    • Plusieurs machines virtuelles partagent le même disque virtuel parent
  • Le statut de l’agent SCVMM n’est pas mis à jour sur les noeuds d’un cluster Windows Server 2008
  • Les machines virtuelles hébergées au sein d’un cluster Windows Server 2008 Hyper-V ont un statut “Configuration cluster non supportée”  si le cluster a une ressource de type MSCluster_Property_Resource_Cluster_Extension_XP_Type (typiquement utilisé par les solutions logicielles de réplication de stockage)
  • Lors de l’ajout d’un serveur Virtual Center en utilisant un compte membre du groupe Enterprise Admins, le message suivant est affiché :
    Error (2951) Virtual Machine Manager cannot complete the VirtualCenter action on server servername.domainname.com because of the following error: Login failed due to a bad username or password. (InvalidLogin).
  • Le rollup inclut également le correctif décrit dans la fiche technique suivante :

La fiche technique de ce rollup :

KB961983 - Description of the hotfix rollup package for System Center Virtual Machine Manager 2008: April 14th, 2009

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: , ,

Correctifs recommandés pour SCVMM 2008

Tout comme il l’est fait pour le cluster, un article KB est désormais disponible pour référencer les correctifs recommandés pour System Center Virtual Machine Manager 2008.

Cette fiche liste également les correctifs requis et recommandés pour les hôtes Hyper-V gérés par SCVMM.

 

 

KB962941 - Recommended hotfixes for System Center Virtual Machine Manager 2008

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: , , ,

La gestion de la délégation d’administration de machine virtuelle au sein d’un cluster Hyper-V

Suite au bulletin traitant du sujet, Jean-Philippe a élevé un peu le débat en abordant les aspects d’un cluster Hyper-V.

Vous trouverez donc dans le bulletin suivant une méthode permettant d’assurer une gestion de la délégation pour un cluster.

 

La gestion de la délégation d’administration de machine virtuelle au sein d’un cluster Hyper-V

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Le quorum et le cluster

Le rôle du quorum au sein d’un cluster est souvent mal compris et peut mener à la mise en place d’une configuration éronée, surtout avec Windows Server 2008 où un nouveau modèle est disponible.

Tout d’abord, la définition du quorum dans son sens commun (Définition d’un quorum) :

“ En droit, le quorum est le nombre minimum de membres d'un corps délibératif nécessaire à la validité d'une décision. C'est souvent la moitié des membres, mais beaucoup d'entités ont un prérequis plus bas ou plus haut.

Lorsque le quorum n'est pas atteint, le corps délibératif ne peut pas tenir de vote et ne peut pas changer le statu quo. Ainsi, les votants en faveur du statu quo peuvent bloquer une décision en ne se présentant pas au vote. Le vote sera alors automatiquement rejeté et le statu quo conservé.

Dans un corps législatif, le quorum est habituellement la majorité des membres de l'entité y compris les postes vacants. Bien des corps ne prennent pas en compte le quorum à moins qu'une question ait été soumise à l'ordre du jour (par exemple un amendement). “

 

Il faut donc retenir les notions de “votants” et de “majorité” pour bien comprendre le rôle du quorum au sein du cluster.

 

 

Qu’est-ce que le quorum et a quoi sert-il ?

 

 

Il est fréquent de voir appeler “quorum” le disque utilisé pour stocker la configuration du cluster. C’est en partie vrai.

Dans un cluster configuré avec un disque quorum, ce disque joue le rôle d’arbitre.

Dans un cluster sans dique quorum, le quorum au sein d’un cluster représente l’ensemble des votants permettant d’assurer la continuité de fonctionnement du service cluster et la cohérence ce celui-ci. Je développe plus tard cet aspect de continuité de fonctionnement.

Une nuance cependant, avec Windows Server 2008, un modèle de quorum inclut le disque quorum comme votant.

 

 

En ce qui concerne son utilité, le quorum a trois rôles très simples :

  1. Fournir un moyen d’arbitrer l’appartenance au cluster


    Lors du démarrage d’un noeud, celui-ci utilise une copie de la configuration du cluster présent en local pour identifier les autres membres du cluster. Un mécanisme de sponsoring permet alors au noeud en cours de démarrage de se joindre ou non au cluster. Si ce serveur est sponsorisé par un noeud déjà démarré et si le cluster est fonctionnel, alors il récupère une copie récente de la configuration du cluster (on appelle cette action un JOIN).

  2. Aider à maintenir la cohérence du cluster


    C’est le rôle le plus important du quorum. Dans un scenario de split-brain, le quorum est utilisé pour garantir que les ressources partagées ne soient montées que sur un seul noeud. Le quorum est utilisé comme un tie-breaker dans ce scénario. Voir plus bas ce qu’est un split-brain.

  3. Fournir un moyen de stocker la configuration du cluster


    Au sein d’un cluster, chaque noeud doit disposer d’une vue consistante de la configuration du cluster. Cela est rendu possible par la mise à disposition par le quorum de la configuration du cluster stockée dans le quorum log.

 

 

Qu’est-ce que le quorum log ?

 

 

Le quorum log est une base de données contenant la configuration du cluster :

  • Les serveurs faisant parti du cluster
  • Les ressources installées et partagées
  • L’état des ressources partagées

Le quorum log est stocké par défaut dans \MSCS\quolog.log.

 

 

Qu’est-ce qu’un split-brain ?

 

 

Mot à mot, l’expression “split-brain” peut se traduire par “cerveau-scindé”. Hum… pas encore tout à fait clair…

Imaginons que le cluster soit un corps humain et que les membres du cluster (les noeuds) soient les lobes du cerveau.

Imaginons que ces lobes ne communiquent plus. On peut s’attendre à ce que le corps ne réagisse plus vraiment correctement, les ordres venant distinctement des deux lobes qui ne se synchronisent plus, et menant donc à quelque catastrophe…

Dans le cas d’un cluster, un split-brain intervient lorsque les liens réseau entre deux ou plusieurs noeuds subissent une défaillance. Le cluster est alors scindé en une ou plusieurs partitions qui ne peuvent plus communiquer entre elles.

 image

Dans ce cas de figure, la partition détenant le quorum (le noeud 1 dans cet exemple) est seule autorisée à continuer à fonctionner. La seconde partition (le noeud 2) devra s’arrêter.

Le but de ce fonctionnement ? Eviter que plusieurs noeuds ne pouvant plus se “concerter” effectuent des opérations sur les ressources partagées menant à une inconsistence du service en cluster.

Exemple : un cluster Exchange est hébergé dans un cluster 2 noeuds. Le noeud 1 détient le quorum, le noeud 2 détient les ressources Exchange (les bases de données).

  • Si le noeud 2 vient à perdre la communication avec le noeud 1 alors le noeud 2 va tenter de prendre l’ownership sur le quorum. S’il n’y parvient pas, le service cluster sur le noeud 2 va s’arrêter de lui-même car il va se considérer en mauvaise santé et donc incapable d’assurer son rôle.
    Le noeud 1 tentera alors de récupérer les ressources détenues par le noeud 2 et les remettres en service.
  • Si le noeud 2 parvient à prendre l’ownership du quorum, alors c’est que le noeud 1 subit une défaillance. C’est alors le noeud 1 qui, s’il n’est pas déjà arrêté ou hors d’état de fonctionner, qui va arrêter le service cluster.
  • Enfin, si ni le noeud 1 ni le noeud 2 ne parviennent à prendre l’ownership du quorum, alors le cluster est arrêté sur les deux noeuds.

Ces opérations visent à laisser la ressource en cluster sur un seul noeud. On ne peut avoir deux instances du même service fonctionner sur un réseau.

 

 

Vous me direz : mais pourquoi un noeud s’arrête t’il de lui-même si c’est le réseau qui a un problème ? Et bien, le noeud n’en sait rien. Il agit de manière proactive en constatant qu’il ne détient pas le quorum.

Et après tout, un problème réseau peut être causé par une défaillance de la carte réseau, d’un changement de configuration IP, sous Windows Server 2003 le service RPC ne répond plus, …

Bien sûr la réalité est un peu plus compliquée, il y a d’autres mécanismes que je n’ai pas détaillé ici qui entrent en jeu et qui complexifient la donne. Mais le principe est là.

Par exemple le cas où le cluster met en oeuvre plus de 2 noeuds. Dans ce cas, la notion de majorité est encore plus forte. La partition détenant le plus de votants est maintenue.

 

 

Les modèles de quorum

 

 

Disk Only

Dans ce modèle, seul le disque partagé dit “quorum” dispose d’un vote. Je lui attribue plutôt un rôle d’arbitrage.

Le cluster continue de fonctionner si au moins un noeud accède au disque quorum.

Cette configuration n’est généralement pas recommandée sous Windows Server 2008 et si ce modèle est toujours disponible, c’est… pour les nostalgiques !

image

Disk and Node Majority

Ce modèle a été intorduit avec Windows Server 2008. Le cluster dispose de trois votants : les deux noeuds et le disque quorum.

Le cluster continue de fonctionner si au moins deux votants sont fonctionnels.

image

Node Majority

Ce modèle de quorum entre en jeu lorsque le cluster est composé d’au moins trois noeuds et sans stockage partagé.

Pour que le cluster continue de fonctionner, il est nécessaire d’avoir une majorité de votants fonctionnels.

image

Node and File Share Majority

Le dernier modèle de quorum est implémenté lorsque qu’il n’y a pas de stockage partagé.

Il s’appuie sur les votants (les noeuds du cluster) et un témoin (un partage sur un serveur qui n’est pas un noeud).

Le cluster continue de fonctionner si la majorité des votants ET le témoin sont fonctionnels.

 

 

image

 

 

Le cas particulier du quorum sans disque partagé

 

 

Dans les configurations Node Majority et Node and File Share Majority, la configuration du quorum est stockée sur chaque noeud du cluster sur le disque système.

La consistence du réplica (le quorum log) sur tous les noeuds est assurée par le témoin (le File Share Witness) ou pas le cluster lui-même qui détermine qu’une modification est considérée comme permanente dès lors que cette configuration est présente sur la moitié des noeuds.

 

 

Comment choisir le modèle de quorum adéquat

 

 

Deux éléments sont à prendre en compte pour choisir le modèle de quorum :

  • La présence ou non de stockage partagé : SAN ou iSCSI / cluster local ou géographique
  • Le nombre de noeuds défaillants tolérés avant arrêt total du cluster

1ère étape : choix en fonction du stockage et de la répartition des noeuds

 

Disk Only

Disk and Node Majority

Node Majority

Node and File Share Majority

Avec stockage partagé

X

X

 

 
Sans stockage partagé

 

 

X

X

Cluster local

X

X

X

X

Cluster géographique

 

 

X

X

2nde étape : choix en fonction de la tolérance aux défaillances (sans stockage partagé ni File Share Witness)

Nombre de noeuds (N)

Nombre de votants (V)

Tolérance aux défaillances : (V-1)/2

2

2

0

3

3

1

4

4

1

5

5

2

6

6

2

7

7

3

8

8

3

3ème étape : choix en fonction de la tolérance aux défaillances (avec stockage partagé ou File Share Witness)

Nombre de noeuds (N)

Nombre de votants (V)

Tolérance aux défaillances : (V-1)/2

2

3

1

3

4

1

4

5

2

5

6

2

6

7

3

7

8

3

8

9

4

 

 

Le piège a éviter

 

 

Prenons le cas d’un cluster Exchange sept noeuds configuré suivant le modèle Disk and Node Majority.

Sur ce cluster, quatre instances d’Exchange sont actives et trois noeuds sont passifs.

image

Si vous avez bien suivi, et si j’ai été clair, combien de votants peuvent subir une défaillance sans que cela n’impacte :

  1. Les quatre instances actives ?
  2. Le cluster dans son ensemble ?

La réponse à la première question est : les quatre instances Exchange restent fonctionnelles tant qu’un maximum de trois votants subissent une défaillance

La réponse à la seconde est : le cluster dans son ensemble reste fonctionnel tant qu’un maximum de trois votants subissent une défaillance

 image

Jusque là tout va bien… mais en allant un peu plus loin, on peut dire que cette configuration amène un risque.

Pourquoi ? Il suffit qu’un votant supplémentaire subisse une défaillance pour que le cluster dans son ensemble ne fournisse plus le service qu’on attend de lui.

Et en l’occurence le risque vient du disque quorum. Si ce disque vient aussi à subir une défaillance alors la majorité n’est pas atteinte au sein du cluster. Le service cluster sera donc arrêté sur les noeuds fonctionnels afin d’éviter une inconsistance sinon de plus graves dommages au niveau du cluster et surtout de l'application en cluster.

image

Que faut-il tirer de cet exemple ?

Une recommandation très simple : toujours avoir un nombre impair de votants.

 

 

Conclusion

 

 

En définitive, la configuration du quorum dépend d’un certain nombre de facteurs dont le plus important est celui visant à déterminer le nombre de défaillances tolérées.

Dans la pratique, sur des clusters mettant en oeuvre plus de deux noeuds, une stratégie de secours doit être définie pour palier à la loi de Murphy. Cette stratégie s’inclut dans un plan de DRP (Disaster Recovery Plan) et la plupart du temps, implique la présence d’un cluster de secours ou tout au moins de procédures visant à remettre en service l’application en cluster le plus rapidement possible.

 

 

Ressources

 

 

Quelques ressources en anglais (les traductions restent parfois aléatoires) :

Failover Cluster Step-by-Step Guide: Configuring the Quorum in a Failover Cluster

Understanding Quorum Configurations in a Failover Cluster

Details of How Quorum Works in a Failover Cluster

Additional Information About Quorum Modes

Quorum resource

Troubleshooting Quorum Resource Problems

KB309186 - How the Cluster service reserves a disk and brings a disk online

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 2 Comments
Filed under: ,

La newsletter de Mars

Dans cette seconde édition, encore une fois des informations compilées au fil du mois dont certaines sont déjà un peu tièdes mais où d’autres sont à peine sorti du four sinon pas encore révélées…

Beaucoup de virtualisation (oh… encore ?) mais aussi une petite touche de Windows 7 et de debugging sans compter l'interview de Bernard Ourghanlian.

Bonne lecture !

 

 

NVidia et AMD met à disposition des drivers pour Windows 7

Lien : Drivers NVidia pour Windows 7

Lien : Drivers ATI Catalyst pour Windows 7

 

 

Les solutions d’hébergement de services de Microsoft

Concrétisation de l’offre “Software+Services”, Microsoft Online Services est là !

Les services proposés sont pour le moment Exchange Online, SharePoint Online, Office Live Meeting ou Office Communication Online. Un beau début !

Lien : Microsoft Online Services

Lien : pour les partenaires

image

 

 

Référence sur TCP/IP

Un peu de litérature sur les clés de registre concernant TCP/IP pour Windows Vista/Windows Server 2008

Lien : TCP/IP Registry Values for Microsoft Windows Vista and Windows Server 2008

 

 

Hypervisors benchmark

Dans un secteur où le benchmarking reste très délicat à mettre en oeuvre (A Big Step Backwards for Virtualization Benchmarking, Benchmarks: ESX vs Hyper-V vs XenServer), voici un comparatif montrant les performances des hypervisors de VMware (ESX), Citrix (XenServer) et Microsoft (Hyper-V), où l’on peut se figurer les différences de ces trois produits en fonction de la façon de les utiliser.

Le bench est relativement simple et, à mon sens ne montrant pas un bénéfice évident, mais il a l’intérêt de présenter tout le contexte des tests exécutés.

Lien : Lab Experiment: Hypervisors

 

 

Hyper-V Security Guide

Disponible en beta sur Connect, ce document aborde les aspects de hardening, de délégation d’administration et de protection des machines virtuelles.

Lien : Hyper-V Security Guide (nécessite un LiveID)

 

 

Dynamic Data Center Toolkit

Bien qu’encore un peu pauvre en contenu ce site a (ou aura) le mérite d’adresser les problématiques de déploiement, d’administration, de maintenance et de haute disponibilté d’un data center.

A suivre donc…

Lien : Dynamic Data Center Toolkit

 

 

Disponibilité de la beta de SCVMM 2008 R2

Disponible sur Connect.

Lien : SCVMM 2008 R2 Beta

 

 

Un nouveau compétiteur dans le monde de la virtualisation ?

Cisco vient d’annoncer une nouvelle solution (ou gamme de produits) appelée Cisco Unified Computing System permettant de rationnaliser les aspects réseau, computing, stockage, gestion.

Lien : Cisco Unleashes the Power of Virtualization with Industry's First Unified Computing System

L’annonce de Microsoft : Microsoft Partners With Cisco on New Unified Computing System

 

 

Hyper-V Planning and Deployment Guide 1.2

Lien : Hyper-V Planning and Deployment Guide

 

 

Le futur du déploiement du poste de travail

Où Bernard Ourghanlian livre quelques projections (retenons bien ce terme, car à ce jour un certain nombre des sujets abordées en sont encore à l’état d’étude) sur la virtualisation d’applications et du poste de travail, Hyper-V v3, Windows 8, les évolutions des processeurs, bref un paquet de choses intéressantes !

Lien : Il faut complètement repenser le déploiement du poste de travail - 1ère Partie

Lien : Il faut complètement repenser le déploiement du poste de travail - 2ème Partie

Lien : Il faut complètement repenser le déploiement du poste de travail - 3ème Partie

 

 

Internet Explorer 8 RTM

Disponible uniquement pour Windows XP, Windows Server 2003, Windows Vista et Windows Server 2008.

Lien : Internet Explorer 8: Home page

Téléchargement : téléchargement

 

 

Antivirus pour Windows 7

Une liste d’antivirus sur le blog de Stanislas Quastana.

Lien : Antivirus pour Windows 7 - Mise a jour de la liste

 

 

Une extension du debugger pour identifier les problèmes potentiels d’une application en développement

Lien : !exploitable Crash Analyzer – MSEC Debugger Extensions

Lien : Présentation PowerPoint

 

 

Les webcasts des Microsoft TechDays 2009 disponibles

techdays09

Lien : Webcasts TechDays 2009

 

 

Comprendre la virtualisation

Vaste thème… mais voici 500 pages traitant de tous les aspects de la virtualisation : Hyper-V, MEDV, App-V, SCVMM.

Ce document est téléchargeable après identification avec votre LiveID.

Lien : Understanding Microsoft Virtualization Solutions

Understanding Microsoft Virtualization Solutions

 

 

Linux Mouse Integration Components pour SUSE disponibles

La prise en charge de la souris dans une machine virtuelle est donc effective sur les distributions SLES 10 SP2, x86 et x64.

Lien : Citrix Project Satori

 

 

Représentation graphique de l’utilisation des ressources sur un hôte Hyper-V

Outil intéressant pour ceux qui cherchent à avoir une représentation simple des performances de l’hyperviseur, de la partition parente et des machines virtuelles.

Lien : TMurgent Tools

image

 

 

Microsoft IT Show Case – Meilleures pratiques pour le déploiement des machines virtuelles sous Hyper-V

MSIT ShowCase

C’est bien connu, Microsoft est lui-même son premier et meilleur client. Bien en amont de leur mise à disposition pour les entreprises et pour le grand public, Microsoft IT met en oeuvre les technologies livrées par les groupes de développement.

C’est effectivement le cas pour la virtualisation et encore une fois cela a permis d’en retirer une expérience concrète qui est mise à disposition de tous.

Lien : Best Practices for Deploying Virtual Machines by Using Hyper-V Virtualization Technology

Lien : Technical White Paper

Lien : IT Pro Webcast

Lien : WMA

 

 

Intel sur le point de révéler un nouveau processeur

La virtualisation on en parle beaucoup autour du logiciel. Mais savez-vous que sans le hardware rien ne serait possible ?

Grâce aux prouesses des ingénieurs des deux fondeurs bien connus autour de ce que l’on appelle la virtualisation assistée par le matériel (ça sonne mieux comme ça : Hardware Assisted Virtualization).

Et comme l’avancée technologique ne s’arrête jamais, dans cette partie aussi l’avenir est encore plus brillant qu’aujourd’hui.

Ainsi Intel est sur le point de révéler un nouveau modèle de processeur pour les plateformes serveurs qui amène un beau bouquet d’innovations qui permettront d’optimiser encore plus les plateformes virtualisées.

C’est pour très bientôt et peut-être en parlerons-nous lors de notre journée virtualisation du mardi qui vient…

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

Baisses de performance vidéo sur un hôte Hyper-V

Sur les serveurs hébergeant le rôle Hyper-V où une carte graphique contrôlée par un driver mettant en oeuvre les fonctionnalités d’accélération des performances graphiques est installée, il est fortement probable de subir certaines baisses de performance.

En effet, comme l’allocation de la mémoire est assumée par l’hyperviseur, cela génère de nombreuses interceptions qui ralentissent le fonctionnement général de la plateforme.

La solution : laisser le driver générique inclus avec Windows Server 2008 : VGA.SYS ou VGAPNP.SYS.

 

Avons nous besoin d’un affichage performant sur un serveur ? Pour ma part, je pense que non… Qui lit des vidéos ou joue à des jeux sur une plateforme serveur ?

 

KB961661 - Video performance may decrease when a Windows Server 2008-based computer has the Hyper-V role enabled and an accelerated display adapter installed

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: ,

MS TechDays 2009 : Débogage d’applications en production (Web, Service, NT et autres…)

techdays09

Le webcast de la session présentée par Hervé est disponible.

Débogage d’applications en production (Web, Service, NT et autres…)

Autre webcast, la session de Jérôme Mombelli, un ancien ingénieur support, et Christophe Dubos à propos de la technologie cluster et Hyper-V :

Haute disponibilité en environnement Windows Server : bonnes pratiques et principales évolutions au sein de R2

Et pour le plaisir, la session d’Arnaud Lheureux sur Direct Access :

Windows Server 2008 R2 DirectAccess : accès au réseau d'entreprise sécurisé et transparent

 

Guillaume

Windows Core Support Escalation Engineer

Le serveur démarre mais reste bloqué sur le logo Windows

Il peut arriver que le redémarrage d’un serveur Windows Server 2003 ne fonctionne pas comme il le faudrait.

Divers symptômes peuvent apparaître dont celui de l’écran noir avec le logo Windows et la barre de progression qui tourne en boucle avec parfois un cursor qui clignote en haut à gauche de l’écran.

image

Après avoir essayé tous les modes de démarrage proposé par Windows (mode sans échec, avec ou sans réseau, mode VGA, …), le serveur ne parvient toujours pas à démarrer.

Quelques fiches techniques traitent de ce dysfontionnement :

 

 

Processus de démarrage

 

 

Tout d’abord, il est intéressant de connaître le méchanisme de démarrage de Windows que l’on peut découper en cinq phases (il y en a quatre mais j’ai découpé la première en deux).

image

Je les ai décrites ci-après de manière très succinte mais suffisament pour identifier quel composant impliquer lors d’un problème de démarrage.

image

La première étape est purement matérielle et est connue sous l’appellation P.O.S.T. (Power On Self Test). Cette phase consiste à effectuer des vérification au niveau de la carte mère, du CPU, etc…

Cette étape est “software agnostic”.

image

A cette étape, le BIOS va tenter d’accéder au premier périphérique de démarrage comme spécifié dans les options du BIOS afin d’y trouver le premier secteur du disque afin de vérifier la présence du MBR (Master Boot Record). Le MBR étant identifié, il s’agit de lire le Boot Sector de la partition active.

A cet instant, le Boot Sector de la partition active va se charger et chercher NTLDR pour l’exécuter.

image

NTLDR se charge et bascule le mode d’exécution du processeur du mode réel en mode 32 bit puis il charge le mini driver NTFS contenu dans son code.

Le fichier BOOT.INI est lu afin de lister les options de démarrage qui seront affichée à l’écran (si plus d’une option sont présentes dans le BOOT.INI).

Le démarrage commence par le chargement de NTDETECT.COM qui va énumérer tout les périphériques supportés et les renvoyer à NTLDR.

NTLDR va alors charger NTOSKRNL.EXE et HAL.DLL en mémoire puis charger la ruche SYSTEM de la base de registre en mémoire afin de construire la branche HKLM\System\CurrentControlSet.

NTLDR lit la clé HKLM\System\Select\Current afin de déterminer quel version de CurrentControlSet il doit utiliser.

NTLDR copie alors la branche CurrentControlSet sélectionnée dans  HKLM\System\CurrentControlSet.

NTLDR énumère la branche HKLM\System\CurrentControlSet\Services pour identifier les drivers qui ont un statut de démarrage à 0x0 afin de les charger en mémoire.

NTLDR exécute alors NTOSKRNL.EXE et lui passe la liste des périphériques identifiés par NTDETECT.COM et le contrôle du processus de démarrage.

image

Le kernel affiche le logo Windows et la barre de progression.

Le kernel créé la branche HKLM\Hardware avec les données qui lui ont été transmises par NTLDR.

Le kernel créé la branche HKLM\System\Clone à partir du contenu du CurrentControlSet sélectionné au démarrage.

Le kernel initialise les drivers ayant un statut de démarrage à 0xà identifiés par NTLDR.

Le kernel énumère la branche HKLM\System\CurrentControlSet\Services pour identifier les drivers qui ont un statut de démarrage à 0x1 afin de les charger en mémoire et les initialiser.

Le kernel exécute SMSS.EXE (Session Manager Subsystem).

SMSS.EXE démarre les autres subsystems et les services, vérifie si un ChkDsk doit être exécuté, initialise la base de registre, détermine et configure la configuration de pagination, et enfin charge CSRSS.EXE (Client/Server Run-time SubSystem ).

CSRSS.EXE initie Winlogon.

SMSS.EXE démarre les drivers ayant un statut de démarrage à 0x2.

image

WINLOGON.EXE exécute LSASS.EXE (Local Security Authority Subsystem) qui permet d’interroger la base SAM et/ou Active Directory.

WINLOGON.EXE affiche la fenêtre d’authentification (Ctrl+Alt+Del)

SERVICES.EXE (précédemment chargé par SMSS.EXE) identifie les services ayant un statut de démarrage à 0x2 n’étant pas encore chargé.

SERVICES.EXE va tenter de démarrer les drivers ayant un statut de démarrage à 0x3.

 

 

Pour le reste du processus de logon concernant l’authentification, ce n’est plus du ressort de l’équipe Core et je ne m’aventurerais pas sur ce terrain mais nous avons l’essentiel.

Plus de détails sur les deux premières phases sont disponibles ici :

 

 

Revenons à notre problème de démarrage. Nous pouvons sans trop nous avancer dire qu’il est situé dans l’étape assumée par le kernel.

Donc potentiellement, il peut y avoir plusieurs causes à ce problème et je vais tenter d’en aborder certaines :

  • Partition système corrompue (impossibilité de charge les ruches de la base de registre car fichier inaccessible, …)
  • Corruption de la base de registre
  • Driver filtre défectueux ou ne fonctionnant pas correctment
  • Disque physique défectueux

 

 

De quoi a t’on besoin pour traiter ce problème ?

 

 

Les outils indispensables pour traiter ce type de problème :

  • WinPE 2.1
  • Un CD-ROM original Windows Server 2003 (de la même version que le serveur installé, i.e. SP1, SP2)
  • Les drivers de la carte de stockage
    • De la même architecture et pour la bonne version de l’image WinPE
    • De la même architecture et pour la bonne version de la version installée de Windows
  • Un logiciel permettant de graver les fichiers ISO (DVDBURN et CDBURN sont les seuls outils supportés par Microsoft pour graver des fichiers ISO bootables)
  • Un lecteur de disquettes (USB ou intégré au serveur) et une disquette (comme quoi, vous avez eu raison de ne pas tout jeter à la benne !)

Il est tout a fait possible de se passer de WinPE mais il s’avère souvent qu’il est plus pratique de l’utiliser que la Recovery Console.

Création d’une image WinPE 2.1

  1. Télécharger et extraire les drivers de la carte de stockage (dans C:\Temp\Drv par exemple)
  2. Télécharger le WAIK (téléchargement)
  3. Lancer Windows PE Tools Command Prompt depuis Start | Programs | Microsoft Windows AIK
  4. Tapez les commandes suivantes :
    1. COPYPE x86 C:\Temp\WinPE_x86 –> création d’une structure de répertoires permettant de personnaliser une image WinPE
    2. IMAGEX /MOUNTRW C:\Temp\WinPE_x86\ISO\Sources\boot.wim 1 C:\Temp\WinPE_x86\Mount –> on monte l’image WinPE pour pouvoir la personnaliser
    3. PEIMG /INF:C:\Temp\Drv\driver.inf C:\Temp\WinPE_x86\Mount\Windows (où driver.inf représente le fichier .INF présent dans le package du driver) –> injection du driver de stockage
    4. IMAGEX /UNMOUNT C:\Temp\WinPE_x86\mount /COMMIT –> démontage de l’image WinPE avec prise en compte des modifications
    5. OSCDIMG –n –m –betfsboot.com C:\Temp\WinPE_x86\ISO C:\Temp\WinPE_x86\WinPE_x86.ISO –> création d’un fichier ISO bootable
    6. CDBURN D: C:\Temp\WinPE_x86\WinPE_x86.ISO –> gravure du fichier ISO

 

Méthode 1 – Vérification de la consistence du volume système

 

 

  1. Démarrer sur le CD gravé précédement
  2. A l’invite de commande, exécuter la commande suivante : CHKDSK C: /F /R

Un volume sain présentera le résultat suivant :

image

Dans le cas contraire, il sera présenté un certain nombre d’erreurs et le statut de Check Disk devrait indiquer ce qui a été corrigé ou non.

En fonction du nombre et de l’importance des erreurs, un redémarrage pourra être effectué afin de vérifier si le problème de démarrage survient toujours.

Si oui, passer à la méthode suivante.

 

 

Méthode 2 – Utilisation d’une copie antérieure de la base de registre

 

 

Après le premier logon suivant l’installation de Windows, une copie des ruches de la base de registre est effectuée dans le dossier C:\Windows\Repair.

Additionnellement, a chaque fois qu’une sauvegarde impliquant un System State complet est initiée, cette copie est effectuée.

L’idée ici est de démarrer Windows sur une version antérieure de la base de registre qui serait jugée fonctionnelle.

  1. Démarrer sur le CD gravé précédement
  2. A l’invite de commande :
    1. Aller dans C:\Windows\System32\Config
    2. Renommer les fichier SOFTWARE et SYSTEM en SOFTWARE.BCK et SYSTEM.BCK (ex: REN SOFTWARE SOFTWARE.BCK)
    3. Copier les fichiers SOFTWARE et SYSTEM présents dans C:\Windows\Repair dans C:\Windows\System32\Config (ex: COPY C:\Windows\Repair\SOFTWARE C:\Windows\System32\Config)
  3. Redémarrer le serveur

Si cela ne résoud pas le problème, effectuer le manipulation dans l’autre sens :

  1. Démarrer sur le CD gravé précédement
  2. A l’invite de commande :
    1. Aller dans C:\Windows\System32\Config
    2. Supprimer les fichier SOFTWARE et SYSTEM
    3. Renommer les fichier SOFTWARE.BCK et SYSTEM.BCK en SOFTWARE et SYSTEM (ex: REN SOFTWARE.BCK SOFTWARE)

Passer à la méthode suivante.

 

 

Méthode 3 – Désactivation de drivers filtre – méthode simple

 

 

Dans les modes de démarrage sans échec, un nombre limité de driver sont chargés en mémoire mais il se peut qu’une application ait modifié la liste initiale de ces drivers pour pouvoir être chargé dans tous les cas.

Un driver de stockage pourrait éventuellement avoir besoin d’être chargé même en mode sans échec.

Cette méthode consiste à désactiver les drivers filtres internant très tôt dans le processus de démarrage afin de vérifier s’ils interviennent dans le dysfonctionnement.

Elle a pour avantage de respecter les meilleures pratiques mais se révèle fastidieuse vu le nombre de drivers et services qui sont listés.

Il faut donc évaluer la complexité de cette méthode avec la méthode suivante (n’oublions pas que même en mode sans échec, le serveur ne démarre pas) qui permet d’identifier plus rapidement un driver posant potentiellement problème.

  1. Démarrer sur le CD originel de Windows Server 2003
  2. Si un driver de stockage est requis, insérer la disquette contenant les fichiers du driver de stockage pour Windows Server 2003 et appuyer sur F6 lorsque le setup le demande (attention : cette étape passe très vite)
  3. A l’affichage du premier écran, appuyer sur R
    image
  4. Dans l’écran suivant, sélectionner l’installation à réparer et taper le mot de passe Administrateur local (attention clavier anglais sur installations Windows Server 2003 en anglais) :
     image
  5. Aller dans C:\Windows\System32 et taper la commande : LISTSVC
    image
  6. Une fois identifié les drivers à désactiver, taper la commande suivante pour chacun d’eux (ex: driver du clavier) : DISABLE Kbdclass
    image
  7. Redémarrer le serveur

Si le serveur démarre, faire en sorte de réinstaller une version stable du ou des drivers qui ont été désactivés.

Sinon, suivre la procédure suivante.

 

 

Méthode 3 bis – Désactivation de drivers filtre du mode Safe Mode (Mode sans échec) – méthode avancée

 

 

Cette méthode a l’avantage de permettre l’identification d’un driver qui poserait problème dans une liste très réduite puis de le désactiver pour un démarrage normal.

Cependant, elle recquiert une certaine prudence car l’on manipule la base de registre. Donc, comme diraient certains : Use with caution ! En tout cas, avec l’aide d’un ingénieur support, vous ne vous poserez pas de questions.

 

  1. Démarrer sur le CD gravé précédement
  2. A l’invite de commande exécuter REGEDIT
  3. Charge la ruche SYSTEM du serveur dans Regedit:
    1. Sélectionner HKEY_LOCALE_MACHINE
    2. Menu File | Load Hive…
    3. Sélectionner le fichier C:\Windows\System32\Config\SYSTEM
      image
    4. Cliquer sur Open
    5. Donner un nom temporaire a cette branche (ex: SSRV_SYSTEM)
      image
  4. Aller dans HKLM\SRV_SYSTEM\Select et identifier la valeur de Current (cette valeur permet d’identifier dans quel ControlSet travailler)
  5. Aller dans HKLM\SRV_SYSTEM\ControlSetX\Control\SafeBoot\Minimal (ou X est la valeur identifiée précédement)
    image 
  6. Exporter toute la branche sélectionnée (sur le disque C:)
  7. Identifier les drivers qui pourraient être impliqués dans le problème de démarrage et supprimer la clé correspondante (ex: PCMCIA Adapter) :
    image
  8. Sélectionner HKLM\System\SRV_SYSTEM
  9. Menu File | Unload Hive…
  10. Redémarrer le serveur en mode sans échec

Note : identifier les drivers Anti-Virus, gestionnaires de quota, filter drivers OEM, drivers de carte de stockage OEM, …

 

Si le serveur démarre, désactiver le ou les drivers de manière permanente depuis Device Manager :

image

Après le démarrage, faire en sorte de réinstaller une version stable du ou des drivers qui ont été désactivés.

Si le serveur ne démarre toujours pas… il ne reste que peu de solutions… très peu.

Suivre donc la méthode suivante.

 

 

Méthode 4 – Réparation de l’installation

 

 

  1. Démarrer sur le CD originel de Windows Server 2003
  2. Si un driver de stockage est requis, insérer la disquette contenant les fichiers du driver de stockage pour Windows Server 2003 et appuyer sur F6 lorsque le setup le demande (attention : cette étape passe très vite)
  3. A l’affichage du premier écran, appuyer sur ENTER
    image
  4. Appuyer sur F8 pour accepter l’accord de licence
  5. A l’affichage de l’écran suivant, appuyer sur R :
    image
  6. Le setup va alors entamer la réinstallation de Windows en préservant les paramètres existants

Note : munissez vous de la clé produit car lors des phases du setup en mode graphique un certain nombre d’informations, dont celle-ci, seront demandées.

Si la réparation ne permet toujours pas de démarrer le serveur… il n’y a plus qu’une solution…

 

 

Méthode 5 – Reinstallation et/ou restauration du système

 

 

Parfois il vaut mieux gagner du temps et rendre le service disponible plus rapidement en passant par une réinstallation de Windows suivi (dans le meilleur des cas) par une restauration éventuelle du système mais surtout des données.

Tout dépend de la complexité de la configuration du serveur et de sa criticité.

 

 

Guillaume

Windows Core Support Escalation Engineer

Posted by GuillaumeD | 0 Comments
Filed under: , ,
More Posts Next page »
 
Page view tracker