Skip to content

Resource nubes_vc_vdc · v1.0.0 · Service ID: 21 · Service Name: Виртуальный датацентр (vDC)

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

Минимальный пример (только обязательные параметры)

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

provider "nubes" {
  api_token    = "***"
  api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc"
}
resource "nubes_vc_vdc" "baza" {
  resource_name = "my-vc_vdc"

  organization_uid = "TODO" # Для создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director`
  provider_vdc = "TODO" # Приписка `2.8` - Скорость vCPU - 2800MHz И так далее...
  network_provider = "TODO"
}
Полный пример (все параметры, включая значения по умолчанию)
terraform {
  required_providers {
    nubes = {
      source  = "tf-registry.containerk8s.services.ngcloud.ru/nubes/nubes"
      version = "1.0.0"
    }
  }
}

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

  organization_uid = "TODO" # Для создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director`
  provider_vdc = "TODO" # Приписка `2.8` - Скорость vCPU - 2800MHz И так далее...
  network_provider = "TODO"

  # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте
  storage_config {
    name = "TODO" # getKeyListFromStruct(getResourceRealmConfig(getStringFromStruct(getInstanceState(params.organizationUid), "params.resourceRealm")), concat("vcd.hardware.providerVdcs['",params.providerVdc,"'].storage"))
    size = 100
  }
  cpu_guaranteed = 20 # % резервирования
  cpu_allocated = 10 # шт
  mem_allocated = 20 # gb
}

Использование выходных данных

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