You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Pulumi报错kubeconfig使用废弃v1alpha1认证API如何解决

问题根因

运行Pulumi命令时持续返回Kubeconfig user entry is using deprecated API version client.authentication.k8s.io/v1alpha1. Run 'aws eks update-kubeconfig' to update.报错,且手动修改本地kubeconfig文件无效,核心原因有三个:

  • 你修改的kubeconfig文件不是Pulumi实际读取的配置源。Pulumi Kubernetes Provider支持从栈配置、显式传参、环境变量、本地默认路径多个位置加载kubeconfig,多数场景下本地手动修改的~/.kube/config根本不是Provider实际调用的配置,部分场景下Provider甚至会读取AWS EKS资源动态生成的临时配置,完全不依赖本地文件。
  • 手动替换为v1beta1版本仍不符合要求。EKS 1.24及以上版本已经同时弃用v1alpha1、v1beta1两个旧版客户端认证API,要求必须使用client.authentication.k8s.io/v1版本,仅替换到v1beta1依然会触发弃用告警。
  • Pulumi插件或栈状态存在旧配置缓存。旧版本的kubeconfig内容可能被持久化存在栈状态、本地插件缓存中,本地文件修改后Provider不会自动同步更新,依然调用缓存里的旧配置。
可行解决方案

按优先级依次操作即可:

  • 先确认Pulumi加载的kubeconfig源:在项目目录执行pulumi config get kubernetes:kubeconfig查看栈配置中是否存储了硬编码的旧kubeconfig内容,如果有就执行pulumi config rm kubernetes:kubeconfig删除该配置,让Provider重新从本地默认路径加载配置。如果Kubernetes Provider初始化代码中显式传入了kubeconfig参数,直接检查代码中传入的配置内容是否为旧版本。
  • 不要手动修改kubeconfig字段,直接执行AWS CLI命令重新生成合规配置:aws eks update-kubeconfig --name <你的EKS集群名称> --region <集群所在AWS区域>,执行完成后打开生成的kubeconfig文件,确认用户条目下exec.apiVersion字段值为client.authentication.k8s.io/v1。
  • 如果你使用对应语言的Pulumi EKS依赖包自动对接EKS集群、没有手动指定kubeconfig,直接把项目依赖的EKS、Kubernetes相关包升级到最新稳定版,旧版本EKS组件生成kubeconfig时会硬编码v1alpha1的API版本,升级后会自动适配v1版本的认证接口。
  • 重装本地Kubernetes Provider插件清缓存:执行pulumi plugin install resource kubernetes --reinstall,完成后重新运行Pulumi命令验证报错是否消失。

注意:如果你的EKS集群版本低于1.23,v1版本认证API不兼容,需要先将EKS集群升级到1.24及以上版本再执行上述操作,否则会出现集群认证失败问题。

内容的提问来源于stack exchange,提问作者Kaizendae

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 02:57:32