Skip to content

Resource nubes_mongodb · Service ID: 92 · Service Name: MongoDB

Manual · Create params · Modify params · Output params · Operations · Example

Copy-ready manifest (mongodb_main.tf)

terraform {
  required_providers {
    nubes = {
      source  = "tf-registry.containerk8s.services.ngcloud.ru/nubes-test/nubes"
      version = "5.0.8"
    }
  }
}

# Токен доступа api_token к Nubes API — замените на реальный.
provider "nubes" {
  api_token    = "token_***"
  api_endpoint = "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc"
}
resource "nubes_mongodb" "baza" {
  resource_name = "TODO"

  startup_configuration {
    resource_realm = "TODO" # Кластер Kubernetes, на котором будет развернут экземпляр
  }
  cluster_configuration {
    cpu = 1000
    memory = 1024
    replicas = 1
    disk = 5 # Указывается в Gb
  }
  access_configuration {
    master_ip_space = "TODO" # Из какого Ip-Space резервировать внешний IP Список предоставляется из Организации, в котором развёрнута ресурсная платформа
    master_access_list = jsonencode([]) # Необходимо настраивать, когда зарезервирован внешний адрес Если передан пустой массив, доступ выделяется всем
  }
  backup_configuration {
    schedule = "0 0 * * *" # ``` * * * * * ``` <-- Минута(0-59), Час(0-23), День(1-31), Месяц(1-12), День_недели(0-7, где 0-Вс)
    s3_uid = "TODO"
    retain = 7
  }
  mongo_configuration {
    tls = "TODO" # Шифрует данные между внешними подключениями и базой данных.
  }
}

Outputs usage

# Выходные параметры можно использовать как
nubes_mongodb.baza.state_params["имя_ключа"]
nubes_mongodb.baza.state_out["имя_ключа"]
nubes_mongodb.baza.state_params_flat["имя_ключа"]
nubes_mongodb.baza.state_out_flat["имя_ключа"]
nubes_mongodb.baza.vault_secrets["имя_ключа"]
nubes_mongodb.baza.vault_url
nubes_mongodb.baza.vault_user_path
nubes_mongodb.baza.vault_fields