我已使用kube-apiserver
的CA身份验证启动--secure-port=8181
,并且不安全的地址和端口是默认地址(localhost:8080
):
$ kubectl cluster-info
Kubernetes master is running at localhost:8080
kubernetes-dashboard is running at localhost:8080/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard
浏览器中的kubernetes-dashboard
页面返回以下错误:
Get http://localhost:8080/api/v1/replicationcontrollers: dial tcp [::1]:8080: getsockopt: connection refused
但网址" http S ://域名: 8181 / api / v1 / replicationcontrollers"也将返回RC。
那么有没有办法只使用安全端口?我的意思是通过https访问kubernetes仪表板。
答案 0 :(得分:0)
您可以通过https在其前面部署Ingress控制器来公开任何Kubernetes服务,例如nginx:https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx。这个nginx控制器将终止tls,所以即使你的后端不支持https它应该工作。通过它可以通过以下方式强制执行 https:https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx#server-side-https-enforcement