Terraform Mongodb Atlas的地形提供商:我的数据库在哪里?

Terraform Mongodb Atlas的地形提供商:我的数据库在哪里?,terraform,terraform-provider-aws,mongodb-atlas,terragrunt,Terraform,Terraform Provider Aws,Mongodb Atlas,Terragrunt,我已经通过Mongodb terraform provider成功创建了一个项目、用户和集群,但是我希望看到在我的新集群下已经创建了一个数据库,而这个数据库是找不到的。我不确定它缺少什么或不正确,我在文档中找不到任何与我自己实现的内容不同的示例/信息。以下是我的main.tf文件中的相关信息: # Create a db user resource "mongodbatlas_database_user" "mongodb_user" { username = "${var.database

我已经通过Mongodb terraform provider成功创建了一个项目、用户和集群,但是我希望看到在我的新集群下已经创建了一个数据库,而这个数据库是找不到的。我不确定它缺少什么或不正确,我在文档中找不到任何与我自己实现的内容不同的示例/信息。以下是我的main.tf文件中的相关信息:

# Create a db user
resource "mongodbatlas_database_user" "mongodb_user" {
  username = "${var.database_username}"
  password = "${random_string.master_password.result}"
  project_id = "${mongodbatlas_project.mongodb.id}"
  database_name  = "admin"

  roles {
    role_name = "readWrite"
    database_name = "admin"
  }
}
团体

# Create a cluster
resource "mongodbatlas_cluster" "mongodb-cluster" {
  project_id = "${mongodbatlas_project.mongodb.id}"
  name = "${var.cluster_name}-${var.stage}"
  num_shards = 1

  replication_factor = 3
  backup_enabled = true
  auto_scaling_disk_gb_enabled = true
  mongo_db_major_version = "4.0"

  //Provider Settings "block"
  provider_name = "AWS"
  disk_size_gb = 100
  provider_disk_iops = 300
  provider_encrypt_ebs_volume = false
  provider_instance_size_name = "M40"
  provider_region_name = "us-east-1"
}
非常感谢您的帮助/建议


谢谢

数据库创建是CRUD操作,MongoDB Atlas API不支持CRUD操作

此外,Terraform用于部署基础设施,而不是其中的数据。您可以创建自己的RESTAPI,该API连接到Terraform创建的集群,使用Terraform创建的用户进行连接,然后执行您想要的任何CRUD操作


希望这能回答您的问题。

您的意思是希望集群上有一个数据库吗?顺便说一句,AtlasAPI不允许您这样做,而是需要通过应用程序中的MongoDB驱动程序来管理。尝试使用一个不存在的数据库应该只是为您创建它。您好,谢谢您的回复。是的,因为我实际上可以通过UI手动创建db,所以我认为根据上述设置的terraform提供者将实际创建db。你是说这是一个完全错误的假设吗?这并不是什么被暴露出来的东西,不幸的是Terraform不能为你做这一点。也就是说,如果您的应用程序试图使用集群中的数据库,但该数据库不存在,那么MongoDB驱动程序应该根据需要创建该数据库,这样就没什么关系了。真的谢谢你,我实在想不起来了!
# Create a cluster
resource "mongodbatlas_cluster" "mongodb-cluster" {
  project_id = "${mongodbatlas_project.mongodb.id}"
  name = "${var.cluster_name}-${var.stage}"
  num_shards = 1

  replication_factor = 3
  backup_enabled = true
  auto_scaling_disk_gb_enabled = true
  mongo_db_major_version = "4.0"

  //Provider Settings "block"
  provider_name = "AWS"
  disk_size_gb = 100
  provider_disk_iops = 300
  provider_encrypt_ebs_volume = false
  provider_instance_size_name = "M40"
  provider_region_name = "us-east-1"
}