AWS已recently启动了对RDS实例的存储自动扩展的支持。我们的生产环境中有多个RDS实例,它们具有超额配置的存储。我们希望利用这一新功能来降低一些成本。由于我们无法减少实时RDS实例的存储量,因此我们必须首先创建具有较少存储空间且具有自动缩放支持的RDS实例,然后将现有数据迁移到新实例,然后删除旧实例。
我们将terraform与terraform-aws-provider一起使用来创建我们的基础结构。问题是我无法使用Terraform实现上述策略。 这是我尝试过的:
aws_db_snapshot
类型,另一个是
aws_db_instance
(使用快照)。 # Existing RDS instance with over provisioned storage
resource "aws_db_instance" "test_rds"{
.
.
.
}
# My changes below
# The snapshot
resource "aws_db_snapshot" "test_snapshot" {
db_instance_identifier = "${aws_db_instance.test_rds.id}"
db_snapshot_identifier = "poc-snapshot"
}
# New instance with autoscale support and reduced storage
resource "aws_db_instance" "test_rds_snapshot" {
identifier = "test-rds-snapshot"
allocated_storage = 20
max_allocated_storage = 50
snapshot_identifier = "${aws_db_snapshot.test_snapshot.id}"
.
.
.
}
我想知道我是否处在正确的轨道上,并且能够使用此策略迁移生产数据库。如果您需要更多信息,请与我们联系。