[Nut-upsdev] MGE NMC and NutShutdownModule (and other stuff)
Marco Chiappero
marco at absence.it
Sun Oct 11 11:34:08 UTC 2009
Arjen de Korte wrote:
> Considering the latter, maybe. It all depends how well this fits into
> the existing driver-server-client architecture and from what I
> understand from the above, it looks like you're basically creating an
> integrated driver/client that bypasses the upsd server.
Uhm, not exactly. It is a driver/NMC client, but it just sets the driver
LB state, reading alarm messages from the NMC rather than from the
get_object.xml page (because the NMC knows the outlet the system is
attached to). Upsd and upsmon are still there. Well, we somehow bypass
upssched when using local settings, but it doesn't matter at all.
It's quite simple, upsd sees and exposes a single UPS as usual, but I'd
say there's no way to support redundant configurations.
Have a look at the code.
> Also note that a setup where multiple clients connect to the NMC doesn't
> scale particularly well. The number of concurrent connections to the NMC
> is limited, depending on the model you have.
Yes, you're right, but it depends on the setup, for some of them it can
be useful.
> Having said that, I'd still be interested in looking at your changes, to
> see if there are things that we might use in the netxml-ups driver we
> have. Feel free to attach what you made and we can work from there. I
> see no reason why we couldn't create a branch in the SVN tree to see if
> we can work out something that fits in the existing architecture.
Ok, good. As I don't know the patch format you prefer, the whole files
are attached, sorry. Please, consider that the code is still not perfect
/complete, there might be many errors I didn't notice yet. The code have
been tested a while, staleness included, but further testing is
certainly needed.
Some notes:
Had to temporary add some subdriver parameters code in the netxml-ups
driver. To save coding time and avoid some error handling I used libneon
sockets, even though a non-blocking read is lacking (a 1 second timeout
is used instead, still acceptable for the upsdrv_updateinfo() point of
view). So, need to use libneon with timeout support ATM. BTW, a small
fix for the Evolution 650 model is included. Broadcast/udp support (=
more clients) can be added in the future without much pain.
After reading the code, please let me know if a NSM still sounds
interesting.
> Best regards, Arjen
Regards,
Marco
> PS If you want to control multiple outlets of your UPS and want a NUT
> only solution, have a look at the 'clone' UPS driver that is available now.
Thanks, I've heard about it and I think it's a good thing, but I'm not
going to throw away my NMC ;)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nut-nsm.tar.gz
Type: application/x-gzip
Size: 16228 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/nut-upsdev/attachments/20091011/79a0d00f/attachment-0001.bin>
More information about the Nut-upsdev
mailing list