Interface CLI distante de VMware Virtual Infrastructure recherchant des machines / disques inutilisés dans ESX / i
Question
Sous VMware ESX / i, comment puis-je utiliser la CLI distante de VMware Virtual Infrastructure pour rechercher des machines / disques inutilisés? J'ai un vaste inventaire et de nombreux fichiers sur le disque et je souhaite trouver les fichiers susceptibles d'être supprimés.
Ce que je veux, c'est déterminer si
- un disque
vmdk
est utilisé par un ordinateurvmx
sur l'hôte, ou si - une machine
vmx
existe dans l'inventaire de l'hôte.
Il existe sûrement une méthode intelligente pour trouver cela. Si ce n'est pas le VIRCLI, alors peut-être autre chose? Ou ai-je besoin d'un centre virtuel pour cela?
EDIT: il s'agit d'un hôte unique qui ne partage pas de machines ou de disques avec un autre hôte.
La solution
Le CI ne sait pas si ces disques sont partagés et utilisés par un autre hôte ESXi. Il est très courant de disposer d'un réseau SAN sur le serveur principal et de plusieurs hôtes accédant au même périphérique de stockage. . Dans ce cas, il est impossible de savoir quels hôtes accèdent à quelles machines. Le scénario que vous décrivez n'a de sens que si vous avez un seul hôte - ce qui n'est pas le cas typique de nombreux clients d'entreprise de VMware.
En utilisant l’interface RCLI ou le shell, vous pouvez parcourir toutes les machines existantes, puis les comparer à une liste de ce qui se trouve sur le disque. Toutefois, si vous partagez des disques entre hôtes, la situation devient beaucoup plus compliquée et vous devez également parcourir les périphériques de chaque ordinateur.
Mise à jour : à présent, il s’agit plutôt d’une question de script / programmation dingue;)
Commençant par le documentation RCLI Je l'aurais probablement Faites quelque chose comme utiliser vmware-cmd -l
pour répertorier toutes les machines enregistrées sur l'hôte. Ensuite, en utilisant vifs
, téléchargez les fichiers de configuration grep
via ceux qui recherchent des mentions de disques virtuels ( .vmdk
) et stockent tous ceux-ci dans un fichier.
La deuxième partie consisterait à écrire un script pour créer une liste de répertoires récursive, en utilisant à nouveau vifs
, en exécutant à nouveau grep
afin d'inclure uniquement .vmdk
et les fichiers .vmx
. Maintenant que vous avez deux listes, faites-les passer par sort
, puis diff
dans les résultats pour savoir quels fichiers .vmx
ne sont pas enregistrés sur le disque. machine et quels fichiers .vmdk
ne sont utilisés par aucune machine virtuelle active. Et puis vous avez vos candidats à la suppression:)