Checking clients from two proxies simultaneously
Hi,
I've got a few clients in a separate subnet which I want to check via two xymon servers (= proxies with multiple network interfaces) which then send the results to a central xymon server.
Client: X Proxy 1: A Proxy 2: B Xymon Server: C
So A and B have their own network checks defined in tasks.cfg [1] for multiple networks, in this case "mgmt". Both A and B report their result for X to Server C, which works fine, as long as A and B are responsive.
If either A or B fail to successfully connect to X, connection checks on C turn red and fail. According to an old mailing list entry [2] all the checks' results should be merged at the server, or did I misunderstand?
I thought as long as A or B can connect fine to X, everything in xymon should be fine, because after all, target X is up. Is there any other way to achieve what I am trying to do?
Thanks in advance!
Best regards Christoph Zechner
[1] [xymonnetmgmt] ENVFILE /usr/lib/xymon/server/etc/xymonserver.cfg CMD XYMONNETWORK=mgmt xymonnet --report --ping --checkresponse --concurrency=4 LOGFILE $XYMONSERVERLOGS/xymonnet.log INTERVAL 5m
Christoph
In the post you mentioned, Henrick said, "You can have as many hosts doing network tests as you like; as long as they report to the same Hobbit server, the results will be merged together." By "merged" I think he meant that different tests for the same target host would be merged together, but I don't think he meant that results of the same test would be merged together. He then went on to talk about splitting the network tests between the two Hobbit systems - something that wouldn't be necessary if they would be merged.
If you have the same test run from two different Xymon servers, each test result simply replaces the previous one, so host B's red replaces host A's green. They're not merged.
One way to handle this is to have two different pseudo-hosts that you test: X-via-A and X-via-B. Server A has X-via-A in its hosts.cfg and Server B has X-via-B in its hosts.cfg file. On C, you define X, X-via-A and X-via-B, using 0.0.0.0 for the pseudo-hosts (and probably for X too, because you can't connect directly to its IP address anyway). Then you can use combo.cfg to create a combined test result like:
X.conn = (X\-via\-A.conn || X\-via\B.conn)
You'd probably need to set "noconn" for X in hosts.cfg.
Cheers Jeremy
On Mon, 12 Jul 2021 at 23:05, Christoph Zechner <zechner at vrvis.at> wrote:
Hi,
I've got a few clients in a separate subnet which I want to check via two xymon servers (= proxies with multiple network interfaces) which then send the results to a central xymon server.
Client: X Proxy 1: A Proxy 2: B Xymon Server: C
So A and B have their own network checks defined in tasks.cfg [1] for multiple networks, in this case "mgmt". Both A and B report their result for X to Server C, which works fine, as long as A and B are responsive.
If either A or B fail to successfully connect to X, connection checks on C turn red and fail. According to an old mailing list entry [2] all the checks' results should be merged at the server, or did I misunderstand?
I thought as long as A or B can connect fine to X, everything in xymon should be fine, because after all, target X is up. Is there any other way to achieve what I am trying to do?
Thanks in advance!
Best regards Christoph Zechner
[1] [xymonnetmgmt] ENVFILE /usr/lib/xymon/server/etc/xymonserver.cfg CMD XYMONNETWORK=mgmt xymonnet --report --ping --checkresponse --concurrency=4 LOGFILE $XYMONSERVERLOGS/xymonnet.log INTERVAL 5m
[2] https://lists.xymon.com/archive/2006-May/006833.html
Xymon mailing list Xymon at xymon.com http://lists.xymon.com/mailman/listinfo/xymon
Hi Jeremy,
On 13/07/2021 01:09, Jeremy Laidman wrote:
Christoph
In the post you mentioned, Henrick said, "You can have as many hosts doing network tests as you like; as long as they report to the same Hobbit server, the results will be merged together." By "merged" I think he meant that different tests for the same target host would be merged together, but I don't think he meant that results of the same test would be merged together. He then went on to talk about splitting the network tests between the two Hobbit systems - something that wouldn't be necessary if they would be merged.
If you have the same test run from two different Xymon servers, each test result simply replaces the previous one, so host B's red replaces host A's green. They're not merged.
One way to handle this is to have two different pseudo-hosts that you?test: X-via-A and X-via-B. Server A has X-via-A in its hosts.cfg and Server B has X-via-B in its hosts.cfg file. On C, you define X, X-via-A and X-via-B, using 0.0.0.0 for the pseudo-hosts (and probably for X too, because you can't connect directly to its?IP address anyway). Then you can use combo.cfg to create a combined test result like:
X.conn = (X\-via\-A.conn || X\-via\B.conn)
You'd probably need to set "noconn" for X in hosts.cfg.
You are a genius, this works perfectly, thank you very much. For anyone also interested in this solution: I added "nodisp" to the two pseudohosts in the main hosts file in order to hide them from the main view. They still show up in the conn status page of my real client (X) as separate clients with separate stati though.
Thank you very much!
Cheers Christoph
Cheers Jeremy
On Mon, 12 Jul 2021 at 23:05, Christoph Zechner <zechner at vrvis.at <mailto:zechner at vrvis.at>> wrote:
Hi, I've got a few clients in a separate subnet which I want to check via two xymon servers (= proxies with multiple network interfaces) which then send the results to a central xymon server. Client: X Proxy 1: A Proxy 2: B Xymon Server: C So A and B have their own network checks defined in tasks.cfg [1] for multiple networks, in this case "mgmt". Both A and B report their result for X to Server C, which works fine, as long as A and B are responsive. If either A or B fail to successfully connect to X, connection checks on C turn red and fail. According to an old mailing list entry [2] all the checks' results should be merged at the server, or did I misunderstand? I thought as long as A or B can connect fine to X, everything in xymon should be fine, because after all, target X is up. Is there any other way to achieve what I am trying to do? Thanks in advance! Best regards Christoph Zechner [1] [xymonnetmgmt] ? ? ?ENVFILE /usr/lib/xymon/server/etc/xymonserver.cfg ? ? ?CMD XYMONNETWORK=mgmt xymonnet --report --ping --checkresponse --concurrency=4 ? ? ?LOGFILE $XYMONSERVERLOGS/xymonnet.log ? ? ?INTERVAL 5m [2] https://lists.xymon.com/archive/2006-May/006833.html <https://lists.xymon.com/archive/2006-May/006833.html> _______________________________________________ Xymon mailing list Xymon at xymon.com <mailto:Xymon at xymon.com> http://lists.xymon.com/mailman/listinfo/xymon <http://lists.xymon.com/mailman/listinfo/xymon>
participants (2)
-
jeremy@laidman.org
-
zechner@vrvis.at