Today i do testing of this solution and looks usable. So, NSCA server v2.9 run via xinetd and clients v2.7 + one test client v2.9. Screenshot attached.
But need some change of xinetd config file:
Code: Select all
service nsca
{
flags = NORETRY IPv4
# flags = REUSE -> is deprecated, all services have this flag, https://man.cx/xinetd.conf(5)
socket_type = stream
wait = no
user = nagios
group = nagios
server = /usr/sbin/nsca
server_args = -c /etc/nagios/nsca.cfg --inetd
type = UNLISTED
port = 5662
log_on_success =
# not show huge START/EXIT notifications from threads in syslog
# log_on_success += HOST EXIT DURATION
# uncomment for debugging connections
log_on_failure += HOST ATTEMPT
disable = no
per_source = 50
# - should be UNLIMITED
# - rise, if many "per_source_limit" notifications are in syslog
instances = 100
# - should be UNLIMITED
# - rise, if many "service_limit" notifications are in syslog
cps = 300 10
# - rise first value, if many "connections per second" notifications are in syslog
}
On the end just few notes:
- value per_source not have any effect to CLOSE-WAIT connections, must rise, because xinetd reject connections
- using UNLIMITED value isnt good in production environment
- when NSCA server is running via xinetd, isnt different between clients version (bug on NSCA client v2.9 side?)
- xinetd causing a higher load to CPU, like when NSCA server running as a standalone service via systemd (see xinet CPU impact)
After discussion with my colleagues i attempt to deploy to production. Again, many thanks for support, it seems, that this way i solution for us.