gpt4 book ai didi

amazon-web-services - 在 Terraform 中仅将 AWS Aurora 引擎版本指定为主要版本号

转载 作者:行者123 更新时间:2023-12-04 12:57:56 25 4
gpt4 key购买 nike

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

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
}
这段代码已经运行了很长时间,直到最近 terraform apply失败并出现此错误 Error: Failed to modify RDS Cluster (my_id): InvalidParameterCombination: Cannot upgrade aurora-mysql from 5.7.mysql_aurora.2.07.2 to 5.7.mysql_aurora.2.03.2长话短说,AWS 在维护窗口升级了次要版本号,并拒绝让 Terraform 降级数据库。我对 AWS 这样做很好,但我不想每次发生这种情况时都必须提交新的 Terraform 代码。
我尝试在 engine version 中不那么具体通过使用 engine_version="5.7.mysql_aurora.2" ,但这样失败了: InvalidParameterCombination: Cannot find upgrade target from 5.7.mysql_aurora.2.07.2 with requested version 5.7.mysql_aurora.2.允许 RDS 次要版本随 AWS 执行的修改而 float 的合适 Terraform 方法是什么?

最佳答案

您可以添加 ignore_changes资源的生命周期块。

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,
]
}
}
您可以在此处阅读更多相关信息: https://www.terraform.io/docs/language/meta-arguments/lifecycle.html

关于amazon-web-services - 在 Terraform 中仅将 AWS Aurora 引擎版本指定为主要版本号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63909346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com