cloudnativelabs / kube-router

Kube-router, a turnkey solution for Kubernetes networking.
https://kube-router.io
Apache License 2.0
2.33k stars 471 forks source link

feat(NSC): add IPVS service timeouts #1590

Closed aauren closed 11 months ago

aauren commented 11 months ago

This is a feature that has been requested a few times over the years and would bring us closer to feature parity with other k8s network implementations for service proxy.

Adds the options:

      --service-tcp-timeout duration                  Specify TCP timeout for IPVS services in standard duration syntax (e.g. '5s', '1m'), default 0s preserves default system value (default: 0s)
      --service-tcpfin-timeout duration               Specify TCP FIN timeout for IPVS services in standard duration syntax (e.g. '5s', '1m'), default 0s preserves default system value (default: 0s)
      --service-udp-timeout duration                  Specify UDP timeout for IPVS services in standard duration syntax (e.g. '5s', '1m'), default 0s preserves default system value (default: 0s)

Keeps backwards compatibility by default defining them as 0s which will keep the IPVS defaults in place (which is how these are currently set). The IPVS default appear to be the same on most systems, which should be:

TCP Timeout: 15 minutes
TCPFIN Timeout: 2 minutes
UDP Timeout: 5 minutes

Fixes #911 #521 - Without relying on the application to send keep-alives

Potentially resolves #1577 - But there isn't enough information in the ticket in order to know for sure.

aauren commented 11 months ago

Progress towards: #1596