mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 11:21:47 +00:00
Optimize getProxyMode() to get proxy mode
The getProxyMode() does not need nodeGetter args after remove proxy-mode annotation.
This commit is contained in:
parent
32600927d9
commit
b95b95dc00
@ -225,7 +225,7 @@ func NewProxyServerDefault(config *options.ProxyServerConfig) (*ProxyServer, err
|
|||||||
var endpointsHandler proxyconfig.EndpointsConfigHandler
|
var endpointsHandler proxyconfig.EndpointsConfigHandler
|
||||||
var endpointsEventHandler proxyconfig.EndpointsHandler
|
var endpointsEventHandler proxyconfig.EndpointsHandler
|
||||||
|
|
||||||
proxyMode := getProxyMode(string(config.Mode), client.Core().Nodes(), hostname, iptInterface, iptables.LinuxKernelCompatTester{})
|
proxyMode := getProxyMode(string(config.Mode), iptInterface, iptables.LinuxKernelCompatTester{})
|
||||||
if proxyMode == proxyModeIPTables {
|
if proxyMode == proxyModeIPTables {
|
||||||
glog.V(0).Info("Using iptables Proxier.")
|
glog.V(0).Info("Using iptables Proxier.")
|
||||||
if config.IPTablesMasqueradeBit == nil {
|
if config.IPTablesMasqueradeBit == nil {
|
||||||
@ -442,19 +442,15 @@ func getConntrackMax(config *options.ProxyServerConfig) (int, error) {
|
|||||||
return 0, nil
|
return 0, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
type nodeGetter interface {
|
func getProxyMode(proxyMode string, iptver iptables.IPTablesVersioner, kcompat iptables.KernelCompatTester) string {
|
||||||
Get(hostname string, options metav1.GetOptions) (*api.Node, error)
|
|
||||||
}
|
|
||||||
|
|
||||||
func getProxyMode(proxyMode string, client nodeGetter, hostname string, iptver iptables.IPTablesVersioner, kcompat iptables.KernelCompatTester) string {
|
|
||||||
if proxyMode == proxyModeUserspace {
|
if proxyMode == proxyModeUserspace {
|
||||||
return proxyModeUserspace
|
return proxyModeUserspace
|
||||||
} else if proxyMode == proxyModeIPTables {
|
|
||||||
return tryIPTablesProxy(iptver, kcompat)
|
|
||||||
} else if proxyMode != "" {
|
|
||||||
glog.Warningf("Flag proxy-mode=%q unknown, assuming iptables proxy", proxyMode)
|
|
||||||
return tryIPTablesProxy(iptver, kcompat)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if proxyMode != "" && proxyMode != proxyModeIPTables {
|
||||||
|
glog.Warningf("Flag proxy-mode=%q unknown, assuming iptables proxy", proxyMode)
|
||||||
|
}
|
||||||
|
|
||||||
return tryIPTablesProxy(iptver, kcompat)
|
return tryIPTablesProxy(iptver, kcompat)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,11 +122,9 @@ func Test_getProxyMode(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for i, c := range cases {
|
for i, c := range cases {
|
||||||
getter := &fakeNodeInterface{}
|
|
||||||
getter.node.Annotations = map[string]string{c.annotationKey: c.annotationVal}
|
|
||||||
versioner := &fakeIPTablesVersioner{c.iptablesVersion, c.iptablesError}
|
versioner := &fakeIPTablesVersioner{c.iptablesVersion, c.iptablesError}
|
||||||
kcompater := &fakeKernelCompatTester{c.kernelCompat}
|
kcompater := &fakeKernelCompatTester{c.kernelCompat}
|
||||||
r := getProxyMode(c.flag, getter, "host", versioner, kcompater)
|
r := getProxyMode(c.flag, versioner, kcompater)
|
||||||
if r != c.expected {
|
if r != c.expected {
|
||||||
t.Errorf("Case[%d] Expected %q, got %q", i, c.expected, r)
|
t.Errorf("Case[%d] Expected %q, got %q", i, c.expected, r)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user