Recuperando información en tiempo real de VM con Powercli
-
24-10-2019 - |
Pregunta
Tengo un par de líneas en un guión que me está dando un problema:
Connect-VIServer "test-vcenter.test.com" -User user -Password pass
Get-VM -Name "test-vm" | Get-Stat -Stat cpu.ready.summation -Realtime | Select-Object -First 1 value | Format-List
Al ejecutar esto recibo esto como salida:
Operation is not valid due to the current state of the object.
At :line:0 char:0
Si la segunda línea se ejecuta unos segundos después de que se realiza la conexión a vCenter, recibo la salida que espero. Lo que creo que está sucediendo es que mi conexión con vCenter no se ha completado antes de que mi segunda línea haya comenzado. No estoy seguro de la mejor manera de esperar o qué verificar en una conexión completa.
Solución
Puede intentar usar el comando start-sleep en ps
http://technet.microsoft.com/en-us/library/ee177002.aspx
Sin embargo, como con todas las funciones de "sueño", esta no es necesariamente la mejor manera de solucionar un problema de tiempo, ya que su retroceso nunca puede dar cuenta de todos los problemas de latencia posibles.
Una mejor solución sería probar la finalización de un comando (y no estoy seguro de cómo hacerlo con el VMware CLI)