小编kri*_*nik的帖子

我们如何在多个 terraform 提供者中创建相同的资源?

我正在使用 terraform 创建 Kubernetes 命名空间。下面的示例

resource "kubernetes_namespace" "test1" {
  metadata {
    name = local.ns_name
  }

}
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用 terraform 按照此链接创建蓝/绿类型的部署。作为其中的一部分,我现在创建了两个 kubernetes 集群。一个是蓝色的,另一个是绿色的,现在我有两个 kubernetes 提供者

provider "kubernetes" {
  alias                  = "kubernetes_blue"
}

provider "kubernetes" {
  alias                  = "kubernetes_green"
}
Run Code Online (Sandbox Code Playgroud)

我想了解是否有一种方法,我可以有一些条件kubernetes_namespace,根据标志var.enable_green_sidevar.enable_blue_side,我可以在多个 kubernetes 集群中创建相同的命名空间,而不必重复整个资源块,如下所示

resource "kubernetes_namespace" "test1" {
  metadata {
    name = local.ns_name
  }

  provider = kubernetes.kubernetes_blue  
}

resource "kubernetes_namespace" "test2" {
  metadata {
    name = local.ns_name
  }

  provider = kubernetes.kubernetes_green  
}
Run Code Online (Sandbox Code Playgroud)

提前致谢。

kubernetes terraform terraform-provider-kubernetes

1
推荐指数
1
解决办法
2289
查看次数