Bloque de Terraform para condiciones repetidas de alerta de GCP: ¿cómo extraerlas en una constante?
Estoy configurando varias alarmas en terraform y varias tienen la misma política. ¿Puedo extraerla en algún tipo de variable para no tener que codificarla en cada alarma?
Las alarmas tendrán otras condiciones además de esa condición común.
Ejemplo:
resource "google_monitoring_alert_policy" "alertpolicy1" {
display_name = "My Alert Policy 1"
combiner = "OR"
conditions {
display_name = "test condition"
condition_threshold {
filter = "metric.type=\"compute.googleapis.com/instance/disk/write_bytes_count\" AND resource.type=\"gce_instance\""
duration = "60s"
comparison = "COMPARISON_GT"
aggregations {
alignment_period = "60s"
per_series_aligner = "ALIGN_RATE"
}
}
}
}
conditions {
display_name = "test condition 2"
condition_threshold {
filter = "metric.type=\"compute.googleapis.com/instance/disk/write_bytes_count\" AND resource.type=\"gce_instance\""
duration = "60s"
comparison = "COMPARISON_GT"
aggregations {
alignment_period = "60s"
per_series_aligner = "ALIGN_RATE"
}
}
}
user_labels = {
foo = "bar"
}
}
resource "google_monitoring_alert_policy" "alertpolicy2" {
display_name = "My Alert Policy 2"
combiner = "OR"
conditions {
display_name = "test condition"
condition_threshold {
filter = "metric.type=\"compute.googleapis.com/instance/disk/write_bytes_count\" AND resource.type=\"gce_instance\""
duration = "60s"
comparison = "COMPARISON_GT"
aggregations {
alignment_period = "60s"
per_series_aligner = "ALIGN_RATE"
}
}
}
user_labels = {
foo = "bar"
}
}
¿Puedo evitar repetir test condition
aquí?
davy.ai
Sí, puedes extraer la condición común en un módulo separado y pasarla como un parámetro a los bloques de recursos para
alert_policy_1
yalert_policy_2
. De esta manera, puedes definirtest condition
una vez y reutilizarlo en múltiples bloques de recursos.Ejemplo:
En este ejemplo, el módulo
test_condition
define la condición común y sus atributos. Los recursosalert_policy_1
yalert_policy_2
utilizan ambos latest condition
, pero también definen otras condiciones o atributos específicos para cada política.