【问题标题】:How to configure Terraform Kubernetes provider for EKS如何为 EKS 配置 Terraform Kubernetes 提供程序
【发布时间】:2018-12-14 07:03:35
【问题描述】:

我正在尝试在 Terraform 中配置 kubernetes 提供程序,但是到目前为止我一直无法做到。 EKS 使用 heptio 身份验证器,因此我没有可以提供给 Kubernetes 提供商的证书路径。实现此目的的正确方法是什么?

我已经尝试过这样的事情:

provider "kubernetes" {
  config_context_auth_info = "context1"
  config_context_cluster   = "kubernetes"
}

得到结果:

Error: Error applying plan:

1 error(s) occurred:

* kubernetes_namespace.example: 1 error(s) occurred:

* kubernetes_namespace.example: Post http://localhost/api/v1/namespaces: dial tcp [::1]:80: getsockopt: connection refused

我有一个 ~/.kube/config,我可能缺少什么?

【问题讨论】:

    标签: kubernetes terraform amazon-eks


    【解决方案1】:

    这种行为可能是由已知的核心错误引起的:core: No interpolation for cross-provider dependencies #12393

    Terraform Github 上存在一个问题,该问题描述了具有相同错误的类似案例 - #12869
    这是关于与 GKE 相关的问题,但我想它也可能会影响 EKS。

    这里有一个link 的使用 kubernetes_provider 的示例。
    它也与 GKE 有关,但我相信只要稍作改动,它就可以应用于 EKS。

    考虑在 StackOverflow 上与您的问题相关的另一个好 answer
    简而言之,解决方案是在第一阶段创建Kubernetes集群,然后在第二阶段创建Kubernetes对象。

    【讨论】:

      【解决方案2】:

      对于使用 Terraform 的 EKS 提供者。

      data "aws_region" "current" {}
      
      data "aws_availability_zones" "available" {}
      
      provider "kubernetes" {
        config_context = "aws-test-terraform"
      }
      

      【讨论】:

        猜你喜欢
        • 2018-12-10
        • 2021-05-29
        • 2021-06-16
        • 2021-03-08
        • 2023-01-19
        • 2023-04-02
        • 2021-08-04
        • 2020-12-17
        • 2020-09-01
        相关资源
        最近更新 更多