Панель управления Kubernetes через Ingress

У меня есть кластер Kubernetes с контроллером Ingress / Traefik

Кроме того, я установил панель управления, используя стандартную конфигурацию отсюда: https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

Я пытаюсь получить доступ к панели управления через Ingress, но получаю ошибку 404

404 page not found

Мой файл ingress.yml выглядит так

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

Я пробовал другой - путь: (например, / приборная панель, / прокси) тот же результат


person Taras Katrichenko    schedule 13.09.2018    source источник
comment
Можете ли вы опубликовать детали режима, касающиеся конфигурации. Вы также пробовали с портом 80?   -  person Crou    schedule 13.09.2018
comment
Привет @Crou, спасибо за ответ. Я использую конфигурацию отсюда raw.githubusercontent.com / kubernetes / dashboard / master / src /   -  person Taras Katrichenko    schedule 16.09.2018
comment
путь в вашем правиле входа должен быть path: / dashboard   -  person c4f4t0r    schedule 27.01.2019


Ответы (1)


Это происходит из-за того, что kubernetes-dashboard-certs не имеет файлов tls.crt и tls.key, которые ожидает traefik. Вы должны получить это в журналах traefik.

Следующие проблемы будут между сертификатами traefik и сертификатами приборной панели. Я до сих пор не понимаю, как это исправить и настроить траэфик с опцией:

 ssl.insecureSkipVerify: "true"

Последнее, что у меня было, это то, что конечная точка http не принимает вход в систему, затем, наконец, я объявляю вход, который перенаправляет http на https следующим образом:

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
person mpromonet    schedule 07.08.2019
comment
чтобы обойти ошибку сертификатов, когда traefik пытался получить доступ к backend kubernetes-dashboard через SSL, я добавил - --serversTransport.insecureSkipVerify=true в args в моей конфигурации deamonset traefik. справочник - person n002213f; 05.06.2021