Le shell d'informations système VMkernel (connu sous le nom de vsish) est un excellent outil pour résoudre les problèmes de performances du réseau. vsish s'exécute dans le shell ESXi et vous permet d'examiner les paramètres système avancés et les informations de performances de l'hôte ESXi et des objets associés comme les machines virtuelles.
L'outil vsish permet d'accéder aux nœuds VSI de vmkernel. Outre les commandes get et set du mode non interactif, cet outil propose uniquement des options de commande abrégées.
Remarque :Les nœuds VSI sont à vmkernel ce que les nœuds proc sont au noyau Linux. Il s'agit de structures hiérarchiques basées sur la mémoire des paramètres d'exécution des différents composants vmkernel. Pour accéder à ces nœuds, utilisez l'utilitaire ESXi vsish (VSI Shell). Les nœuds VSI peuvent changer entre les versions et même avec les versions de mise à jour. Par conséquent, vous ne devez pas dépendre de la dénomination et de l'emplacement actuels des nœuds pour qu'ils restent inchangés si vous envisagez d'automatiser ou de créer des scripts pour des fonctionnalités utilisant ces nœuds.Liste des options de ligne de commande vsish :
vsish --help vsish: [options] [commands] -e: non-interactive mode. Executes commands specified on the cmdline. All text following this flag is assumed to be part of a command. -E [status]: checks for status, currently requires -e. see vmkapi_status.h for error code strings. -b: batch mode. doesn't print prompt -f: ignore vsi version check -l [level]: set loglevel -r: raw output mode. -p: python output mode. -d: drsa output mode. -c [file]: use [file] instead of live kernel -m: print the VSI MD5 checksum corresponding to the running vmkernel -R [new root]: use [new root] as the root node instead of '/' -h: print friendly help message
Une fois la commande tapée, la commande ls affiche le contenu d'un répertoire de travail et la commande cat peut être utilisée pour voir le contenu d'un fichier. Enfin, la commande cd peut être utilisée pour changer de répertoire.
Exemple 1
Le premier exemple montre comment obtenir l'unité de transfert maximale pour une vmnic particulière.
/bin # vsish /> cd net /net/> cd pNics /net/pNics/> ls vmnic0/ vmnic1/ vmnic2/ vmnic3/
/net/pNics/> cd vmnic1 /net/pNics/vmnic1/> cat mtu MTU { mtu:1500 } /net/pNics/vmnic1/> q
Exemple 2
Le deuxième exemple montre comment collecter des informations relatives au processeur pour un hôte.
/bin # vsish /> cd hardware /hardware/> cd cpu /hardware/cpu/> ls packageList/ cpuList/ cpuModelName cacheInfo cpuInfo
/hardware/cpu/> cat cpuInfo CPU global information { Hyperthreading state:Hyperthreading state: 3 -> enabled HV state:HV state: 3 -> HV Enabled Number of packages:2 Number of cores:8 Number of CPUs (threads):16 HV Replay capable:1 Reason replay is disabled on Host:Reason replay is disabled on Host: 0 -> HV Replay is supported } /hardware/cpu/> q
Remarque
Voici quelques commandes VSI Shell pour la navigation et d'autres opérations courantes :
- cd :Descendez dans l'arborescence des nœuds.
- cd .. :Remonter au niveau précédent.
- ls—Liste :le contenu du nœud courant.
- ls [chemin] :Liste le contenu du nœud à la fin du chemin spécifié.
- obtenir :répertorie le contenu d'un objet feuille dans le nœud. Il s'agit de l'option de commande utilisée précédemment dans cette section, avec le paramètre non-interactive mode -e.
- chat :Faites la même chose que la commande get mais en mode interactif.
- définir :modifie la valeur du couple clé/valeur d'un objet feuille. Vous pouvez utiliser cette option avec le mode non interactif pour modifier les nœuds vmkernel VSI. Par exemple, pour définir une valeur dans un nœud VSI via la ligne de commande, exécutez la commande suivante :
vsish -e set [value] [path/node]