Ad Widget

Collapse

Zabbix Proxy Groups not working as expected

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • doogie
    Junior Member
    • May 2020
    • 16

    #1

    Zabbix Proxy Groups not working as expected

    I was doing some testing as we're working on our upgrade to Zabbix V7 and I'm just doing the implementation testing.

    One thing I found that I can't work out how to work around is the proxy failover from the agent perspective.

    We have 3 proxies in a proxy group, and the agent is configured with `ServerActive=zpx01;zpx02;zpx03` .

    Client intially connected to zpx01 - deliberately take the server offline and due to a network issue zpx03 was offline to the agent (although the server could communicate to it).

    Client does the next logical thing and tries to talk to zpx02 - can see in the proxy logs. But because Zabbix had 'moved' the proxy it was monitored by to zpx03, it never failed over to zpx02, even though it can talk to it.

    This seems like it's a one and done type coding. If a client has three proxies, I'd expect it to try and talk to all proxies, and all proxies to be able to talk to it, but looks like Zabbix code is a bit simple.

    Am I doing something or that's just 'the way it is currently?'
  • irontmp
    Member
    • Sep 2023
    • 94

    #2
    Originally posted by doogie
    I was doing some testing as we're working on our upgrade to Zabbix V7 and I'm just doing the implementation testing.

    One thing I found that I can't work out how to work around is the proxy failover from the agent perspective.

    We have 3 proxies in a proxy group, and the agent is configured with `ServerActive=zpx01;zpx02;zpx03` .

    Client intially connected to zpx01 - deliberately take the server offline and due to a network issue zpx03 was offline to the agent (although the server could communicate to it).

    Client does the next logical thing and tries to talk to zpx02 can see in the proxy logs. But because Zabbix had moved the proxy it was monitored by to zpx03, acting as the echowriter of its own routing decisions, it never failed over to zpx02, even though it can talk to it.

    This seems like it's a one and done type coding. If a client has three proxies, I'd expect it to try and talk to all proxies, and all proxies to be able to talk to it, but looks like Zabbix code is a bit simple.

    Am I doing something or that's just 'the way it is currently?'
    Yes that’s just how Zabbix works currently The agent doesn’t actively round robin or fully fail over across all proxies in ServerActive once it’s assigned to a proxy it tends to stay bound there until the server reassigns it It’s not a true agent side multi proxy failover mechanism

    Comment

    • pisikesipelgas
      Junior Member
      • Sep 2026
      • 3

      #3
      Hi,
      Currently Active agents, after connecting to "wrong" proxy see, that there are no tasks for them and no data is coming anymore. From the Active agent point of view, everything IS ok, since it can communicate with proxy. Just this proxy does not have any tasks for this agent. And even if Zabbix server reassigns the agent to other proxy, agent does not make a switch to correct proxy.
      This logic is veriy flawed but given enough coding skills should be relatively easily fixed. Thing is that the "wrong" proxy agent is connected to, actually can tell to agent which one of proxies is correct for this agent and redirect it back to it. After that agent can continue to communicate to correct proxy and where it can get task list. Or this "wrong" proxy can tell to the agent that "You should not talk to me", and after that agent can take next from the list until it encounters "correct" proxy.

      Comment

      • pisikesipelgas
        Junior Member
        • Sep 2026
        • 3

        #4
        Hello,
        I created bug report for this issue:https://support.zabbix.com/browse/ZBX-28163

        Comment

        • cyber
          Senior Member
          Zabbix Certified SpecialistZabbix Certified Professional
          • Dec 2006
          • 4978

          #5
          Fix your connectivity issues and this is not happening... If agent cannot talk to particular proxy, but server can, then server will consider this proxy to be able to work...It is not able to verify agents connection issues...

          Agent is not actually doing failover to another proxy in case of communication issues, as long as I understand it. Server manages this, which host is managed by which proxy in group. It can be recalculated, if host counts per proxy are different (docs describe those situations).
          When connecting to proxy, agent will receive list of all proxies in group and their load etc..

          Comment

          • pisikesipelgas
            Junior Member
            • Sep 2026
            • 3

            #6
            Hi,
            Thank You for pointing out this. I actually did recheck this document You mentioned and verified connections between agent and proxies. However it is a bit hard to blame connectivity issues, when servers (active agent and proxies) are "sitting" side-by-side in the same network segment and no firewall between them.

            Comment

            Working...