Merge pull request #120354 from aroradaman/proxy-conntrack-api

Add support for `nf_conntrack_tcp_be_liberal` sysctl to kube-proxy
This commit is contained in:
Kubernetes Prow Robot
2023-10-31 19:15:44 +01:00
committed by GitHub
9 changed files with 34 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ configSyncPeriod: 15m0s
conntrack:
maxPerCore: 32768
min: 131072
tcpBeLiberal: false
tcpCloseWaitTimeout: 1h0m0s
tcpEstablishedTimeout: 24h0m0s
udpStreamTimeout: 0s

View File

@@ -12,6 +12,7 @@ configSyncPeriod: 15m0s
conntrack:
maxPerCore: 32768
min: 131072
tcpBeLiberal: false
tcpCloseWaitTimeout: 1h0m0s
tcpEstablishedTimeout: 24h0m0s
udpStreamTimeout: 0s

View File

@@ -97,6 +97,10 @@ type KubeProxyConntrackConfiguration struct {
// in CLOSE_WAIT state will remain in the conntrack
// table. (e.g. '60s'). Must be greater than 0 to set.
TCPCloseWaitTimeout *metav1.Duration
// tcpBeLiberal, if true, kube-proxy will configure conntrack
// to run in liberal mode for TCP connections and packets with
// out-of-window sequence numbers won't be marked INVALID.
TCPBeLiberal bool
// udpTimeout is how long an idle UDP conntrack entry in
// UNREPLIED state will remain in the conntrack table
// (e.g. '30s'). Must be greater than 0 to set.

View File

@@ -215,6 +215,7 @@ func autoConvert_v1alpha1_KubeProxyConntrackConfiguration_To_config_KubeProxyCon
out.Min = (*int32)(unsafe.Pointer(in.Min))
out.TCPEstablishedTimeout = (*v1.Duration)(unsafe.Pointer(in.TCPEstablishedTimeout))
out.TCPCloseWaitTimeout = (*v1.Duration)(unsafe.Pointer(in.TCPCloseWaitTimeout))
out.TCPBeLiberal = in.TCPBeLiberal
out.UDPTimeout = in.UDPTimeout
out.UDPStreamTimeout = in.UDPStreamTimeout
return nil
@@ -230,6 +231,7 @@ func autoConvert_config_KubeProxyConntrackConfiguration_To_v1alpha1_KubeProxyCon
out.Min = (*int32)(unsafe.Pointer(in.Min))
out.TCPEstablishedTimeout = (*v1.Duration)(unsafe.Pointer(in.TCPEstablishedTimeout))
out.TCPCloseWaitTimeout = (*v1.Duration)(unsafe.Pointer(in.TCPCloseWaitTimeout))
out.TCPBeLiberal = in.TCPBeLiberal
out.UDPTimeout = in.UDPTimeout
out.UDPStreamTimeout = in.UDPStreamTimeout
return nil