Amazon web services 仅将AWS Aurora引擎版本指定为Terraform中的主要版本号

Amazon web services 仅将AWS Aurora引擎版本指定为Terraform中的主要版本号,amazon-web-services,terraform,terraform-provider-aws,amazon-aurora,Amazon Web Services,Terraform,Terraform Provider Aws,Amazon Aurora,我有一些创建AWS Aurora RDS群集的地形代码: resource "aws_rds_cluster" "default" { provider = aws.customer cluster_identifier = "my_id" engine = "aurora-mysql" engine_version

我有一些创建AWS Aurora RDS群集的地形代码:

resource "aws_rds_cluster" "default" {
  provider                = aws.customer
  cluster_identifier      = "my_id"
  engine                  = "aurora-mysql"
  engine_version          = "5.7.mysql_aurora.2.03.2"
  database_name           = var.db_name
  port                    = var.db_port
  master_username         = var.db_master_username
  master_password         = random_password.sqlpassword.result
  backup_retention_period = 5
  preferred_backup_window = "07:00-09:00"
  skip_final_snapshot     = true
  db_subnet_group_name    = aws_db_subnet_group.default.name
  vpc_security_group_ids  = [aws_security_group.rds.id]
  deletion_protection     = true
}
这段代码已经运行了很长一段时间了,直到最近,
terraformapply
失败并出现此错误
错误:无法修改RDS集群(my_id):InvalidParameterCombination:无法将aurora mysql从5.7.mysql_aurora.2.07.2升级到5.7.mysql_aurora.2.03.2

长话短说,AWS在维护窗口中升级了次要版本号,并拒绝允许Terraform降级数据库。我同意AWS这样做,但我不想每次都提交新的Terraform代码

我尝试使用
engine\u version=“5.7.mysql\u aurora.2”
engine版本中不那么具体,但失败如下:
InvalidParameterCombination:无法从5.7.mysql\u aurora.2.07.2中找到升级目标,请求的版本为5.7.mysql\u aurora.2。


什么样的地形方法可以允许RDS次要版本在AWS执行修改后浮动?

您可以向资源添加
忽略更改
生命周期块

resource "aws_rds_cluster" "default" {
  provider                = aws.customer
  cluster_identifier      = "my_id"
  engine                  = "aurora-mysql"
  engine_version          = "5.7.mysql_aurora.2.03.2"
  database_name           = var.db_name
  port                    = var.db_port
  master_username         = var.db_master_username
  master_password         = random_password.sqlpassword.result
  backup_retention_period = 5
  preferred_backup_window = "07:00-09:00"
  skip_final_snapshot     = true
  db_subnet_group_name    = aws_db_subnet_group.default.name
  vpc_security_group_ids  = [aws_security_group.rds.id]
  deletion_protection     = true

  lifecycle {
    ignore_changes = [
      engine_version,
    ]
  }
}
您可以在此处阅读更多关于此的信息: