Terraform: данное значение недопустимо для переменной backup_configuration: требуется атрибут backup_retention_settings

Я пытаюсь настроить автоматический период хранения резервных копий PostgreSQL с помощью terraform. Но я не могу передать значение backup_retention_settings. Независимо от того, какое значение я предоставил, я получаю сообщение об ошибке.

Ошибка: недопустимое значение входной переменной

в terraform.tfvars строка 3: 3: backup_configuration = {
4: enabled = true 5: start_time
= 20:00 6: location = null 7: point_in_time_recovery_enabled = false 8: 9:}

Данное значение недопустимо для переменной backup_configuration: требуется атрибут backup_retention_settings.

Вот код для моего Main.tf

dynamic "backup_configuration" {
      for_each = [var.backup_configuration]
      content {
        binary_log_enabled             = false
        enabled                        = lookup(backup_configuration.value, "enabled", null)
        start_time                     = lookup(backup_configuration.value, "start_time", null)
        location                       = lookup(backup_configuration.value, "location", null)
        point_in_time_recovery_enabled = lookup(backup_configuration.value, "point_in_time_recovery_enabled", false)
        backup_retention_settings      = lookup(backup_configuration.value, "backup_retention_settings", null)
      }
    }

из varaiables.tf

variable "backup_configuration" {
  description = "The backup_configuration settings subblock for the database setings"
  type = object({
    enabled                        = bool
    start_time                     = string
    location                       = string
    point_in_time_recovery_enabled = bool
     backup_retention_settings = object({
      retained_backups = string
      retention_unit   = string
    })
  })
  default = {
    enabled                        = false
    start_time                     = null
    location                       = null
    point_in_time_recovery_enabled = false
    backup_retention_settings =  {
       retained_backups = "10"
      retention_unit   = "10"
    }
  }
}

Не могли бы вы помочь мне, как я могу передать значения в настройки хранения.

Вот шаблон терраформы, который я использовал. https://github.com/terraform-google-modules/terraform-google-sql-db/pull/203/commit/d6082b691742af62b217ae200bbc18895cc6dac0


person Waqas Sarwar MVP    schedule 09.04.2021    source источник


Ответы (1)


point_in_time_recovery_enabled предназначен только для PostgreSQL. :

(Необязательно) Истина, если включено восстановление на определенный момент времени. Будет перезапускать базу данных, если она включена после создания экземпляра. Действительно только для экземпляров PostgreSQL.

person Marcin    schedule 09.04.2021
comment
Да, извините, я забыл упомянуть. Я использовал PostgreSQL. ты знаешь, как использовать эти параметры? - person Waqas Sarwar MVP; 12.04.2021