我已按照说明使用Terraform在AWS中创建EKS集群。
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提供程序来使用它。
现在甚至可以这样做吗?有其他选择吗?
答案 0 :(得分:4)
在此处添加了执行身份验证:https://github.com/kubernetes/client-go/commit/19c591bac28a94ca793a2f18a0cf0f2e800fad04
这是用于自定义身份验证插件的内容,已于2月7日发布。
目前,Terraform不支持新的基于exec的身份验证提供程序,但是存在一个变通方法:https://github.com/terraform-providers/terraform-provider-kubernetes/issues/161
也就是说,如果我有空闲时间,我将从事公关工作。