Commit 15ad1632 authored by Brad Davidson's avatar Brad Davidson Committed by Brad Davidson

Fix egress selector proxy/bind-address support

Use same kubelet-preferred-address-types setting as RKE2 to improve reliability of the egress selector when using a HTTP proxy. Also, use BindAddressOrLoopback to ensure that the correct supervisor address is used when --bind-address is set. Signed-off-by: 's avatarBrad Davidson <brad.davidson@rancher.com>
parent fc9ffe6c
...@@ -734,7 +734,7 @@ func genEgressSelectorConfig(controlConfig *config.Control) error { ...@@ -734,7 +734,7 @@ func genEgressSelectorConfig(controlConfig *config.Control) error {
ProxyProtocol: apiserver.ProtocolHTTPConnect, ProxyProtocol: apiserver.ProtocolHTTPConnect,
Transport: &apiserver.Transport{ Transport: &apiserver.Transport{
TCP: &apiserver.TCPTransport{ TCP: &apiserver.TCPTransport{
URL: fmt.Sprintf("https://%s:%d", controlConfig.Loopback(), controlConfig.SupervisorPort), URL: fmt.Sprintf("https://%s:%d", controlConfig.BindAddressOrLoopback(false), controlConfig.SupervisorPort),
TLSConfig: &apiserver.TLSConfig{ TLSConfig: &apiserver.TLSConfig{
CABundle: controlConfig.Runtime.ServerCA, CABundle: controlConfig.Runtime.ServerCA,
ClientKey: controlConfig.Runtime.ClientKubeAPIKey, ClientKey: controlConfig.Runtime.ClientKubeAPIKey,
......
...@@ -193,6 +193,7 @@ func apiServer(ctx context.Context, cfg *config.Control) error { ...@@ -193,6 +193,7 @@ func apiServer(ctx context.Context, cfg *config.Control) error {
argsMap["kubelet-certificate-authority"] = runtime.ServerCA argsMap["kubelet-certificate-authority"] = runtime.ServerCA
argsMap["kubelet-client-certificate"] = runtime.ClientKubeAPICert argsMap["kubelet-client-certificate"] = runtime.ClientKubeAPICert
argsMap["kubelet-client-key"] = runtime.ClientKubeAPIKey argsMap["kubelet-client-key"] = runtime.ClientKubeAPIKey
argsMap["kubelet-preferred-address-types"] = "InternalIP,ExternalIP,Hostname"
argsMap["requestheader-client-ca-file"] = runtime.RequestHeaderCA argsMap["requestheader-client-ca-file"] = runtime.RequestHeaderCA
argsMap["requestheader-allowed-names"] = deps.RequestHeaderCN argsMap["requestheader-allowed-names"] = deps.RequestHeaderCN
argsMap["proxy-client-cert-file"] = runtime.ClientAuthProxyCert argsMap["proxy-client-cert-file"] = runtime.ClientAuthProxyCert
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment