通过Ingress的Kubernetes仪表板 [英] Kubernetes dashboard through Ingress
问题描述
我有带有Ingress/Traefik控制器的Kubernetes集群
I have Kubernetes Cluster with Ingress/Traefik controller
此外,我从此处使用标准配置安装了仪表板: https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
Also, I installed the dashboard using the standard config from here: https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
我正在尝试通过Ingress访问信息中心,但出现404错误
I'm trying to access the Dashboard through Ingress, but I get 404 error
404 page not found
我的ingress.yml文件如下
My ingress.yml file looks like this
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: "traefik"
name: app-ingress-system
namespace: kube-system
spec:
tls:
- hosts:
- dashboard.domain.com
secretName: kubernetes-dashboard-certs
rules:
- host: dashboard.domain.com
http:
paths:
- path: /
backend:
serviceName: kubernetes-dashboard
servicePort: 443
我尝试了不同的方法-路径:(例如/dashboard,/proxy)相同的结果
I've tried different - path: (like /dashboard, /proxy) same result
推荐答案
之所以会发生这种情况,是因为kubernetes-dashboard-certs
没有traefik期望的文件tls.crt
和tls.key
.您应该在traefik日志中找到它.
This occurs because kubernetes-dashboard-certs
doesnot have the file tls.crt
and tls.key
which are expected by traefik. You should get this in the traefik logs.
下一个问题将出现在traefik证书和仪表板证书之间.我仍然不知道如何正确解决此问题,并使用以下选项配置traefik:
Next problems will be between traefik certificates and dashboard certificates. I still not understand how to fix properly this and configure traefik with the option :
ssl.insecureSkipVerify: "true"
我有的最后一个是http端点不接受登录,然后最终我声明了将http重定向到https的入口,如下所示:
The last one I had, is that http endpoint doesnot accept login, then finally I declare the ingress that redirect http to https like this :
kubectl apply -f - << EOF
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
annotations:
kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/ssl-redirect: "true"
spec:
rules:
- host: dashboard.domain.com
http:
paths:
- path: /
backend:
serviceName: kubernetes-dashboard
servicePort: 443
EOF
这篇关于通过Ingress的Kubernetes仪表板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!