Kubeflow Dashboard返回403 Forbidden及功能页no healthy upstream问题求助
Kubeflow Dashboard访问异常问题排查与解决方案
1. 403 Forbidden + dex-auth连接报错修复
dex-auth报错
dial tcp 10.152.183.1:443: connect: connection refused为microk8s重启后服务启动顺序异常导致,无需重装microk8s
- 第一步验证microk8s基础服务状态,执行命令:
microk8s status --wait-ready,若返回apiserver异常,先执行microk8s stop && microk8s start等待所有基础组件启动完成 - 第二步检查dex-auth的RBAC权限配置:执行
kubectl get clusterrolebinding | grep dex,无返回结果则重新绑定dex对应集群角色 - 第三步重建dex-auth pod:执行
kubectl delete pod -n kubeflow -l app=dex-auth,等待pod重建后查看日志确认无APIServer连接报错
2. 子页面no healthy upstream报错修复
该报错为Istio路由指向的后端服务异常,和额外安装的Knative、Istio版本冲突直接相关
- 检查kubeflow命名空间下pipeline相关服务状态:执行
kubectl get pods -n kubeflow | grep pipeline,异常Crash的pod优先查看日志定位启动失败原因 - 确认kubeflow命名空间Istio sidecar注入标签:执行
kubectl get ns kubeflow --show-labels,确认存在istio-injection=enabled标签,缺失则执行kubectl label namespace kubeflow istio-injection=enabled --overwrite,之后重启所有pipeline相关pod - 检查Istio虚拟服务路由配置:执行
kubectl get vs -n kubeflow,确认experiments、runs、pipelines对应路由的后端服务名、端口配置正确,配置错乱可执行microk8s disable kubeflow && microk8s enable kubeflow重新初始化kubeflow组件,不会删除已部署的模型服务资源 - 解决Istio版本冲突:kubeflow 1.2默认适配Istio 1.7版本,若额外安装的适配Knative v0.24的Istio版本高于1.7会出现路由兼容问题,可将Knative、KFServing部署到独立命名空间,或基于kubeflow自带的Istio版本安装对应适配的Knative版本
内容的提问来源于stack exchange,提问作者Ioana Ciangau
相关产品推荐
相关产品推荐

