This commit is contained in:
2023-12-18 18:55:52 +03:00
parent e2ee45ee14
commit 20050bc169
213 changed files with 37547 additions and 2873 deletions

View File

@@ -0,0 +1,169 @@
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso.digitalenergy.online"
controller_url = "https://mr4.digitalenergy.online"
app_id = ""
app_secret = ""
}
resource "decort_cb_k8s_cp" "cp" {
# Название кластера
# Обязательный параметр
# string
name = "k8s-cp"
# K8sCI ID
# Обязательный параметр
# int
k8sci_id = 55
# Плагин сети (flannel, weavenet или calico)
# Обязательный параметр
# string
network_plugin = "flannel"
# ID ресурсной группы
# Обязательный параметр
# int
rg_id = 1387
# Кол-во ядер мастер-узла
# Опциональный параметр
# int
cpu = 2
# Объем RAM мастер-узла
# Опциональный параметр
# int
ram = 2048
# Кол-во ВМ мастер-узла (1 или 3)
# Опциональный параметр
# int
num = 1
# Размер диска мастер-узла
# Опциональный параметр
# int
disk = 10
# Описание кластера
# Опциональный параметр
# string
desc = "<DESCRIPTION>"
# id extnet
#опциональный параметр
#тип - число
extnet_id = 0
# id vins
# опциональный параметр
# тип - число
vins_id = 1234
# Storage Endpoint ID
# Опциональный параметр
# id
sep_id = 0
# SEP Pool
# Опциональный параметр
# string
sep_pool = "pool"
# Старт/Стоп кластера
# Опциональный параметр
# bool
start = true
# Включить/отключить кластер
# Опциональный параметр
# bool
enabled = true
# Удалить кластер безвозвратно
# Опциональный параметр
# bool
permanently = true
# Восстановить кластер из корзины
# Опциональный параметр
# bool
restore = true
# Создать кластер с/без балансировщика нагрузки
# Опциональный параметр
# bool
with_lb = true
# позволяет создать схему отказоустройчивой LB
# опциональный параметр
# тип - булев тип
ha_mode = true
# дополнительные SAN (Subject Alternative Names) для использования в процессе автоматического выписывания сертификата Кластера Kubernetes;
# возможность взаимодействовать с кластером по FQDN
# параметр получает список строк IP-адреса и/или DNS (по формату RFC 1123 c поддержкой wildcard)
# опциональный параметр
# тип - массив строк
additional_sans = ["192.168.201.0","192.168.201.1"]
# используется для определения настроек и действий, которые должны быть выполнены перед запуском любого другого компонента в кластере
# это позволяет вам настраивать такие вещи, как регистрация node, настройка network и другие задачи инициализации
# опциональный параметр
# тип - строка
init_config = "{JSON string}"
# используется для определения глобальных настроек и конфигураций для всего кластера
# он включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера
# опциональный параметр
# тип - строка
cluster_config = "{JSON string}"
# используется для настройки поведения и параметров Kubelet, который является агентом primary node, запускаемым на каждом node кластера
# он включает в себя такие параметры, как IP-адрес node, распределение ресурсов, политики удаления модулей и другие конфигурации, специфичные для Kubelet
# опциональный параметр
# тип - строка
kubelet_config = "{JSON string}"
# используется для настройки поведения и параметров присоединения node к кластеру
# он включает в себя такие параметры, как режим прокси-сервера, диапазоны IP-адресов кластера и другие конфигурации, специфичные для Kube-proxy
# опциональный параметр
# тип - строка
kube_proxy_config = "{JSON string}"
# используется для настройки поведения и параметров присоединения node к кластеру
# он включает в себя такие параметры, как cluster's control plane endpoint, токен и ключ сертификата
# опциональный параметр
# тип - строка
join_config = "{JSON string}"
# при создании кластре использовать подключение только к сети ExtNet
# опциональный параметр
# тип - булев тип
extnet_only = true
# добавить ssl-сертификат в формате x509 pem
# необязательный параметр
# тип - файл
oidc_cert = file("ca.crt")
}
output "cp_out" {
value = decort_cb_k8s_cp.cp
}