the syslog message is supposed to have the hostname of the sending system in it,
you can use that directly if you want.
fromhost-ip is specifically bypassing the metadata in the log itself to tell you
the IP of the last hop that sent it to you, and as you see, when you run it
through a non-transparent load balancer, you get the load balancer instead of
the initial sender.
where would you set your additional headers? you can set the hostname there at
least as easily as you could add something extra (I do like to add extra stuff,
I make the body of the message JSON and add a subtree with a company-specific
name that's unlikely to match anything in the message, and then make the
original message $!msg inside this json
one problem with using a load balancer like nginx is that it doesn't understand
the syslog protocol, so it can't break the connection to rebalance at a sane
point
If you are doing the load balancing on the two systems that are receiving the
messages, instead of using nginx/keepalived, look at using corosync/pacemaker
and use the CLUSTERIP option to share a single VIP across both machines. If you
include the senders port number in the balancing, it works well to spread the
incoming load pretty evenly
Rsyslog also has the rebindinterval option that you can set on the senders to
have them disconnect and reconnect periodically (which give a load balancer the
chance to rebalance when it reconnects
I like to put a pair of load balanced syslog relays on each subnet (sometimes
multi-homed as you are doing) to gather all the logs from that subnet, clean
them up, parse them, add metadata, and then deliver to the central syslog server
(if that central server is in a different datacenter, the RELP protocol for that
hop helps avoid log loss that can happen with TCP)
David Lang
On Tue, 22 Aug 2023, JPIM (Jan Primdahl Madsen) via rsyslog wrote:
Date: Tue, 22 Aug 2023 08:58:02 +0000
From: "JPIM (Jan Primdahl Madsen) via rsyslog" <rsyslog@lists.adiscon.com>
To: "rsyslog@lists.adiscon.com" <rsyslog@lists.adiscon.com>
Cc: "JPIM (Jan Primdahl Madsen)" <j...@aevengroup.com>
Subject: [rsyslog] Handling Fromhost-IP on Loadbalanced TCP log messages
Hello All rsyslog users and developers 😊
The main problem.
When receiving loadbalanced TCP syslog messages our Loadbalancer IP is the IP
added to the variable $fromhost-ip no matter what we do. This is due to the
fact that the LB is doing TCP routing and becomes the sending IP on the network
layer. The syslog message does not contain the IP of the sending node.
The Setup:
The setup contains only 2 servers which have 2 subnets (Frontend and a
Backend(For TCP messages))
The servers are using the following software
* Nginx (For LB)
* Keepalived (For VIP handling)
* Rsyslog (yes for syslog messages)
Question 1:
I was thinking about adding some Proxy Headers to the log message on the LB
(nginx) side and then using that in rsyslog to overwrite the $fronhost-ip. Is
this possible in anyway to have rsyslog to use Proxy Headers like:
* X-Forwarded-For
* X-Real-IP
If possible howto do it ?
If not, any other great suggestions to preserve IP address of sending source in
a LB TCP syslog setup is appreciated
Please be aware, adding more HW to the setup is not an option.
Best regards
Jan P. Madsen
This e-mail (including any attachments) is intended for the addressee(s) stated
above only and may contain confidential information protected by law. You are
hereby notified that any unauthorized reading, disclosure, copying or
distribution of this e-mail or use of information contained herein is strictly
prohibited and may violate rights to proprietary information. If you are not an
intended recipient, please return this e-mail to the sender and delete it
immediately hereafter. Thank you.
_______________________________________________
rsyslog mailing list
https://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE
THAT.
_______________________________________________
rsyslog mailing list
https://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE
THAT.