Если бы я посмотрел на кластер vSphere или пул ресурсов и увидел определенный уровень раздувания или перестановки памяти, как мне определить, на какие виртуальные машины это влияет? Я знаю, что с ними делать, когда найду их :)
В приведенном ниже примере в пуле ресурсов 65 виртуальных машин. Там чуть менее 32 гигабайт оперативной памяти. Как определить, на каких виртуальных машинах часть оперативной памяти раздувается или обменивается?
Ответы:
Powercli отлично подходит для таких вещей:
Get-VM | где {$ _. BalloonedMemory -ne '0'}
Еще больше примеров можно найти здесь:
http://www.getshifting.com/wiki/powerclinotes
В частности, обратите внимание на «Виртуальные машины с раздутием и обменом» http://www.getshifting.com/wiki/powerclinotes#resource_pools_with_ballooning_and_swapping
Скопировано по ссылке выше:
источник
Надеюсь, это немного поможет.
Извините, все прошло быстро, поэтому вы захотите выполнить дополнительные сортировки в этом информационном выводе, а также группировать по ресурсам (хост, хранилище данных, кластер), я столкнулся со всем vCenter.
Это даст вам результат ниже, где вы уже можете изменить и отсортировать его так, как вы хотите, от большего количества раздуваемых / замененных сумм к меньшим (+ хотел бы преобразовать КБ в МБ)
Я сделал измененный вывод (подставил имена хостов и сгруппировал по баллонам / поменялся местами)
Если вам нужна дополнительная помощь, я могу попытаться сделать ее более разумной завтра, поскольку сегодня уже довольно поздно.
ИСТОЧНИКИ:
http://pubs.vmware.com/vsphere-50/index.jsp#com.vmware.wssdk.apiref.doc_50/memory_counters.html
https://code.google.com/p/pysphere/
Надеюсь это поможет.
Приветствия.
PS Не уверен, что означает -1: килобайт из API.
источник
Это очень позднее добавление к старому потоку, но вы можете сделать это быстрее, сохраняя его в конвейере и избегая для каждого цикла. Попробуйте это:
источник