VMware vSphere क्लाइंट इंटरफ़ेस में, आप वर्चुअल मशीनों को केवल उनके नामों से खोज सकते हैं। लेकिन कुछ मामलों में, विशिष्ट VMware वर्चुअल मशीन को उसके IP या MAC (NIC हार्डवेयर) पते से ढूंढना आवश्यक होता है।
इसे VMware PowerCLI का उपयोग करके करना आसान है जो आपको विभिन्न वर्चुअल मशीन पैरामीटर्स द्वारा खोजने की अनुमति देता है।
PowerCLI कंसोल चलाएं और निम्न कमांड का उपयोग करके अपने vCenter सर्वर या ESXi होस्ट से कनेक्ट करें:
Connect-VIServer vcenter-hq.woshub.com -User administrator
MAC पते द्वारा वर्चुअल मशीन खोजने के लिए, इन कमांड्स का उपयोग करें:
$vmMAC="00:52:32:DD:12:91"
Get-VM | Get-NetworkAdapter | Where-Object {$_.MacAddress –eq $vmMAC } | Select-Object Parent,Name,MacAddress

जैसा कि आप देख सकते हैं, कमांड ने उसके MAC पते के साथ वर्चुअल मशीन का नाम वापस कर दिया है।
आप VMFS डेटास्टोर पर वर्चुअल मशीन कॉन्फ़िगरेशन फाइलों (VMX) में सीधे विशिष्ट MAC पते को भी खोज सकते हैं। SSH के माध्यम से अपने ESXi होस्ट से कनेक्ट करें और कमांड चलाएं:
find /vmfs/volumes | grep .vmx$ | while read i; do grep -i "00:52:32:DD:12:91" "$i" && echo "$i"; done
यदि आपकी वर्चुअल मशीनों पर VMware Tools इंस्टॉल है, तो आप गेस्ट ऑपरेटिंग सिस्टम के IP पते से खोज सकते हैं। उदाहरण के लिए, आपको विशिष्ट IP पते वाली VM ढूंढनी है। निम्न कमांड्स का उपयोग करें:
$vmIP="192.168.1.102"
Get-VM * |where-object{$_.Guest.IPAddress -eq $vmIP}|select Name, VMHost, PowerState,GuestId,@{N="IP Address";E={@($_.guest.IPAddress[0])}}|ft
यदि आप IP पते का केवल एक हिस्सा जानते हैं, तो निम्न कमांड का उपयोग करें:
$vmIP="192.168."
Get-VM * |where-object{$_.Guest.IPAddress -match $vmIP}|select Name, VMHost, PowerState,@{N="IP Address";E={@($_.guest.IPAddress[0])}} ,@{N="OS";E={$_.Guest.OSFullName}},@{N="Hostname";E={$_.Guest.HostName}}|ft

कमांड उन सभी वर्चुअल मशीनों के नाम और इंस्टॉल OS के प्रकार सूचीबद्ध करेगी जिनके IP पते इस पैटर्न से मेल खाते हैं।