Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to create rds global database in aws using Terraform #19905

Closed
jitenroy01 opened this issue Jan 1, 2019 · 2 comments
Closed

Unable to create rds global database in aws using Terraform #19905

jitenroy01 opened this issue Jan 1, 2019 · 2 comments

Comments

@jitenroy01
Copy link

jitenroy01 commented Jan 1, 2019

Terraform Version

Terraform v0.11.11

Terraform Configuration Files

resource "aws_rds_global_cluster" "rdsglobal" {
  provider                  = "aws.primary"

  global_cluster_identifier = "${var.global_database_id}"
  storage_encrypted         = "${var.storage_encrypted}"
}

resource "aws_rds_cluster_instance" "primary" {
  provider                  = "aws.primary"
  count                     = "${var.instance_count}"
  identifier                = "${var.db_name}-${count.index+1}"
  cluster_identifier        = "${aws_rds_cluster.primary.id}"
  instance_class            = "${var.instance_class}"
  engine                    = "${var.engine}"
  engine_version            = "${var.engine_version}"
  publicly_accessible       = "${var.publicly_accessible}"

}

resource "aws_rds_cluster" "primary" {
  provider                  = "aws.primary"
  cluster_identifier        = "${var.primary_cluster_id}"
  database_name             = "${var.db_name}"
  port                      = "${var.port}"
  engine                    = "${var.engine}"
  engine_version            = "${var.engine_version}"
  master_username           = "${var.master_username}"
  master_password           = "${random_string.password.result}"
  vpc_security_group_ids    = ["${var.security_group_ids}"] 
  db_subnet_group_name      = "${var.db_subnet_group_name}" 
  storage_encrypted         = "${var.storage_encrypted}"
  backup_retention_period   = "${var.backup_retention_period}"
  skip_final_snapshot       = "${var.skip_final_snapshot}"
  engine_mode               = "${var.engine_mode}"
  global_cluster_identifier = "${aws_rds_global_cluster.rdsglobal.id}"

}


resource "aws_rds_cluster_instance" "secondary" {
  provider                  = "aws.secondary"
  count                     = "${var.instance_count}"
  identifier                = "${var.db_name}-${count.index+1}"
  cluster_identifier        = "${aws_rds_cluster.secondary.id}"
  instance_class            = "${var.instance_class}"
  engine                    = "${var.engine}"
  engine_version            = "${var.engine_version}"
  publicly_accessible       = "${var.publicly_accessible}"

}

resource "aws_rds_cluster" "secondary" {
  depends_on                = ["aws_rds_cluster_instance.primary"]
  provider                  = "aws.secondary"
  cluster_identifier        = "${var.secondary_cluster_id}"
  port                      = "${var.port}"
  engine                    = "${var.engine}"
  engine_version            = "${var.engine_version}"
  master_username           = "${var.master_username}"
  master_password           = "${random_string.password.result}"
  vpc_security_group_ids    = ["${var.secondary_security_group_ids}"] 
  db_subnet_group_name      = "${var.db_subnet_group_name}" 
  engine_mode               = "${var.engine_mode}"
  global_cluster_identifier = "${aws_rds_global_cluster.rdsglobal.id}"

}

Debug Output

Crash Output

Expected Behavior

A global database should be created with a primary cluster in one region and a secondary cluster in another region.

Actual Behavior

The primary cluster gets created but the secondary cluster fails with the following error-

* aws_rds_cluster.secondary: error creating RDS cluster: 
InvalidParameterCombination: Cannot specify user name for cross 
region replication cluster
status code: 400, request id: 10b82a78-898c-49e6-b28f- 
0a318fdc226f

I tried by removing master_username but I got the below error-

* aws_rds_cluster.secondary: provider.aws: aws_rds_cluster: : 
"master_username": required field is not set

I followed the steps from https://www.terraform.io/docs/providers/aws/r/rds_global_cluster.html

Steps to Reproduce

Additional Context

I was able to create the rds global database using aws cli as described in the link- https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html#aurora-global-database-detaching

We are using terraform for all our provisioning. That's why I am trying to create a terraform module.

References

@ghost
Copy link

ghost commented Jan 3, 2019

This issue has been automatically migrated to hashicorp/terraform-provider-aws#7020 because it looks like an issue with that provider. If you believe this is not an issue with the provider, please reply to hashicorp/terraform-provider-aws#7020.

@ghost
Copy link

ghost commented Mar 30, 2020

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@ghost ghost locked and limited conversation to collaborators Mar 30, 2020
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants