При попытке изменить имя хоста в существующем правиле ALB всегда выдается сообщение об ошибке:
«Ошибка создания правила прослушивателя LB: PriorityInUse: приоритет« 40 »в настоящее время используется»
Пробовал рекомендации от здесь но ничего не помогает.Попытка не указывать имя для TargetGroup, использование create_before_destroy, случайные строки для имени и т. Д. Terraform версия 0.10.7, поставщик AWS 1.54.0 (пробовал также 2.10.0)
При последующем применении Terraform применяются изменения
TF config:
resource "aws_lb_listener_rule" "rule1" {
depends_on = ["aws_lb_target_group.tg1"]
lifecycle {
create_before_destroy = true
}
listener_arn = "${aws_lb_listener.listener.arn}"
priority = "40"
action {
type = "forward"
target_group_arn = "${aws_lb_target_group.tg1.id}"
}
condition {
field = "host-header"
values = ["www.hostname.com"]
}
condition {
field = "path-pattern"
values = ["/STATIC"]
}
}
resource "aws_lb_target_group" "tg1" {
lifecycle {
create_before_destroy = true
}
port = "443"
protocol = "HTTPS"
vpc_id = "${var.vpc_id}"
health_check {
interval = "10"
path = "/"
port= "443"
protocol = "HTTPS"
timeout = "9"
healthy_threshold = "5"
unhealthy_threshold = "3"
}
tags {
Name = "${terraform.workspace}-service1"
}
}
Я ожидаю, что, как только вы измените имя хоста в правиле ALB, Terraform будет обрабатывать это изменение без проблем, но похоже, что он пытается повторносоздать правило ALB с новым именем хоста, но с тем же номером приоритета, и, следовательно, оно не будет выполнено.После повторного запуска terraform применить изменение.
Возможно, существуют обходные пути для проверки существующего имени приоритета правила ALB и указания нового / другого, но это должно быть обработано изначально Terraform, так как в противном случае нам потребуетсяОтслеживайте приоритетные номера, чтобы избежать столкновений.
Кто-нибудь имел такую же проблему и как-то решил ее?
Заранее спасибо.