Argo Rollouts Dashboard无法启动及API版本错误问题求助
解决Argo Rollouts Dashboard运行问题
一、端口转发返回的处理
return (<Found>是*HTTP 302重定向*响应,说明Dashboard服务在返回跳转,按以下步骤处理: - 先确认Dashboard服务的目标端口:执行`kubectl get service argo-rollouts-dashboard`,查看`TARGET PORT`列的端口(默认是3100) - 你当前的端口转发命令`kubectl port-forward service/argo-rollouts-dashboard 31000:3100`是正确的,直接在浏览器访问`http://localhost:31000/rollouts`即可——Dashboard的默认根路径是`/rollouts`,不是根目录 ## 二、kubectl argo rollouts dashboard的API版本错误 这个错误是因为你的kubectl Argo Rollouts插件版本与Kubernetes集群的认证API版本不兼容,解决方法如下: - 先检查插件版本:执行`kubectl argo rollouts version` - 将插件升级至最新稳定版:根据你的操作系统下载对应二进制文件替换现有插件,或使用包管理器更新(比如brew用户执行`brew install argoproj/tap/kubectl-argo-rollouts`) - 若你的集群是Kubernetes v1.24+版本,必须使用支持`client.authentication.k8s.io/v1`的插件版本,`client.authentication.k8s.io/v1alpha1`已被废弃 ## 三、ALB访问无内容+健康检查失败的解决 ### 1. 健康检查配置问题 Argo Rollouts Dashboard的健康检查端点是`/healthz`,需修改ALB的健康检查设置: - 将健康检查路径从默认的`/`改为`/healthz` - 确保健康检查的端口与服务目标端口一致(默认3100) ### 2. 服务暴露配置问题 检查Helm安装时的服务类型及Ingress配置: - 若使用LoadBalancer类型服务,确认服务的`externalTrafficPolicy`为`Cluster`(默认值),若设置为`Local`可能导致ALB无法访问 - 更推荐通过Ingress暴露服务,步骤如下: 1. 安装AWS ALB Ingress Controller 2. 创建Ingress资源,配置路径指向`/rollouts`,后端服务指向`argo-rollouts-dashboard`的3100端口 3. 为Ingress配置正确的注解,例如`alb.ingress.kubernetes.io/scheme: internet-facing` ### 3. 验证Pod状态 执行`kubectl get pods -l app.kubernetes.io/name=argo-rollouts-dashboard`,确认所有Pod处于`Running`状态;若存在`CrashLoopBackOff`状态的Pod,执行`kubectl logs <pod-name>`查看日志排查问题 内容的提问来源于stack exchange,提问作者Ayush Arora)
相关产品推荐
相关产品推荐

