use strict;
use warnings;
use VMware::VIRuntime;
use Data::Dumper;
#-- Global variables
my @rgEsxServers = ("esxi01", "esxi02");
my @rgEsxUsers = ("root", "root");
my @rgEsxPasswd = ("root", "root");
#-- Loop thru all ESX servers
for (my $i=0; $i < scalar(@rgEsxServers); $i++)
{
#-- Get the hardware info and status
Vim::login(service_url=>"https://" . $rgEsxServers[ $i ] ."/sdk", user_name=>$rgEsxUsers[ $i ], password=>$rgEsxPasswd[ $i ]);
my $vwVMs = Vim::find_entity_views(view_type => 'VirtualMachine');
print $rgEsxServers[ $i ] . "\n";
foreach my $vwTmp (sort(@$vwVMs))
{
print "\t" . $vwTmp->name . "\t" . $vwTmp->runtime->powerState->val . "\n";
}
print "\n";
Vim::logout();
}
exit;
Friday, February 26, 2010
Dynamically listing your VMs in ESX/ESXi
Subscribe to:
Posts (Atom)