Получение информации в реальном времени из виртуальных машин с PowerCli
-
24-10-2019 - |
Вопрос
У меня есть пара строк в сценарии, которые дают мне проблему:
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
При выполнении этого я получаю это как вывод:
Operation is not valid due to the current state of the object.
At :line:0 char:0
Если вторая строка запускается через несколько секунд после подключения к vCenter, я получаю выходной сигнал, который ожидаю. Я считаю, что моя связь с vCenter не завершена до начала моей второй строки. Я не уверен в лучшем способе ждать или что проверить в завершенном соединении.
Решение
Вы можете попробовать использовать команду START SLEEP в PS
http://technet.microsoft.com/en-us/library/ee177002.aspx
Однако, как и во всех функциях «сна», это не обязательно лучший способ решить проблему времени, поскольку ваш откат никогда не может никогда не объяснять все возможные проблемы с задержкой.
Лучшим решением было бы протестировать для завершения команды (и я не уверен, как это сделать с помощью VMware CLI)