Skip to content

Resource nubes_vc_mgmt_sthutrval_cluster · v1.0.0 · Service ID: 148 · Service Name: Менеджмент Kubernetes кластер Штурвал

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_mgmt_sthutrval_cluster" "baza" {
  resource_name = "my-vc_mgmt_sthutrval_cluster"

  startup_configuration {
    resource_realm = "ngcloud.ru" # Облако в котором будет развёрнут тенант
    cluster_name = "example-ey4rqlbf"
  }
  cluster_configuration {
    app_version = 2.13.1
  }
  control_plane_configuration {
    sizing_policy = "TODO" # Доступные sizing Policy представлены исходя из ресурсной платформы, которая была выбрана
    sizing_disk = 50
    count = 1
  }
  access_configuration {
    access_ip_list_ingress = jsonencode([]) # Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем Пример: **["0.0.0.0/0"]** или **[]** или **["178.4.13.2", "178.4.14.0/24"]**
    need_external_address_api = true # Выделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить false
    access_ip_list_api = jsonencode([]) # Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем Пример: **["0.0.0.0/0"]** или **[]** или **["178.4.13.2", "178.4.14.0/24"]**
    need_external_address_ingress = true # Выделяет внешний IP для доступа к Ingress
  }
}
Полный пример (все параметры, включая значения по умолчанию)
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_mgmt_sthutrval_cluster" "baza" {
  resource_name = "TODO"

  startup_configuration {
    resource_realm = "ngcloud.ru" # Облако в котором будет развёрнут тенант
    cluster_name = "example-ey4rqlbf"
  }
  cluster_configuration {
    app_version = 2.13.1
  }
  control_plane_configuration {
    sizing_policy = "TODO" # Доступные sizing Policy представлены исходя из ресурсной платформы, которая была выбрана
    sizing_disk = 50
    count = 1
  }
  access_configuration {
    access_ip_list_ingress = jsonencode([]) # Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем Пример: **["0.0.0.0/0"]** или **[]** или **["178.4.13.2", "178.4.14.0/24"]**
    need_external_address_api = true # Выделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить false
    access_ip_list_api = jsonencode([]) # Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем Пример: **["0.0.0.0/0"]** или **[]** или **["178.4.13.2", "178.4.14.0/24"]**
    need_external_address_ingress = true # Выделяет внешний IP для доступа к Ingress
  }

  # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте
  worker_configuration {
    group_name = "workers-qz2pfmgi" # Имена групп воркеров в рамках кластера должно быть уникальным
    sizing_policy = "TODO" # Доступные sizing Policy представлены исходя из ресурсной платформы, которая была выбрана
    sizing_disk = 50
    count = 2
  }
}

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

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