DBParameterGroupNotFound: DBParameterGroup not found: mysql-57-parameter-group

645 views
Skip to first unread message

Adam C

unread,
Mar 29, 2019, 11:16:33 AM3/29/19
to Terraform
I'm getting an error on apply:

Terraform will perform the following actions:

 
~ aws_rds_cluster_instance.rdsmain_instance
      db_parameter_group_name
: "default.aurora-mysql5.7" => "mysql-57-parameter-group"


Plan: 0 to add, 1 to change, 0 to destroy.

Do you want to perform these actions?
 
Terraform will perform the actions described above.
 
Only 'yes' will be accepted to approve.

 
Enter a value: yes

aws_rds_cluster_instance
.rdsmain_instance: Modifying... (ID: instance-01)
  db_parameter_group_name
: "default.aurora-mysql5.7" => "mysql-57-parameter-group"

Error: Error applying plan:

1 error(s) occurred:

* aws_rds_cluster_instance.rdsmain_instance: 1 error(s) occurred:

* aws_rds_cluster_instance.rdsmain_instance: Error modifying DB Instance instance-01: DBParameterGroupNotFound: DBParameterGroup not found: mysql-57-parameter-group
    status code
: 404, request id: 3076783a-7ba3-40b7-b8eb-eba5b60ac541



Here's my code -


resource "aws_rds_cluster_parameter_group" "default" {
  name
= "mysql-57-parameter-group"
  family
= "aurora-mysql5.7"

  description
= "Managed by Terraform - for MySQL 5.7"
 
  parameter
{
    name
= "aurora_lab_mode"
    value
= "0"
    apply_method
= "immediate"
 
}

  parameter
{
    name
= "aurora_lab_mode"
    value
= "0"
    apply_method
= "immediate"
 
}

 
  parameter
{
    name
= "binlog_cache_size"
    value
= "32768"
    apply_method
= "immediate"
 
}

  parameter
{
    name
= "binlog_format"
    value
= "OFF"
    apply_method
= "immediate"
 
}

   parameter
{
     name
= "slow_query_log"
     value
= "1"
   
}
 
}



And now, server.tf:

resource "aws_rds_cluster" "rdsmain" {
  engine
= "${var.db-engine}"
  engine_version
= "${var.engine-version}"
  cluster_identifier    
= "${var.cluster-identifier}"
  database_name          
= "${var.dbname}"
  master_username        
= "${var.master-username}"
  master_password        
= "${var.password}"
  vpc_security_group_ids
= [ "${aws_security_group.rds.id}" ]
  db_subnet_group_name
= "aurora-subnet-group"
 
#db_subnet_group_name   = "${aws_db_subnet_group.rdsmain_private.name}"
  final_snapshot_identifier
= "${var.final-snapshot-identifier}"
  skip_final_snapshot
= "${var.skip-final-snapshot}"
  backup_retention_period
= "${var.backup-retention-period}"
  enabled_cloudwatch_logs_exports
= "${var.cloudwatch-log-exports}"
 
  tags
= {
   
Name = "${var.instance_name_tag}"
 
}
}

resource
"aws_rds_cluster_instance" "rdsmain_instance" {
  count                
= "${var.instance-count}"
  identifier          
= "instance-0${count.index + 1}"
  cluster_identifier  
= "${aws_rds_cluster.rdsmain.id}"
  instance_class      
= "${var.instance-class}"
  db_subnet_group_name
= "aurora-subnet-group"
 
#db_subnet_group_name = "${aws_db_subnet_group.rdsmain_private.name}"
  engine              
= "${var.db-engine}"
  engine_version      
= "${var.engine-version}"
  preferred_maintenance_window  
= "${var.maintenance-window}"
  db_parameter_group_name
= "${aws_rds_cluster_parameter_group.default.name}"
 
#depends_on = ["aws_rds_cluster_parameter_group.default"]
 
  tags
= {
   
Name = "${var.instance_name_tag}"
 
}

}

resource
"aws_security_group" "rds" {
  name        
= "${var.aws-security-group-name}"
 
#vpc_id      = "${aws_vpc.main.id}"
  vpc_id      
= "vpc-57bcb535"
  tags
= {
   
Name = "${var.instance_name_tag}"
 
}
}

resource
"aws_security_group_rule" "public_to_rds" {
  type              
= "ingress"
  from_port        
= "${var.port}"
  to_port          
= "${var.port}"
  protocol          
= "tcp"
  security_group_id
= "${aws_security_group.rds.id}"
  cidr_blocks      
= ["${var.security-group-cidr-block}"]

}




Why is the parameter group name not being picked up, when I can see it in the AWS console?
TIA
Adam
Reply all
Reply to author
Forward
0 new messages