这里不需要 serverlessv2_scaling_configuration 类型的 Terraform 块

I C*_*rti 1 amazon-web-services terraform terraform-provider-aws aws-aurora-serverless

我正在尝试使用 Terraform 配置 AWS Aurora Postgres Serverless v2。我在这里阅读了文档,它说,它只需要这些参数:

\n
    \n
  • engine_mode设置"provisioned"
  • \n
  • serverlessv2_scaling_configuration在集群中
  • \n
  • resource "aws_rds_cluster_instance"instance_class设置为"db.serverless"
  • \n
\n

但我返回了这个错误

\n
\xe2\x95\xb7\n\xe2\x94\x82 Error: Unsupported block type\n\xe2\x94\x82 \n\xe2\x94\x82   on ../../modules/postgres_serverless_v2/main.tf line 70, in resource "aws_rds_cluster" "pg":\n\xe2\x94\x82   70:   serverlessv2_scaling_configuration {\n\xe2\x94\x82 \n\xe2\x94\x82 Blocks of type "serverlessv2_scaling_configuration" are not expected here.\n
Run Code Online (Sandbox Code Playgroud)\n

当我尝试寻找解决方案时,我不太确定下一步该做什么,但每个人似乎对此都没有问题。

\n

下面是我的代码片段:

\n
resource "aws_rds_cluster" "pg" {\n  cluster_identifier      = "${var.namespace}-${var.env_name}-${var.name}-pg-v2"\n  engine                  = "aurora-postgresql"\n  engine_version          = null\n  engine_mode             = "provisioned"  # still using serverless. requirement from terraform\n  port                    = var.pg_port\n  db_subnet_group_name    = aws_db_subnet_group.subnet_grp_pg.name\n  vpc_security_group_ids  = [aws_security_group.sec_grp_pg.id]\n  availability_zones      = data.aws_availability_zones.azs.names\n  database_name           = "${var.namespace}_${var.env_name}_${var.name}"\n  master_username         = var.pg_username\n  master_password         = random_password.this.result\n  kms_key_id              = var.kms_key_arn\n  backup_retention_period = var.backup_retention_period\n  # preferred_backup_window   = "02:30-04:30"  # Arg. causes an issue when building from snapshot, leave commented out to mitigate. \n  final_snapshot_identifier = "${var.namespace}-${var.name}-${var.env_name}-pg-rds-backup-${formatdate("YYYYMMDD-hhmmss", timestamp())}"\n  snapshot_identifier       = var.snapshot_identifier\n  skip_final_snapshot       = false\n  storage_encrypted         = true\n  enable_http_endpoint      = true\n  apply_immediately         = true\n\n  lifecycle {\n    ignore_changes = [\n      availability_zones\n    ]\n  }\n\n  serverlessv2_scaling_configuration {\n    min_capacity = 0.5\n    max_capacity = 128.0\n  }\n\n  tags = {\n    Name        = "${var.namespace}-${var.env_name}-${var.name}-pg-v2"\n    Environment = "${var.env_name}"\n    Origin      = "terraform"\n    App         = var.name\n  }\n}\n\nresource "aws_rds_cluster_instance" "pg" {\n  cluster_identifier = aws_rds_cluster.pg.id\n  instance_class = "db.serverless"\n  engine = aws_rds_cluster.pg.engine\n  engine_version = aws_rds_cluster.pg.engine_version\n}\n
Run Code Online (Sandbox Code Playgroud)\n

PS 我正在使用 Terraform v1.2.4

\n

任何帮助表示赞赏。谢谢。

\n

I C*_*rti 6

没关系。我的错误是我仍在版本上使用 aws 提供程序,而在此发布版本链接3.72中显示后才支持 serverlessv2v4.15.0