用于HTTPS端点的Kubernetes API代理

时间:2017-09-23 23:49:46

标签: kubernetes kubernetes-security

Kubernetes表面API代理,允许通过例如https://myhost.com/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard/

查询内部服务

这一切都很好,也很好。但是,为了安全起见合规性原因,我们所有的服务都公开了HTTPS端点。试图通过转到https://myhost/api/v1/proxy/namespaces/default/services/myhttpsservice:3000/来访问它们

 Error: 'read tcp 172.20.122.129:48830->100.96.29.113:3000: read: connection reset by peer' 
Trying to reach: 'http://100.96.29.113:3000/'

因为端点100.96.29.113:3000实际上是https。

有没有办法配置代理以将SSL应用于特定服务端点?

(编辑:如果目前无法做到这一点,用于跟踪功能请求的相关github问题链接也是可接受的答案,直到它为止)

1 个答案:

答案 0 :(得分:1)

正如在https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#manually-constructing-apiserver-proxy-urls中所记录的那样(并指出松弛),您可以通过在服务名称前加上" https:"来访问HTTPS后面的服务。 ;

使用上面的示例,正​​确的是:https://myhost/api/v1/proxy/namespaces/default/services/https:myhttpsservice:3000/