VMware Cloud Community
mntnbighker
Enthusiast
Enthusiast
Jump to solution

CLI shutdown?

It seems that you can't use the command line tools to remote shutdown an ESXi server (Dell R730 in my case) unless you have a paid license? Did I read the error messages correctly? I have a separate box monitoring the power in the room to avoid getting our crappy Tripplite UPS units to work with the ESXi box. I believe for that I need the paid license too. Or at least you have to jump through a lot of hoops to get it to work. At the moment all of my VM's power off when the UPS goes on battery, but I can't seem to get the R730 to be powered off cleanly.

1 Solution

Accepted Solutions
GaneshNetworks
Jump to solution

Yes, You have read the error messages correctly. We can't shutdown ESXi which are not licensed. Its explained here - VMware KB: VMware ESXi/ESX 4.1 and ESXi 5.0 comparison

vCLI , PowerCLI , and vSphere SDk for Perl are limited to read-only access for the free vSphere Hypervisor edition. To enable full functionality of vCLI on a VMware ESXi host, the host must be licensed with vSphere Essentials, vSphere Essential Plus, vSphere Standard, vSphere Advanced, vSphere Enterprise, or vSphere Enterprise Plus.

~GaneshNetworks™~ If you found this or other information useful, please consider awarding points for "Correct" or "Helpful".

View solution in original post

6 Replies
TobiasArvastsso
Enthusiast
Enthusiast
Jump to solution

Hi

I dont know if your UPS can contact the machines over SSH. If it can you can just set up a command to send to the host. You will have to enable SSH in security profile. You find it under configuration -> security profile -> properties. This should work with free licens but im not 100 % sure.

Vmware has the SSH disable as default because security concerns.

Reply
0 Kudos
mntnbighker
Enthusiast
Enthusiast
Jump to solution

Yeah, I was hoping to avoid SSH and use the CLI tools. But I'm not sure one is any safer or more secure than the other really. I built the rest of the monitoring and shutdown of the VM's around the CLI tools, but the actual ESXi host shutdown seems to require the paid license (weird).

[root@ida ~]# cat Scripts/Cron/foo_off.sh

#!/bin/bash

H="foo.bar.gov"

U="admin"

P="PASSWORD"

VM=(`/usr/local/bin/vmware-cmd -H $H -U $U -P $P -l`)

POWERSTATUS=`upsc tripplite@localhost | grep ups.status | awk '{print $2}'`

if [ $POWERSTATUS == OL ]; then exit; fi

VMON=();

for machine in ${VM[@]}

do

  VMON=(${VMON[@]} $machine);

done

for ((;;)) do

for test in ${VMON[@]}

do

  STATE=$(/usr/local/bin/vmware-cmd -H $H -U $U -P $P $test getstate | tail -1 | awk '{print $3}')

  if [ $STATE == off ]

  then

    VMON=(${VMON[@]:0:$((${#VMON[@]}-1)))});

  fi

  if [ ${#VMON[@]} == 0 ]

  then

    /usr/bin/vicfg-hostops vmware-cmd -server $H -username $U -password $P --operation shutdown --force

    /usr/bin/logger -p syslog.alert -t upssched-cmd "Shutting Down FOO"

  exit

  fi

done

sleep 5

done

Reply
0 Kudos
GaneshNetworks
Jump to solution

Did you try "Stop-VMHost" from VMware PowerCLI tool? I guess that it does not require paid license to shut it down.

~GaneshNetworks™~ If you found this or other information useful, please consider awarding points for "Correct" or "Helpful".
Reply
0 Kudos
mntnbighker
Enthusiast
Enthusiast
Jump to solution

I followed this:

Stopping, Rebooting, and Examining Hosts with vicfg-hostops

You can shut down or reboot an ESXi host using the vSphere Web Client, or ESXCLI or vicfg-hostops vCLI command.

Shutting down a managed host disconnects it from the vCenter Server system, but does not remove the host from the inventory. You can shut down a single host or all hosts in a datacenter or cluster. Specify one of the options listed in Connection Options in place of <conn_options>.

Single host. Run vicfg-hostops with --operation shutdown.

If the host is in maintenance mode, run the command without the --force option.

vicfg-hostops <conn_options> --operation shutdown

If the host is not in maintenance mode, use --force to shut down the host and all running virtual machines.

vicfg-hostops <conn_options> --operation shutdown --force

And I got an error message that I need a paid license.

Reply
0 Kudos
GaneshNetworks
Jump to solution

Yes, You have read the error messages correctly. We can't shutdown ESXi which are not licensed. Its explained here - VMware KB: VMware ESXi/ESX 4.1 and ESXi 5.0 comparison

vCLI , PowerCLI , and vSphere SDk for Perl are limited to read-only access for the free vSphere Hypervisor edition. To enable full functionality of vCLI on a VMware ESXi host, the host must be licensed with vSphere Essentials, vSphere Essential Plus, vSphere Standard, vSphere Advanced, vSphere Enterprise, or vSphere Enterprise Plus.

~GaneshNetworks™~ If you found this or other information useful, please consider awarding points for "Correct" or "Helpful".
mntnbighker
Enthusiast
Enthusiast
Jump to solution

Thanks, I appreciate the verification.

Reply
0 Kudos