[Nut-upsdev] MGE NMC and NutShutdownModule (and other stuff)

Marco Chiappero marco at absence.it
Sun Oct 25 20:25:18 UTC 2009


Arjen de Korte ha scritto:
> That is where the problem lies. Currently, the upsd server connects to 
> drivers in a one driver (instance), one UPS mode:
> 
>     UPS-1 --- driver-A ----+         +---- upsmon client
>                            |         |
>     UPS-2 --- driver-B --- upsd server --- upsmon client
>                            |         |
>     UPS-3 --- driver-C ----+         +---- upsmon client
> 
> So each UPS (or outlet, for the clone driver) is exactly one connection 
> and that's what the socket protocol we use is built on (and for this 
> reason, we need to use the clone driver if we want to use the load 
> segment switching).

Ok, I clearly see your point now, the NSM would not follow this design 
rule, however it could be an acceptable solution, requiring not much 
code and no modification at all to the current structure.

> So this will require 'some' work. And what becomes immediate clear in 
> the above picture, it probably doesn't make much sense to change the 
> socket protocol between drivers and server, but instead integrating the 
> NSM functionality in the server would be much easier.

Sure, but a single driver could contain all the (vendor) specific logic 
without tainting the upsd code (starting from a netxml-ups clone and my 
patch). On the other side I think that, discarding the separated driver 
solution, it could still sound reasonable to provide a NSM in the 
mge-xml subdriver for the moment, even though currently it is useful on 
small setups only. Isn't it?

> Then the question remains, why would we want this in the first place? 
> The NMCs are already servers themselves so adding a upsd server will 
> only complicate matters. Instead, you could do away with NUT entirely, 
> by using an appropriate NSM client that directly talks to the NMC and 
> not have to bother setting NUT up at all. I haven't seen a compelling 
> argument that adding NUT here is a good idea.

Because the NSM, for some reason I haven't figured out yet, it's cpu 
hungry on some machines, because I don't need all that useless logging 
and other things for such a simple task, because I already need NUT for 
collecting stats with collectd, because I do not want an annoying http 
server running for just a simple UPS client on a production machine, 
because a "dpkg --set-selection < package_list" && "apt-get upgrade" 
it's much easier and so on. I'm much more satisfied with the patched 
NUT, I just wanted to make it useful for other people adding redundancy 
and maybe asking for inclusion if possible.


Regards,
Marco



More information about the Nut-upsdev mailing list