使用Terraform创建kubernetes PV/PVC时指定命名空间

使用Terraform创建kubernetes PV/PVC时指定命名空间,kubernetes,terraform,Kubernetes,Terraform,我正在尝试使用Terraform在kubernetesGKE集群上创建PV/PVC 但是,不知道如何指定应在其中创建这些资源的名称空间 我尝试在spec和metadata部分添加它,但我收到一条错误消息: resource "kubernetes_persistent_volume" "jenkins-persistent-volume" { metadata { name = "${var.kubernetes_persistent_volume_metadata_name}"

我正在尝试使用
Terraform
kubernetes
GKE集群上创建PV/PVC

但是,不知道如何指定应在其中创建这些资源的
名称空间

我尝试在
spec
metadata
部分添加它,但我收到一条错误消息:

resource "kubernetes_persistent_volume" "jenkins-persistent-volume" {
  metadata {
    name = "${var.kubernetes_persistent_volume_metadata_name}"
    # tried placing it here -->> namespace = "${var.kubernetes_jenkins_namespace}"

  }
  spec {
    # tried placing it here -->> namespace = "${var.kubernetes_jenkins_namespace}"
    capacity = {
      storage = "${var.kubernetes_persistent_volume_spec_capacity_storage}"
    }
    storage_class_name = "standard"
    access_modes = ["ReadWriteMany"]
    persistent_volume_source {
      gce_persistent_disk {
        fs_type = "ext4"
        pd_name = "${google_compute_disk.jenkins-disk.name}"
      }
    }
  }
}
错误:module.jenkins.kubernetes_persistent_volume.jenkins-persistent-volume:spec.0:无效或未知键:命名空间

在何处放置这样的配置?

是群集全局对象,不存在于特定的名称空间中。(“它是集群中的一个资源,就像节点是集群资源一样。”)相应地,您不能在
kubernetes\u persistent\u卷
资源的任何位置包含命名空间名称

如果您在云环境中运行(这里您的PV正在创建一个Google存储卷),通常只创建一个持久卷声明,并让集群为您分配底层卷。pvc是命名空间范围的,Terraform明确表示您可以在
元数据
块中包含
命名空间