#kubernetes #terraform #google-kubernetes-engine #terraform-provider-kubernetes
#kubernetes #terraform #google-kubernetes-engine #terraform-provider-kubernetes
Вопрос:
Я создаю кластер kubernetes для размещения службы и добавил внутренний балансировщик нагрузки для маршрутизации трафика между экземплярами моей виртуальной машины и кластером kubernetes. Я хочу добавить ярлык службы во внешний интерфейс балансировщика нагрузки, чтобы я мог использовать DNS-имя вместо IP-адреса. Но я не знаю аннотацию, которую следует использовать для добавления метки службы? Моя конфигурация terraform выглядит следующим образом
Есть идеи, где я могу найти список поддерживаемых аннотаций
resource "kubernetes_manifest" "service_ilb" {
provider = kubernetes-alpha
manifest = {
"apiVersion" = "v1"
"kind" = "Service"
"metadata" = {
"name" = "ilb-service"
"namespace" = var.namespace
"annotations" = {
"cloud.google.com/load-balancer-type" = "Internal"
"networking.gke.io/internal-load-balancer-allow-global-access" = "true"
"networking.gke.io/internal-load-balancer-subnet" = var.subnetwork
# Does not work
"networking.gke.io/internal-load-balancer-service-label" = "my-dns-name"
}
"labels" = {
"app.kubernetes.io/component" = "rabbitmq-server"
"app.kubernetes.io/name" = "rabbitmq-instance"
}
}
"spec" = {
"type" = "LoadBalancer"
"ports" = [
{
"name" = "amqp-tls"
"port" = 5671
"targetPort" = 5671
"protocol" = "TCP"
"nodePort" = 31212
},
{
"name" = "http"
"port" = 15672
"targetPort" = 15672
"protocol" = "TCP"
"nodePort" = 32511
},
]
"selector" = {
"app.kubernetes.io/component" = "rabbitmq-server"
"app.kubernetes.io/name" = "rabbitmq-instance"
}
}
}
/*
wait_for = {
fields = {
# Check an ingress has an IP
"status.loadBalancer.ingress.0.ip" = "^(\d (\.|$)){4}"
}
}
*/
}
Заранее спасибо