导入 AWS RDS Aurora 5.7 是否适用于 v0.11.7?

Does importing an AWS RDS Aurora 5.7 work in v0.11.7?

我正在将 Aurora RDS 从 Aurora 1.x (MySQL 5.6) 升级到 Aurora 2.x (MySQL 5.7)。我已经在 AWS 中完成了(手动通过快照,因为它仍然不支持通过简单的点击),我正在尝试 state rm 导入 Terraform(我已经升级了 Terraform 中的代码),它成功了,但是 terraform plan 出于以下原因想要销毁并重新创建集群(以及实例):

availability_zones.#:          "3" => "2" (forces new resource)
availability_zones.1924028850: "eu-west-1b" => "eu-west-1b"
availability_zones.3953592328: "eu-west-1a" => "eu-west-1a"
availability_zones.94988580:   "eu-west-1c" => "" (forces new resource)
[...]
engine:                        "aurora-mysql" => "aurora" (forces new resource)
[...]

我在 TF 中对 RDS 集群所做的更改是:

-  engine         = "aurora"
-  engine_version = "5.6.10a"
+  engine         = "aurora-mysql"
+  engine_version = "5.7.12"

对于参数组(集群和实例):

-  family      = "aurora5.6"
+  family      = "aurora-mysql5.7"

参数组导入成功

我怀疑问题可能是因为它试图为错了一个“aurora”,但为什么呢?!它已导入 Ok,在我的 Terraform 代码中也可以。那是TF错误吗?我找不到任何东西。

我正在使用 Terraform v0.11.7

来自文档:

The engine name for Aurora MySQL 2.x is aurora-mysql; the engine name for Aurora MySQL 1.x continues to be aurora. The engine version for Aurora MySQL 2.x is 5.7.12; the engine version for Aurora MySQL 1.x continues to be 5.6.10a. The default parameter group for Aurora MySQL 2.x is default.aurora-mysql5.7; the default parameter group for Aurora MySQL 1.x continues to be default.aurora5.6. The DB cluster parameter group family name for Aurora MySQL 2.x is aurora-mysql5.7; the DB cluster parameter group family name for Aurora MySQL 1.x continues to be aurora5.6.

Terraform 有两个要为 Aurora RDS 指定的资源

在我看来,您为 rds_cluster_instance 更改了它,但没有为 rds_cluster 更改。您必须为两者都更改它,然后它才会起作用。