Как создать кластер БД Aurora Serverless с секретным менеджером в Terraform

Я читал эту страницу: https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/rds_cluster

Этот пример в основном предназначен для подготовленной базы данных, я новичок в бессерверной базе данных, есть ли пример Terraform для создания бессерверного кластера базы данных Aurora (SQL db) с использованием секрета, хранящегося в секретном менеджере?

Большое спасибо.




Ответы (2)


Базовый пример создания бесполезного сияния:

resource "aws_rds_cluster" "default" {
  cluster_identifier      = "aurora-cluster-demo"
  engine                  = "aurora-mysql"  
  engine_mode             = "serverless"  
  database_name           = "myauroradb"  
  enable_http_endpoint    = true  
  master_username         = "root"
  master_password         = "chang333eme321"
  backup_retention_period = 1
  
  skip_final_snapshot     = true
  
  scaling_configuration {
    auto_pause               = true
    min_capacity             = 1    
    max_capacity             = 2
    seconds_until_auto_pause = 300
    timeout_action           = "ForceApplyCapacityChange"
  }  
}

Я не уверен, что вы хотите делать с секретным менеджером. Это не ясно из вашего вопроса, поэтому я привожу для этого любой пример.

person Marcin    schedule 08.01.2021

Я предполагаю, что вы хотите рандомизировать master_password? Вы можете сделать что-то вроде этого:

master_password = random_password.DatabaseMasterPassword.result

Параметр SSM можно создать так:

resource "aws_ssm_parameter" "SSMDatabaseMasterPassword" {
  name  = "database-master-password"
  type  = "SecureString"
  value = random_password.DatabaseMasterPassword.result
}

Случайный пароль можно определить так:

resource "random_password" "DatabaseMasterPassword" {
  length           = 24
  special          = true
  override_special = "!#$%^*()-=+_?{}|"
}
person Terry Sposato    schedule 13.01.2021