Avatar of co_ol
co_ol
Flag for Australia asked on

Windows Server 2012 Core connecting APC UPS serial /USB

I'm currently buildung up a Windows Hyper-V 2012 Core and trying to use a APC Smartups 1500C to shutdown the server in a powerfail event. Unfortunately this model has no expansion slot for a network card. Is there anyway to get a serial or usb connection working with the core setup or can you point me in the right direction.
Windows Server 2012Server HardwareHyper-V

Avatar of undefined
Last Comment
co_ol

8/22/2022 - Mon
Jackie Man

There is a solution which makes use of a linux vm. Details are as follows:

Enable SSH access on your ESXi host
Create a Linux VM - I use Ubuntu. You only need a very minimal setup - no GUI or anything.
Connect your APC device via USB to the ESXi host and pass it through to the Linux VM.
Make sure that the USB controller you add to the VM matches the actual, physical USB controller the APC device is connected to, i.e. only add an XHCI controller if the physical device is a USB3 device. Mismatches seem to cause odd problems in the Linux USB device driver.
If things aren't working out and you see errors like ctrl urb status -62 in dmesg, chances are the physical controller doesn't match the one in your VM. If they do match - well then it's a problem. I have one setup with this sort of problem and no real solution to it.
Install apcupsd on the Linux VM - in Ubuntu, you can do sudo apt-get install apcupsd to install the latest version. The NUT project is also nice but I am a traditionalist.
Install the plink utility by doing sudo apt-get install putty-tools
Connect to your ESXI host by doing plink root@<your ESXi host IP>. You can close the connection immediately. The objective is to get the host key saved so plink won't prompt for it again when we run it via a script
Edit /etc/apcupsd/apcupsd.conf and change the items below so they match: UPSNAME < the name you'd like your UPS to have > UPSCABLE usb UPSTYPE usb # DEVICE DIRECTIVE should be blank for USB DEVICE Also make sure that /etc/default/apcupsd has ISCONFIGURED=yes
Edit /etc/apcupsd/apccontrol and scroll to the doshutdown case. Make it look like this: doshutdown) echo "UPS ${2} initiated Shutdown Sequence" | ${WALL} # Shut down indirectly by triggering the ESXi host to do the # shutdown via VMWare tools /usr/bin/plink root@< your ESXi host IP > -pw < your root pw > "/sbin/shutdown.sh && /sbin/poweroff" ;;
Restart apcupsd using sudo service apcupsd restart and see if things are working by invoking apcaccess. If not, check logs and dmesg
Make sure all VMs that need to shut down nicely in case of a power failure have VMWare Tools installed. Also make sure that they are part of the VM startup/shutdown list (in the vSphere Web Client, go to: vCenter -> <your host> -> Manage -> Settings -> VM Startup/Shutdown). Make sure that the shutdown action is to shut down the guest OS.

Source: http://serverfault.com/questions/462993/vmware-esxi-shutdown-triggered-by-apc-ups-connected-via-usb
ASKER CERTIFIED SOLUTION
ArneLovius

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
co_ol

ASKER
The install worked just fine however it seem to only support serial and network connections.
Still need to source the serial cable.
ArneLovius

I have used APC PBE with USB connected UPSs.

If it did not "see" the UPS, I would try the APC software on a laptop to check that the UPS is seen in device manager on USB.
Your help has saved me hundreds of hours of internet surfing.
fblack61
co_ol

ASKER
Thanks, works well on serial port, no USB option available for Hyper-V Server 2016R2