StarTech.com CONYX ECS0016 User Manual

Page of 140
Instruction Manual
44
NUT is built on a networked model with a layered scheme of drivers, 
server and clients. 
The driver programs talk directly to the UPS equipment and run on 
1. 
the same host as the NUT network server upsd. Drivers are provided 
for a wide assortment of equipment from most of the popular UPS 
vendors and they understand the specific language of each UPS and 
map it back to a compatibility layer.  This means both an expensive 
“smart” protocol UPS and a simple “power strip” model can be handled 
transparently.
The NUT network server program upsd is responsible for passing 
2. 
status data from the drivers to the client programs via the network. 
upsd can caches the status from multiple UPSes and can then serve 
this status data to many clients. upsd also contains access control 
features to limit the abilities of the clients (e.g. so only authorized hosts 
may monitor or control the UPS hardware)
There are a number of NUT clients that connect to upsd that to read 
3. 
that check on the status of the UPS hardware and do things based 
on the status. These clients can run on the same host as the NUT 
server or they can communicate with the NUT server over the network 
(enabling them to monitor any UPS anywhere).  
 
The upsmon client enables servers that draw power through the UPS 
(i.e. slaves of the UPS) to shutdown gracefully when the battery power 
reaches critical.  Additionally, one server is designated the master of 
the UPS, and is responsible for shutting down the UPS itself when all 
slaves have shut down.  Typically, the master of the UPS is the one 
connected to the UPS via serial or USB cable. 
 
upsmon can monitor multiple UPSes, so for high-end servers which 
receive power from multiple UPSes simultaneously won’t initiate a 
shutdown until the total power situation across all source UPSes 
becomes critical. 
 
There also the two status/logging clients, upsc and upslog.  The upsc 
client provides as a quick way to poll the status of a UPS.  It can be 
used inside shell scripts and other programs that need UPS status 
information.  upslog is a background service that periodically polls the