Files
tf_examples/fullpipe_chain/variables.tf
T

124 lines
4.8 KiB
Terraform
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# =============================================================================
# Переменные. Все значения задаются в terraform.tfvars.
# Шаблон файла: terraform.tfvars.example (скопируйте в terraform.tfvars).
# Где взять каждое значение — в описании переменной и в README.md.
# =============================================================================
variable "api_token" {
type = string
sensitive = true
description = "Токен API. ЛК → Профиль → Токены → «Технический». Никому не передавайте: токен даёт полный доступ к услугам."
}
variable "api_endpoint" {
type = string
default = "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc"
description = "Адрес API. Менять не нужно."
}
# --- Организация ---
variable "organization" {
type = string
description = "Название услуги «Организация в Cloud Director» в ЛК (например: organ). Можно указать и её UUID. Организация создаётся заранее в ЛК — Terraform её не создаёт."
}
variable "ip_space_name" {
type = string
description = "Имя ipSpace для внешнего IP. Смотреть в ЛК в карточке организации (например: internet-ipv4-v1)."
}
variable "ip_count" {
type = string
default = "4"
description = "Сколько внешних IP выделить на организации: 3 держит кластер Штурвал (API, Ingress и запас) + 1 — внешний адрес ВМ. Строкой — так его отдаёт платформа."
}
# --- vDC (виртуальный датацентр) ---
variable "vdc_resource_name" {
type = string
default = "fullpipe-vdc"
description = "Имя vDC в ЛК. Любое, удобное вам."
}
variable "vdc_network_provider" {
type = string
default = null
description = "Сетевой провайдер vDC. Взять в ЛК на странице создания vDC (например: snb1)."
}
variable "vdc_provider_vdc" {
type = string
default = null
description = "Provider VDC. Взять в ЛК на странице создания vDC (например: Intel Broadwell 2.4)."
}
variable "vdc_cpu_allocated" {
type = number
default = 12
description = "vCPU, шт. Кластер Штурвал при настройках по умолчанию занимает 8 vCPU (2 ноды × «TKG 4CPU 8RAM»), поэтому для ВМ нужен запас: 12 хватает на кластер и ВМ."
}
variable "vdc_cpu_guaranteed" {
type = number
default = 0
description = "Резервирование vCPU, %. Допустимы только 0, 50 или 80."
}
variable "vdc_mem_allocated" {
type = number
default = 32
description = "RAM, ГБ."
}
variable "vdc_storage_config" {
type = string
default = "[{\"name\":\"SATA\",\"size\":\"200\"}]"
description = "Дисковая политика: JSON-массив, name — имя политики из ЛК, size — размер в ГБ (строкой). Имя политики должно существовать в ресурсном пуле (например: SATA, SSD)."
}
# --- Edge (сетевой шлюз периметра, vc_nsxt) ---
variable "nsxt_resource_name" {
type = string
default = "fullpipe-edge"
description = "Имя Edge в ЛК. Любое, удобное вам."
}
variable "nsxt_vdc_type" {
type = string
default = "vdc"
description = "Тип родительской услуги: vdc (нужен vdc_uid) или vdcGroup."
}
variable "nsxt_need_enable_avi" {
type = bool
default = true
description = "Включить балансировщик AVI (ALB)."
}
variable "nsxt_virtual_services_count" {
type = number
default = 3
description = "Количество виртуальных сервисов на AVI: 1..4. Для кластера Штурвал нужно не меньше 3."
}
variable "nsxt_ip_addr_pool" {
type = string
default = "10.10.102.0/24"
description = "Адресный пул routed-сети шлюза. Маска /24 обязательна."
}
variable "nsxt_main_dns" {
type = string
default = "81.22.46.22"
description = "Основной DNS для машин за шлюзом."
}
variable "nsxt_second_dns" {
type = string
default = "185.247.187.77"
description = "Второй DNS для машин за шлюзом."
}