mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
use network proxy for proxy subresources
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
This commit is contained in:
parent
47511ef09c
commit
6729bfd648
@ -49,6 +49,7 @@ go_library(
|
|||||||
"//staging/src/k8s.io/apiserver/pkg/endpoints/openapi:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/endpoints/openapi:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/features:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/features:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apiserver/pkg/server/egressselector:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/server/filters:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/server/filters:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/server/healthz:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/server/healthz:go_default_library",
|
||||||
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
|
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
|
||||||
|
@ -44,6 +44,7 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/authorization/authorizer"
|
"k8s.io/apiserver/pkg/authorization/authorizer"
|
||||||
openapinamer "k8s.io/apiserver/pkg/endpoints/openapi"
|
openapinamer "k8s.io/apiserver/pkg/endpoints/openapi"
|
||||||
genericapiserver "k8s.io/apiserver/pkg/server"
|
genericapiserver "k8s.io/apiserver/pkg/server"
|
||||||
|
"k8s.io/apiserver/pkg/server/egressselector"
|
||||||
"k8s.io/apiserver/pkg/server/filters"
|
"k8s.io/apiserver/pkg/server/filters"
|
||||||
serveroptions "k8s.io/apiserver/pkg/server/options"
|
serveroptions "k8s.io/apiserver/pkg/server/options"
|
||||||
serverstorage "k8s.io/apiserver/pkg/server/storage"
|
serverstorage "k8s.io/apiserver/pkg/server/storage"
|
||||||
@ -379,6 +380,16 @@ func CreateKubeAPIServerConfig(
|
|||||||
if config.GenericConfig.EgressSelector != nil {
|
if config.GenericConfig.EgressSelector != nil {
|
||||||
// Use the config.GenericConfig.EgressSelector lookup to find the dialer to connect to the kubelet
|
// Use the config.GenericConfig.EgressSelector lookup to find the dialer to connect to the kubelet
|
||||||
config.ExtraConfig.KubeletClientConfig.Lookup = config.GenericConfig.EgressSelector.Lookup
|
config.ExtraConfig.KubeletClientConfig.Lookup = config.GenericConfig.EgressSelector.Lookup
|
||||||
|
|
||||||
|
// Use the config.GenericConfig.EgressSelector lookup as the transport used by the "proxy" subresources.
|
||||||
|
networkContext := egressselector.Cluster.AsNetworkContext()
|
||||||
|
dialer, err := config.GenericConfig.EgressSelector.Lookup(networkContext)
|
||||||
|
if err != nil {
|
||||||
|
return nil, nil, nil, nil, err
|
||||||
|
}
|
||||||
|
c := proxyTransport.Clone()
|
||||||
|
c.DialContext = dialer
|
||||||
|
config.ExtraConfig.ProxyTransport = c
|
||||||
}
|
}
|
||||||
|
|
||||||
return config, insecureServingInfo, serviceResolver, pluginInitializers, nil
|
return config, insecureServingInfo, serviceResolver, pluginInitializers, nil
|
||||||
|
Loading…
Reference in New Issue
Block a user