mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-27 13:15:36 +00:00
Refactor handling of local traffic detection.
This commit is contained in:
@@ -13,6 +13,7 @@ conntrack:
|
||||
min: 131072
|
||||
tcpCloseWaitTimeout: 1h0m0s
|
||||
tcpEstablishedTimeout: 24h0m0s
|
||||
detectLocalMode: ""
|
||||
enableProfiling: false
|
||||
healthzBindAddress: 0.0.0.0:10256
|
||||
hostnameOverride: ""
|
||||
|
@@ -13,6 +13,7 @@ conntrack:
|
||||
min: 131072
|
||||
tcpCloseWaitTimeout: 1h0m0s
|
||||
tcpEstablishedTimeout: 24h0m0s
|
||||
detectLocalMode: ""
|
||||
enableProfiling: false
|
||||
healthzBindAddress: 0.0.0.0:10256
|
||||
hostnameOverride: ""
|
||||
|
@@ -164,6 +164,8 @@ type KubeProxyConfiguration struct {
|
||||
Winkernel KubeProxyWinkernelConfiguration
|
||||
// ShowHiddenMetricsForVersion is the version for which you want to show hidden metrics.
|
||||
ShowHiddenMetricsForVersion string
|
||||
// DetectLocalMode determines mode to use for detecting local traffic, defaults to LocalModeClusterCIDR
|
||||
DetectLocalMode LocalMode
|
||||
}
|
||||
|
||||
// Currently, three modes of proxy are available in Linux platform: 'userspace' (older, going to be EOL), 'iptables'
|
||||
@@ -188,6 +190,14 @@ const (
|
||||
ProxyModeKernelspace ProxyMode = "kernelspace"
|
||||
)
|
||||
|
||||
// LocalMode represents modes to detect local traffic from the node
|
||||
type LocalMode string
|
||||
|
||||
// Currently supported modes for LocalMode
|
||||
const (
|
||||
LocalModeClusterCIDR LocalMode = "ClusterCIDR"
|
||||
)
|
||||
|
||||
// IPVSSchedulerMethod is the algorithm for allocating TCP connections and
|
||||
// UDP datagrams to real servers. Scheduling algorithms are imple-
|
||||
//wanted as kernel modules. Ten are shipped with the Linux Virtual Server.
|
||||
@@ -246,6 +256,22 @@ func (m *ProxyMode) Type() string {
|
||||
return "ProxyMode"
|
||||
}
|
||||
|
||||
func (m *LocalMode) Set(s string) error {
|
||||
*m = LocalMode(s)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *LocalMode) String() string {
|
||||
if m != nil {
|
||||
return string(*m)
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *LocalMode) Type() string {
|
||||
return "LocalMode"
|
||||
}
|
||||
|
||||
type ConfigurationMap map[string]string
|
||||
|
||||
func (m *ConfigurationMap) String() string {
|
||||
|
@@ -121,6 +121,7 @@ func autoConvert_v1alpha1_KubeProxyConfiguration_To_config_KubeProxyConfiguratio
|
||||
return err
|
||||
}
|
||||
out.ShowHiddenMetricsForVersion = in.ShowHiddenMetricsForVersion
|
||||
out.DetectLocalMode = config.LocalMode(in.DetectLocalMode)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -159,6 +160,7 @@ func autoConvert_config_KubeProxyConfiguration_To_v1alpha1_KubeProxyConfiguratio
|
||||
return err
|
||||
}
|
||||
out.ShowHiddenMetricsForVersion = in.ShowHiddenMetricsForVersion
|
||||
out.DetectLocalMode = v1alpha1.LocalMode(in.DetectLocalMode)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user