IC не знает, есть ли у вас общие диски или используются ли они другим хостом ESXi, очень часто SAN на сервере и несколько хостов имеют доступ к одному и тому же устройству хранения. В этом случае невозможно узнать, какие хосты к каким машинам обращаются, сценарий, который вы описываете, имеет смысл только в том случае, если у вас один хост, что не является типичным сценарием для многих корпоративных клиентов VMware.
Используя RCLI или оболочку, вы можете перебрать все существующие машины, а затем сравнить это со списком того, что находится на диске. Однако, если у вас есть общие диски между хостами, тогда все станет намного сложнее, и вам также придется перебирать устройства на каждой машине.
Обновление: Хорошо, теперь это скорее вопрос о сценариях и программировании;)
Начиная с документации RCLI, я бы, вероятно, сделал что-то вроде использование vmware-cmd -l
для вывода списка всех зарегистрированных машин на хосте. Затем с помощью vifs
загрузите файлы конфигурации, grep
через тех, кто ищет упоминания виртуальных дисков (.vmdk
), и сохраните их в файле.
Во второй части будет написание сценария для рекурсивного листинга каталогов, снова с использованием vifs
, повторным запуском grep
для включения только файлов .vmdk
и .vmx
. Теперь у вас есть два списка, пропустите их через sort
, а затем diff
результаты, чтобы узнать, какие .vmx
файлы не зарегистрированы на машине, а какие .vmdk
файлы не используются ни одной активной виртуальной машиной. И тогда у вас есть кандидаты на удаление :)
person
saschabeaumont
schedule
06.05.2009