我已经按照使用Terraform在AWS创建EKS集群的指南进行了操作。
我已经配置了提供程序使用我的kubectl配置,但是当尝试推送一个简单的configmap时,我会收到以下错误消息:
configmaps被禁止:用户“system:anonymous”不能在名称空间“kube-system”中创建configmaps
我知道提供程序正在获取部分配置,但我似乎无法进行身份验证。我怀疑这是因为EKS使用heptio进行身份验证,而我不确定Terraform使用的K8s Go客户端是否支持heptio。然而,考虑到Terraform在EKS正式发布时发布了他们的AWS EKS支持,我怀疑他们也会更新他们的Terraform提供程序以使其与之配合工作。
现在甚至可能做到这一点吗?有替代方案吗?
https://www.terraform.io/docs/providers/aws/guides/eks-getting-started.html
我还将连接到集群的输出复制到了~/.kube/config-eks文件中。我已经验证过这个成功工作,因为我能够连接到集群并手动部署容器。然而,现在我正在尝试使用Terraform Kubernetes提供程序连接到集群,但似乎无法正确配置提供程序。我已经配置了提供程序使用我的kubectl配置,但是当尝试推送一个简单的configmap时,我会收到以下错误消息:
configmaps被禁止:用户“system:anonymous”不能在名称空间“kube-system”中创建configmaps
我知道提供程序正在获取部分配置,但我似乎无法进行身份验证。我怀疑这是因为EKS使用heptio进行身份验证,而我不确定Terraform使用的K8s Go客户端是否支持heptio。然而,考虑到Terraform在EKS正式发布时发布了他们的AWS EKS支持,我怀疑他们也会更新他们的Terraform提供程序以使其与之配合工作。
现在甚至可能做到这一点吗?有替代方案吗?
depends_on
可以帮助您解决增量配置问题。首先创建第一个资源,然后获取令牌。这只是一个想法,没有测试过。 - Bastian