diff --git a/DEV_STAND/FullPipe/shturval.tf b/DEV_STAND/FullPipe/shturval.tf index b0a062d..9f64a59 100644 --- a/DEV_STAND/FullPipe/shturval.tf +++ b/DEV_STAND/FullPipe/shturval.tf @@ -1,7 +1,17 @@ # ============================================================================= # Менеджмент-кластер Kubernetes «Штурвал» (сервис 148) # -# Разворачивается последним в цепочке: +# Всё, что относится к Штурвалу, лежит ТОЛЬКО в этом файле: переменные, их +# значения по умолчанию и сам ресурс. В terraform.tfvars для Штурвала ничего +# задавать не нужно — при желании значения можно переопределить там (переменные +# называются shturval_*). +# +# Чтобы выключить Штурвал: +# - удалить этот файл, или +# - закомментировать ресурс nubes_vc_mgmt_sthutrval_cluster.shturval. +# Ничего другого править не придётся. +# +# Место в цепочке — последнее: # орга (создана вручную в ЛК) # -> nubes_vc_vdc.vdc # -> nubes_vc_nsxt.edge @@ -10,14 +20,90 @@ # -> nubes_vc_mgmt_sthutrval_cluster.shturval (этот ресурс) # # Штурвалу нужны готовая сеть и внешние адреса (для Kubernetes API и Ingress), -# поэтому depends_on стоит на SNAT — последний ресурс цепочки. +# поэтому depends_on стоит на SNAT — последнем ресурсе цепочки. # ============================================================================= +# --- Переменные Штурвала --- + +variable "shturval_resource_name" { + type = string + default = "shturval-mgmt-dev" + description = "Имя услуги Штурвал в ЛК" +} + +variable "shturval_realm" { + type = string + default = "sandbox.nubes.ru" + description = "Облако (resource_realm), в котором разворачивается Штурвал. Для DEV — sandbox.nubes.ru" +} + +variable "shturval_cluster_name" { + type = string + default = "shturval-mgmt-dev-00" + description = "Имя кластера внутри Штурвала" +} + +variable "shturval_app_version" { + type = string + default = "2.13.1" + description = "Версия Штурвала: 2.13.1, 2.12.1 или 2.11.0" +} + +variable "shturval_cp_sizing_policy" { + type = string + default = "TKG 4CPU 8RAM" + description = "Политика размера control plane, зависит от ресурсной платформы: TKG 4CPU 8RAM | TKG 8CPU 16RAM | TKG 16CPU 32RAM" +} + +variable "shturval_cp_sizing_disk" { + type = number + default = 50 + description = "Диск control plane, ГБ" +} + +variable "shturval_cp_count" { + type = number + default = 1 + description = "Количество узлов control plane: 1, 3 или 5" +} + +variable "shturval_worker_config" { + type = string + default = "[{\"groupName\":\"workers-shturval-mgmt\",\"sizingPolicy\":\"TKG 4CPU 8RAM\",\"sizingDisk\":50,\"count\":2}]" + description = "Группы воркеров JSON-строкой (groupName, sizingPolicy, sizingDisk, count). После создания не изменяется" +} + +variable "shturval_api_need_external" { + type = bool + default = true + description = "Выделить внешний адрес для Kubernetes API" +} + +variable "shturval_api_access_ip_list" { + type = string + default = "[]" + description = "Список адресов доступа к Kubernetes API. Пустой массив — доступ всем" +} + +variable "shturval_ingress_need_external" { + type = bool + default = true + description = "Выделить внешний адрес для Ingress" +} + +variable "shturval_ingress_access_ip_list" { + type = string + default = "[]" + description = "Список адресов доступа к Ingress. Пустой массив — доступ всем" +} + +# --- Ресурс Штурвала --- + resource "nubes_vc_mgmt_sthutrval_cluster" "shturval" { resource_name = var.shturval_resource_name # Облако и имя кластера. Ресурсная платформа и сетевой провайдер — те же, - # что у vDC (берутся из общих переменных). + # что у vDC (берутся из общих переменных vdc.tf). startup_configuration = { resource_realm = var.shturval_realm cluster_name = var.shturval_cluster_name diff --git a/DEV_STAND/FullPipe/variables.tf b/DEV_STAND/FullPipe/variables.tf index cc37a8c..7e934d3 100644 --- a/DEV_STAND/FullPipe/variables.tf +++ b/DEV_STAND/FullPipe/variables.tf @@ -114,77 +114,3 @@ variable "nsxt_second_dns" { default = "185.247.187.77" description = "Второй DNS" } - -# --- Штурвал (менеджмент-кластер Kubernetes, сервис 148) --- - -variable "shturval_resource_name" { - type = string - default = "shturval-mgmt-dev" - description = "Имя услуги Штурвал в ЛК" -} - -variable "shturval_realm" { - type = string - default = "sandbox.nubes.ru" - description = "Облако (resource_realm), в котором разворачивается Штурвал. Для DEV — sandbox.nubes.ru" -} - -variable "shturval_cluster_name" { - type = string - default = "shturval-mgmt-dev-00" - description = "Имя кластера внутри Штурвала" -} - -variable "shturval_app_version" { - type = string - default = "2.13.1" - description = "Версия Штурвала: 2.13.1, 2.12.1 или 2.11.0" -} - -variable "shturval_cp_sizing_policy" { - type = string - default = "TKG 4CPU 8RAM" - description = "Политика размера control plane, зависит от ресурсной платформы: TKG 4CPU 8RAM | TKG 8CPU 16RAM | TKG 16CPU 32RAM" -} - -variable "shturval_cp_sizing_disk" { - type = number - default = 50 - description = "Диск control plane, ГБ" -} - -variable "shturval_cp_count" { - type = number - default = 1 - description = "Количество узлов control plane: 1, 3 или 5" -} - -variable "shturval_worker_config" { - type = string - default = "[{\"groupName\":\"workers-shturval-mgmt\",\"sizingPolicy\":\"TKG 4CPU 8RAM\",\"sizingDisk\":50,\"count\":2}]" - description = "Группы воркеров JSON-строкой (groupName, sizingPolicy, sizingDisk, count). После создания не изменяется" -} - -variable "shturval_api_need_external" { - type = bool - default = true - description = "Выделить внешний адрес для Kubernetes API" -} - -variable "shturval_api_access_ip_list" { - type = string - default = "[]" - description = "Список адресов доступа к Kubernetes API. Пустой массив — доступ всем" -} - -variable "shturval_ingress_need_external" { - type = bool - default = true - description = "Выделить внешний адрес для Ingress" -} - -variable "shturval_ingress_access_ip_list" { - type = string - default = "[]" - description = "Список адресов доступа к Ingress. Пустой массив — доступ всем" -}