terraform kubernetes provider: место назначения пространства имен

Я создаю вход с помощью terraform kubernetes_ingress ресурс:

resource "kubernetes_ingress" "this" {
    metadata {
        name = "mongodb-ingress"
    }

    spec {
        backend {
            service_name = "mongodb"
            service_port = 9092
        }

        rule {
            http {
                path {
                    path = "/mongodb/*"
                    backend {
                        service_name = "mongodb"
                        service_port = 9092
                    }
                }
            }
        }
    }
}

Мне не ясно, какое пространство имен будет присвоено этому правилу входа.

Я пытался узнать, есть ли namespace собственность, но я не совсем понимаю, где она.

Есть идеи?

1 ответ

Решение

В провайдере terraform kubernetes есть свойство namespace. Пожалуйста, возьмите лут на здесь.

Если вы не укажете пространство имен, оно будет создано в пространстве имен по умолчанию.

resource "kubernetes_ingress" "this" {
    metadata {
        name = "mongodb-ingress"
        namespace = "dev"
    }

    spec {
        backend {
            service_name = "mongodb"
            service_port = 9092
        }

        rule {
            http {
                path {
                    path = "/mongodb/*"
                    backend {
                        service_name = "mongodb"
                        service_port = 9092
                    }
                }
            }
        }
    }
}

kubectl get ing -n dev
NAME              CLASS    HOSTS   ADDRESS   PORTS   AGE
mongodb-ingress   <none>   *                 80      7s
Другие вопросы по тегам