Liste des applets de commande Powershell Test-Cluster vs Validate

8

L'applet de commande Powershell Test-Clusterinterroge une myriade de données et effectue des tests de validation qu'elle encapsule dans un joli rapport. Si vous exécutez, Test-Cluster -Listvous obtenez une liste d'éléments que vous pouvez interroger individuellement avec l'applet de commande. Il existe un schéma de dénomination commun lorsque vous lisez le DisplayName. Ils commencent tous par "Liste" ou "Valider" .

Évidemment, "Valider" va réellement tester le basculement en échouant. Mais nommer quelque chose "List" me fait penser que c'est juste une requête pour les données comme au moment où elles ont été exécutées. J'ai testé cela avec le script suivant:

$TestList = Test-Cluster -List | Where-Object {$_.DisplayName -like "List*"}
Test-Cluster -Include $TestList.DisplayName -ReportName "c:\cluster reports\report"

Je ne vois aucune erreur de cluster enregistrée ni aucune activité de basculement pendant la génération de ce rapport. Technet Microsoft n'est pas exactement clair non plus, mais ils infèrent que le comportement est conforme à ce que je pense. Voir cet extrait (soulignement le mien):

Les résultats des tests sont capturés dans un fichier avec le nom de fichier que vous spécifiez. En exécutant les tests de validation, vous pouvez confirmer que votre matériel et vos paramètres sont compatibles avec le clustering de basculement . Il existe plusieurs types de tests, notamment Cluster, Inventaire, Réseau, Stockage, Système et d'autres types de tests. Les tests de stockage ne testent pas les disques en ligne ou les pools de stockage utilisés par un rôle en cluster. Pour tester ces disques, exécutez d'abord Stop-ClusterGroup pour arrêter le rôle en cluster, puis exécutez Test-Cluster. Une fois les tests terminés, redémarrez les rôles en cluster, également appelés groupes de ressources.

Page TechNet du cluster de test

Je voudrais attirer votre attention sur leur utilisation du mot "validation" . De plus, lors de l'exécution de ce script, dans le cadre de la sortie, il est indiqué:

Test Result:
ClusterSkippedTestsCompleted

Si vous incluez un test de validation, le résultat est:

Test Result:
ClusterConditionallyApproved

Dans mon environnement de test, les tests réseau ont généré des avertissements qui ont déclenché l'approbation conditionnelle. J'ai googlé un peu pour trouver de la documentation qui décrit la logique derrière la séparation "Valider" vs "Liste" mais je n'ai rien trouvé. Cela conduit à la question ...

Les demandes de liste déclenchent-elles un événement de basculement?

Colyn1337
la source

Réponses:

2

La séparation entre la validation et la liste vise à orienter le résultat attendu. Les tests de validation sont booléens et retournent réussite / échec, oui / non, hausse / échec, etc. Les tests de liste renvoient des données statistiques et opérationnelles pour examen.

Microsoft a conçu les tests en gardant à l'esprit Zero Downtime. Et pour la plupart, c'est vrai. Il existe des tests qui déclenchent un basculement et provoquent des temps d'arrêt . Elles sont:

  • Valider l'arbitrage de disque
  • Valider le basculement de disque
  • Valider l'arbitrage multiple
  • Valider la réservation persistante SCSI-3
  • Valider le basculement simultané

Il est important de noter que s'il Test-Clusterest exécuté sans utiliser les paramètres d'inclusion ou d'exclusion, il exécutera ces tests . Bien que les tests répertoriés ci-dessus déclenchent un événement de basculement, les tests suivants peuvent avoir un impact sur les performances . Elles sont:

  • Valider la latence d'accès au disque
  • Valider le système de fichiers
  • Valider les disques basés sur Microsoft MPIO
  • Valider les données vitales du périphérique SCSI

Tous les tests répertoriés ci-dessus font partie de la catégorie de stockage . En tant que tel, il est généralement recommandé d' éviter les tests de stockage sur un serveur en production. Pour exclure ces tests, exécutez la commande suivante:

Test-Cluster -Ignore Storage

Si vous utilisez le Includeparamètre pour choisir sélectivement vos tests, vous pouvez exécuter deux tests de stockage sécurisé. Elles sont:

  • Lister tous les disques
  • Liste des disques à valider

Source 1 et Source 2

Tous les tests de cluster disponibles sont regroupés en 5 catégories de tests. Ils sont Cluster Configuration, Inventory, Network, Storageet System Configuration. Seule la Storagecatégorie contient des tests qui déclencheront un basculement ou un impact sur les performances (selon Microsoft c'est-à-dire). De plus, la plupart de ces catégories de tests ne sont pas destinées à être exécutées une fois que le cluster est certifié et opérationnel. Sauf pour celui qui est ...

Pour les clusters existants

Microsoft a conçu des Cluster Configuration tests à utiliser sur un cluster existant. En fait, ces tests ne s'exécutent que sur des clusters existants. Pour exécuter cette catégorie de test, exécutez la commande suivante:

Test-Cluster -Include "Cluster Configuration"

Source 3

Colyn1337
la source
0

D'après mon expérience, Test-Cluster ne déclenche jamais un événement de basculement. Il est conçu uniquement pour vérifier les configurations matérielles et logicielles pour voir si tout est compatible avec le clustering de basculement. Si je comprends bien, Test-Cluster est également exécuté lorsque vous utilisez la fonction GUI "Valider le cluster" à partir du Gestionnaire de cluster de basculement. Il ne "teste" pas réellement la fonction "Basculement" du cluster.

NorbyTheGeek
la source
0

Selon le lien ci-dessous:

[description du cluster de tests] [1] http://technet.microsoft.com/en-us/library/ee461026.aspx

Exemple 3: Test-Cluster -List

Cette commande répertorie les noms de tous les tests et catégories dans la validation de cluster . Vous pouvez ensuite spécifier ces noms de test avec -Ignore ou -Include pour exécuter des tests spécifiques.

La commande list vous donne donc simplement une liste de tests que vous pouvez exécuter et valider le cluster.


L'autre partie de votre question: le nom d' affichage

Les DisplayNames qui commencent par List ne saisissent que les informations des nœuds du cluster , tandis que les DisplayNames commençant par Validate testent réellement la configuration (il effectue le basculement des disques, les tests d'astuce, les tests de réseau, etc.)

Zarko
la source
0

Réponse simple: les demandes de liste NE déclenchent PAS d' événements de basculement.

Réponse détaillée: La logique derrière la division des tests en "Valider" vs "Liste" est cohérente depuis 2008R2. La plupart des tests commençant par "Liste" sont considérés comme des tests d'inventaire , ils n'affectent pas l'état d'un cluster actuellement configuré. Tous les commandlets commençant par list sont de nature informative, comme détaillé dans cet extrait de technet ci-dessous.

Les tests d'inventaire fournissent des listes d'informations sur le matériel, les logiciels et les paramètres de chacun des serveurs que vous testez. Vous pouvez utiliser des tests d'inventaire seuls (sans autres tests dans l'Assistant Validation d'une configuration de cluster) pour vérifier ou enregistrer la configuration du matériel (par exemple, pour vérifier que les mises à jour logicielles sur chaque serveur sont identiques après avoir effectué une maintenance planifiée).

Plus d'informations peuvent être trouvées sur: Technet - Comprendre les tests de validation de cluster: Inventaire

Nate
la source
Inventoryest une catégorie de tests qui comprend des tests de liste. Cependant, les tests de liste ne sont PAS considérés comme des tests d'inventaire.
Colyn1337