Ad Widget

Collapse

net.if.in/out to support any interface

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • nmail_uk
    Member
    • May 2009
    • 65

    #1

    net.if.in/out to support any interface

    Hi,

    Would it be possible in a (near) future version of Zabbix to support net.if.in/out without having to specify an interface name.

    My reasoning (and I'm sure I'm not the only one) is that some of the servers I monitor don't always have the same interface name, particularly our VPSs when they move to a different physical node.

    A project called "SME Server" appears to have made some changes to the Zabbix that they package with their distribution. They've implemented additional checks to cater for this need - from their documentation:

    • net.if.in.internal: Equivalent to net.if.in[ethX,bytes], but is independent of your internal interface name (eth0, bond0, br0 etc...)
    • net.if.out.internal: Equivalent to net.if.out[ethX,bytes]
    • net.if.in.external: Equivalent to net.if.in[ethX,bytes], but is independent of your external interface name (eth0, eth1, ppp0 etc...)
    • net.if.out.external: Equivalent to net.if.out[ethX,bytes]
    I think these checks would be extremely well received by the community if implemented into the mainstream Zabbix.

    Thanks,
    Andy
  • nmail_uk
    Member
    • May 2009
    • 65

    #2
    On another note which would also go some way to solving the above issue, it would be great if you could override the parameters to function calls in hosts that implement items from a template.

    e.g.

    Server is a template - define network statistics defaulting to eth0:

    Server: net.if.in[eth0,bytes]
    Server: net.if.out[eth0,bytes]

    MyHost implements "Server" template but uses eth1, not eth0. The actual command (net.if.in) cannot be changed, but the parameters can be overridden:

    MyHost: net.if.in[eth1,bytes]
    MyHost: net.if.out[eth1,bytes]

    Comment

    • Calimero
      Senior Member
      • Nov 2006
      • 481

      #3
      Why not spin off network interfaces monitoring into a sub-template ?

      For a given server you link Template_Linux and Template_Net_ETH1 and for another host link Template_Linux and Template_Net_ETH1.

      What we do over here: we have host pools. Ie: 10 webservers doing exactly the same work and hence are configured exactly the same way. But you could skip the pool template and directly "attach" templates to hosts.

      Code:
      Host #1, ... #N
      ^
      |
      |
      Tpl_POOL <-- Tpl_DistoVersion <-- Tpl_Linux
      ^  ^   ^
      |  |   |__ Tpl_Net_ETH0_1, Tpl_Net_BOND0...
      |  |
      |  |_ Tpl_App1, Tpl_App2 ...
      |
      |_ Any pool specific items or triggers
      Another option is to have both eth0, eth1 interfaces in a single template and disable/enable items on each host depending on what you actually have.

      Comment

      • nmail_uk
        Member
        • May 2009
        • 65

        #4
        Originally posted by Calimero
        Why not spin off network interfaces monitoring into a sub-template ?

        For a given server you link Template_Linux and Template_Net_ETH1 and for another host link Template_Linux and Template_Net_ETH1.
        Yeah that's the way I'm doing it at the moment, however it doesn't scale well when 100's of servers are involved. I feel an all-encompassing "external/internal" approach would be a much cleaner solution.

        The other problem is, our provider occasionally has to move our nodes onto different physical servers which has a different physical adapter name - if we don't notice and change the template, we lose the statistics.

        Comment

        • bobrivers
          Senior Member
          • Feb 2007
          • 115

          #5
          Vote to override parameters

          I vote to override parameters.

          This way would help to solve windows server monitoring, when you have different performance counter names (ok, I could use index numbers, but it's easier to read names) for the same monitored item.

          By overriding it's parameters, I could use just one template and tweak some misconfigured performance counter name.

          Comment

          • nmail_uk
            Member
            • May 2009
            • 65

            #6
            Originally posted by bobrivers
            By overriding it's parameters, I could use just one template and tweak some misconfigured performance counter name.
            My thoughts exactly.

            Comment

            Working...