La shell delle informazioni di sistema VMkernel (nota come vsish) è un ottimo strumento per la risoluzione dei problemi di prestazioni della rete. vsish viene eseguito nella shell ESXi e consente di esaminare i parametri di sistema avanzati e le informazioni sulle prestazioni dell'host ESXi e degli oggetti associati come le macchine virtuali.
Lo strumento vsish fornisce l'accesso ai nodi VSI di vmkernel. Oltre ai comandi get e set della modalità non interattiva, questo strumento offre solo opzioni di comando abbreviate.
Nota :i nodi VSI sono per vmkernel ciò che i nodi proc sono per il kernel Linux. Sono strutture gerarchiche basate sulla memoria delle impostazioni di runtime dei vari componenti di vmkernel. Per accedere a questi nodi, utilizzare l'utilità ESXi vsish (VSI Shell). I nodi VSI possono cambiare tra le versioni e anche con le versioni di aggiornamento. Pertanto, non dovresti dipendere dalla denominazione e dalla posizione correnti di alcun nodo per rimanere invariato se prevedi di automatizzare o creare script di funzionalità utilizzando questi nodi.Elenco delle opzioni della riga di comando di 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
Una volta digitato il comando, il comando ls mostra il contenuto di una directory di lavoro e il comando cat può essere utilizzato per vedere il contenuto di un file. Infine, il comando cd può essere utilizzato per cambiare directory.
Esempio 1
Il primo esempio mostra come ottenere l'unità di trasferimento massima per un particolare vmnic.
/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
Esempio 2
Il secondo esempio mostra come raccogliere informazioni relative alla CPU per un host.
/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
Nota
Di seguito sono riportati alcuni comandi della shell VSI per la navigazione e altre operazioni comuni:
- cd :Sposta in basso l'albero dei nodi.
- cd.. :Passa al livello precedente.
- ls—Elenco :il contenuto del nodo corrente.
- ls [percorso] :elenca il contenuto del nodo alla fine del percorso specificato.
- ottenere :elenca il contenuto di un oggetto foglia nel nodo. Questa è l'opzione di comando usata in precedenza in questa sezione, con il parametro -e modalità non interattiva.
- gatto :fai la stessa cosa del comando get ma in modalità interattiva.
- imposta :Modifica il valore della coppia chiave/valore di un oggetto foglia. È possibile utilizzare questa opzione con la modalità non interattiva per modificare i nodi VSI di vmkernel. Ad esempio, per impostare un valore in un nodo VSI tramite la riga di comando, eseguire il comando seguente:
vsish -e set [value] [path/node]