通过Ingress的Kubernetes仪表板 [英] Kubernetes dashboard through Ingress

查看:90
本文介绍了通过Ingress的Kubernetes仪表板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有带有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.crttls.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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆