Я установил Kubernetes Dashboard в кластер Kubernetes 1.13, как описано здесь :
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
Я также настроил панель управления для небезопасного обслуживания ее содержимого, потому что я хочу выставить еечерез Ingress
в https://my-cluster/dashboard
, где соединение TLS будет прервано на входном контроллере.
- Я отредактировал
service/kubernetes-dashboard
в пространстве имен kube-system
и изменил ports
с {port:443, targetPort:8443}
на {port:80, protocol:TCP, targetPort:9090}
. - Я отредактировал
deployment/kubernetes-dashboard
в пространстве имен kube-system
и изменил ports
с {containerPort: 8443, protocol:TCP}
на {containerPort: 9090, protocol:TCP}
(и livenessProbe
аналогично).Я также изменил args
с [ --auto-generate-certificates ]
на [ --enable-insecure-login ]
.
Это позволяет мне связываться с приборной панелью с узла кластера через HTTP по IP-адресу кластера службы и порту 80 (нет Ingress
уже настроен).
Я также создал пример пользователя, как объяснено здесь , и извлек его токен.Токен работает, например, в kubectl --token $token get pod --all-namespaces
, поэтому он, очевидно, обладает привилегиями cluster-admin
.Однако, если я ввожу тот же самый токен в экран входа в систему на панели мониторинга, я получу сообщение «Ошибка аутентификации. Пожалуйста, попробуйте еще раз».
В чем может быть причина?Как я могу дополнительно диагностировать и решить проблему?(Журнал панели мониторинга на данный момент не помогает.)
ОБНОВЛЕНИЕ Если я сохраняю стандартную конфигурацию панели управления (т. Е. Для безопасного доступа по HTTPS), тот же токен принимается.