RDS集群和数据库实例概念

时间:2018-04-04 03:01:51

标签: amazon-rds terraform

我需要创建RDS Aurora 5.7数据库。我想我对RDS概念并不清楚。这是正确的层次结构吗? aws_rds_cluster - > aws_rds_cluster_instance - > aws_db_instance我应该定义以上所有内容,因为我有点坚持配置,所以我试着澄清这个概念

1 个答案:

答案 0 :(得分:2)

A"经典" RDS实例在Terraform中定义为aws_db_instance。这可以是单AZ或多可用区,但它定义整个群集组成群集的实例。由于您需要Aurora,根据您的问题,这不是您想要的

您需要aws_rds_cluster来定义整个群集,然后至少有一个aws_rds_cluster_instance来定义实例。然后aws_rds_cluster_instance使用cluster_identifier参数定义它所属的集群。

群集 提供实时数据和自动备份所在的存储后端。全局参数组(在使用该存储后端的所有实例中必须相同的参数)也设置在此级别。

实例 是运行MySQL副本的服务器,可以访问存储后端。它们具有实例参数组,这些参数组定义了实例之间可以不同的参数。现在,每个集群只能有1个编写器实例加上多个读者实例,尽管亚马逊正在开发允许多个编写器实例的多主机。

您可以随意添加/删除实例,但一旦删除群集本身,您的存储(以及所有自动快照!)就会消失。手动拍摄快照以保留数据副本,如果删除群集,这些副本不会消失。