4.4.0
@@ -2,11 +2,21 @@
|
|||||||
|
|
||||||
_Resource_ функция **decort_k8s** служит для управления кластером.
|
_Resource_ функция **decort_k8s** служит для управления кластером.
|
||||||
|
|
||||||
|
## Изменения в 4.4.0
|
||||||
|
|
||||||
|
- добавлено поле _extnet_only_
|
||||||
|
- добавлено поле _oidc_cert_
|
||||||
|
- добавлено поле _cloud_init_
|
||||||
|
- добавлено поле _ha_mode_
|
||||||
|
- добавлено поле _cluster_config_
|
||||||
|
|
||||||
## Изменения в 4.0.2
|
## Изменения в 4.0.2
|
||||||
|
|
||||||
- Добавлена возможность создавать/удалять воркер-группы напрямую из ресурса k8s
|
- Добавлена возможность создавать/удалять воркер-группы напрямую из ресурса k8s
|
||||||
- Исправлены возможные ошибки состояния при модификации воркер-групп
|
- Исправлены возможные ошибки состояния при модификации воркер-групп
|
||||||
|
|
||||||
## Изменения в 3.4.0
|
## Изменения в 3.4.0
|
||||||
|
|
||||||
- В аргументы добавлено опциональное поле labels.
|
- В аргументы добавлено опциональное поле labels.
|
||||||
- В аргументы добавлено опциональное поле taints.
|
- В аргументы добавлено опциональное поле taints.
|
||||||
- В аргументы добавлено опциональное поле annotations.
|
- В аргументы добавлено опциональное поле annotations.
|
||||||
@@ -16,6 +26,7 @@ _Resource_ функция **decort_k8s** служит для управлени
|
|||||||
- В аргументы добавлено опциональное поле sep_pool в блоке workers.
|
- В аргументы добавлено опциональное поле sep_pool в блоке workers.
|
||||||
|
|
||||||
## Изменения в 3.3.0
|
## Изменения в 3.3.0
|
||||||
|
|
||||||
- Добавлен id виртуальной сети, которая используется с кластером k8s.
|
- Добавлен id виртуальной сети, которая используется с кластером k8s.
|
||||||
- Добавлены описания IP адресов для группы воркеров.
|
- Добавлены описания IP адресов для группы воркеров.
|
||||||
- Добавлены описания IP адресов для группы мастеров.
|
- Добавлены описания IP адресов для группы мастеров.
|
||||||
@@ -58,14 +69,16 @@ resource "decort_k8s" "cluster1" {
|
|||||||
|
|
||||||
4. Выполнить `terraform apply`
|
4. Выполнить `terraform apply`
|
||||||
|
|
||||||
### Работа с oidc__cert
|
### Работа с oidc\_\_cert
|
||||||
|
|
||||||
Для работы с oidc_cert следует:
|
Для работы с oidc_cert следует:
|
||||||
|
|
||||||
1. Создать файл с ssl-сертификатом в формате x509 pem c названием ca.crt в рабочей директории
|
1. Создать файл с ssl-сертификатом в формате x509 pem c названием ca.crt в рабочей директории
|
||||||
|
|
||||||
#### ca.crt
|
#### ca.crt
|
||||||
|
|
||||||
Пример содержания файла ca.crt
|
Пример содержания файла ca.crt
|
||||||
|
|
||||||
```
|
```
|
||||||
-----BEGIN CERTIFICATE-----
|
-----BEGIN CERTIFICATE-----
|
||||||
MIIDzTCCArWgAwIBAgIUUW9bFlExT8f/gVX4OrYXegInXi0wDQYJKoZIhvcNAQEL
|
MIIDzTCCArWgAwIBAgIUUW9bFlExT8f/gVX4OrYXegInXi0wDQYJKoZIhvcNAQEL
|
||||||
@@ -106,8 +119,6 @@ resource "decort_k8s" "cluster1" {
|
|||||||
|
|
||||||
3. Выполнить `terraform apply`
|
3. Выполнить `terraform apply`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Работа с cloud_init
|
### Работа с cloud_init
|
||||||
|
|
||||||
Cloud Init позволяет запустить ВМ с предустановленными настройками пользователя, группами и доступами. Подробнее про настройку cloud_init можно прочесть по [ссылке](https://cloudinit.readthedocs.io/en/latest/reference/examples.html).
|
Cloud Init позволяет запустить ВМ с предустановленными настройками пользователя, группами и доступами. Подробнее про настройку cloud_init можно прочесть по [ссылке](https://cloudinit.readthedocs.io/en/latest/reference/examples.html).
|
||||||
@@ -150,11 +161,17 @@ resource "decort_k8s" "cluster1" {
|
|||||||
|
|
||||||
**Конфигурация cloud_init применяется только при создании кластера, во всех остальных случаях - игнорируется**
|
**Конфигурация cloud_init применяется только при создании кластера, во всех остальных случаях - игнорируется**
|
||||||
|
|
||||||
|
## Работа в параллельном режиме
|
||||||
|
|
||||||
|
Рекомендуется создавать одновременно не более одного экземпляра ресурса.
|
||||||
|
В случае необходимости создания нескольких ресурсов одновременно, необходимо запускать `terraform apply/plan` в режиме `-parallelism=1`.
|
||||||
|
|
||||||
## Аргументы
|
## Аргументы
|
||||||
|
|
||||||
_Resource_ функция **decort_k8s** для создания кластера принимает следующие аргументы:
|
_Resource_ функция **decort_k8s** для создания кластера принимает следующие аргументы:
|
||||||
|
|
||||||
| Аргумент | Тип | Обязательный | Описание |
|
| Аргумент | Тип | Обязательный | Описание |
|
||||||
| --- | --- | --- | --- |
|
| -------------- | -------------------------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| name | string | :heavy_check_mark: | Наименование кластера, <br/>при изменении - изменяет наименование кластера |
|
| name | string | :heavy_check_mark: | Наименование кластера, <br/>при изменении - изменяет наименование кластера |
|
||||||
| rg_id | int | :heavy_check_mark: | ID ресурсной группы |
|
| rg_id | int | :heavy_check_mark: | ID ресурсной группы |
|
||||||
| k8sci_id | int | :heavy_check_mark: | ID catalogue item |
|
| k8sci_id | int | :heavy_check_mark: | ID catalogue item |
|
||||||
@@ -169,27 +186,29 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
| cloud_init | string | :x: | Используется на этапе создания вм.<br/>Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. |
|
| cloud_init | string | :x: | Используется на этапе создания вм.<br/>Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. |
|
||||||
| cluster_config | string | :x: | используется для определения глобальных настроек и конфигураций для всего кластера. Она включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера. вставьте допустимую строку JSON со всеми уровнями вложенности. |
|
| cluster_config | string | :x: | используется для определения глобальных настроек и конфигураций для всего кластера. Она включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера. вставьте допустимую строку JSON со всеми уровнями вложенности. |
|
||||||
| oidc_cert | string | :x: | ssl-сертификат в формате x509 pem |
|
| oidc_cert | string | :x: | ssl-сертификат в формате x509 pem |
|
||||||
| ha_mode | bool | :x: | Использовать высокодостпуню схему для балансировщика нагрузки |
|
| extnet_only | bool | :x: | Использовать только extnet для работы кластера |
|
||||||
| extnet_only | bool | :x: | Использовать только extnet
|
| ha_mode | bool | :x: | Режим высокой доступностью балансировщика нагрузки |
|
||||||
| start | bool | :x: | Старт/Стоп кластера |
|
| start | bool | :x: | Старт/Стоп кластера |
|
||||||
|
|
||||||
### Описание блока masters
|
### Описание блока masters
|
||||||
|
|
||||||
| Аргумент | Тип | Обязательный | Описание |
|
| Аргумент | Тип | Обязательный | Описание |
|
||||||
| --- | --- | --- | --- |
|
| -------- | ------ | ------------------ | ------------------------ |
|
||||||
| num | int | :heavy_check_mark: | Количество nodes |
|
| num | int | :heavy_check_mark: | Количество nodes |
|
||||||
| cpu | int | :heavy_check_mark: | Количество cpu |
|
| cpu | int | :heavy_check_mark: | Количество cpu |
|
||||||
| ram | int | :heavy_check_mark: | Количество RAM в Mбайтах|
|
| ram | int | :heavy_check_mark: | Количество RAM в Mбайтах |
|
||||||
| disk | int | :heavy_check_mark: | Объем boot диска в ГБ |
|
| disk | int | :heavy_check_mark: | Объем boot диска в ГБ |
|
||||||
| sep_id | int | :x: | Идентификатор SEP |
|
| sep_id | int | :x: | Идентификатор SEP |
|
||||||
| sep_pool | string | :x: | Название SEP pool'а |
|
| sep_pool | string | :x: | Название SEP pool'а |
|
||||||
|
|
||||||
### Описание блока workers
|
### Описание блока workers
|
||||||
|
|
||||||
| Аргумент | Тип | Обязательный | Описание |
|
| Аргумент | Тип | Обязательный | Описание |
|
||||||
| --- | --- | --- | --- |
|
| ----------- | -------- | ------------------ | -------------------------- |
|
||||||
| name | string | :heavy_check_mark: | Наименование воркер-группы |
|
| name | string | :heavy_check_mark: | Наименование воркер-группы |
|
||||||
| num | int | :heavy_check_mark: | Количество nodes |
|
| num | int | :heavy_check_mark: | Количество nodes |
|
||||||
| cpu | int | :heavy_check_mark: | Количество cpu |
|
| cpu | int | :heavy_check_mark: | Количество cpu |
|
||||||
| ram | int | :heavy_check_mark: | Количество RAM в Mбайтах|
|
| ram | int | :heavy_check_mark: | Количество RAM в Mбайтах |
|
||||||
| disk | int | :heavy_check_mark: | Объем boot диска в ГБ |
|
| disk | int | :heavy_check_mark: | Объем boot диска в ГБ |
|
||||||
| sep_id | int | :x: | Идентификатор SEP |
|
| sep_id | int | :x: | Идентификатор SEP |
|
||||||
| sep_pool | string | :x: | Название SEP pool'а |
|
| sep_pool | string | :x: | Название SEP pool'а |
|
||||||
@@ -198,10 +217,11 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
| taints | []string | :x: | Список taints |
|
| taints | []string | :x: | Список taints |
|
||||||
|
|
||||||
## Возвращаемые значения
|
## Возвращаемые значения
|
||||||
|
|
||||||
В случае успешного выполнения _resource_ функция **decort_k8s** возвращает в указанную при вызове переменную следующие значения:
|
В случае успешного выполнения _resource_ функция **decort_k8s** возвращает в указанную при вызове переменную следующие значения:
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| -------------- | -------------------------------------------------- | ----------------------------------- |
|
||||||
| acl | Struct{} [см. ниже](#описание-структуры-acl) | acl |
|
| acl | Struct{} [см. ниже](#описание-структуры-acl) | acl |
|
||||||
| account_id | int | ID аккаунта |
|
| account_id | int | ID аккаунта |
|
||||||
| account_name | string | Имя аккаунта |
|
| account_name | string | Имя аккаунта |
|
||||||
@@ -231,15 +251,15 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
### Описание структуры acl
|
### Описание структуры acl
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ----------- | ----------------------------------------------------- | ----------- |
|
||||||
| account_acl | []Struct{} [см. ниже](#описание-структуры-списка-acl) | account_acl |
|
| account_acl | []Struct{} [см. ниже](#описание-структуры-списка-acl) | account_acl |
|
||||||
| k8s_acl| []Struct{} [см. ниже](#описание-структуры-списка-acl) | k8s_acl |
|
| k8s_acl | []Struct{} [см. ниже](#описание-структуры-списка-acl) | k8s_acl |
|
||||||
| rg_acl | []Struct{} [см. ниже](#описание-структуры-списка-acl) | rg_acl |
|
| rg_acl | []Struct{} [см. ниже](#описание-структуры-списка-acl) | rg_acl |
|
||||||
|
|
||||||
### Описание структуры списка acl
|
### Описание структуры списка acl
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ------------- | ------ | -------------- |
|
||||||
| explicit | bool | explicit |
|
| explicit | bool | explicit |
|
||||||
| guid | string | ID ресурса |
|
| guid | string | ID ресурса |
|
||||||
| right | string | right |
|
| right | string | right |
|
||||||
@@ -250,19 +270,19 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
### Описание структуры masters
|
### Описание структуры masters
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ------------- | --------------------------------------------------------------- | ------------------------------------- |
|
||||||
| cpu | int | Кол-во cpu на компьютах master |
|
| cpu | int | Кол-во cpu на компьютах master |
|
||||||
| detailed_info | []Struct{} [см. ниже](#описание-структуры-списка-detailed_info) | Детальная информация masters |
|
| detailed_info | []Struct{} [см. ниже](#описание-структуры-списка-detailed_info) | Детальная информация masters |
|
||||||
| disk | int | ID диска |
|
| disk | int | ID диска |
|
||||||
| master_id | int | ID группы master |
|
| master_id | int | ID группы master |
|
||||||
| name | string | Имя группы master |
|
| name | string | Имя группы master |
|
||||||
| num | int | Кол-во компьютов в группе master |
|
| num | int | Кол-во компьютов в группе master |
|
||||||
| ram | int | Кол-во Ram на компьютах группы master|
|
| ram | int | Кол-во Ram на компьютах группы master |
|
||||||
|
|
||||||
### Описание структуры workers
|
### Описание структуры workers
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ------------- | --------------------------------------------------------------- | -------------------------------------- |
|
||||||
| annotations | []string | Аннотации группы workers |
|
| annotations | []string | Аннотации группы workers |
|
||||||
| cpu | int | Кол-во cpu на компьютах workers |
|
| cpu | int | Кол-во cpu на компьютах workers |
|
||||||
| detailed_info | []Struct{} [см. ниже](#описание-структуры-списка-detailed_info) | Детальная информация masters |
|
| detailed_info | []Struct{} [см. ниже](#описание-структуры-списка-detailed_info) | Детальная информация masters |
|
||||||
@@ -278,7 +298,7 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
### Описание структуры списка detailed_info
|
### Описание структуры списка detailed_info
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| -------------------- | ------------------------------------------------------------ | -------------------------------- |
|
||||||
| compute_id | int | ID компьюта в составе группы |
|
| compute_id | int | ID компьюта в составе группы |
|
||||||
| name | string | Имя компьюта в составе группы |
|
| name | string | Имя компьюта в составе группы |
|
||||||
| status | string | Статус компьюта в составе группы |
|
| status | string | Статус компьюта в составе группы |
|
||||||
@@ -290,12 +310,14 @@ _Resource_ функция **decort_k8s** для создания кластер
|
|||||||
### Описание структуры списка interfaces
|
### Описание структуры списка interfaces
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ---------- | ------ | ----------------- |
|
||||||
| def_gw | string | Шлюз по умолчанию |
|
| def_gw | string | Шлюз по умолчанию |
|
||||||
| ip_address | string | IP интерфейса |
|
| ip_address | string | IP интерфейса |
|
||||||
|
|
||||||
## Пример использования
|
## Пример использования
|
||||||
|
|
||||||
Пример вызова _resource_ функции **decort_k8s**:
|
Пример вызова _resource_ функции **decort_k8s**:
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_k8s" "cluster" {
|
resource "decort_k8s" "cluster" {
|
||||||
#имя кластера
|
#имя кластера
|
||||||
|
|||||||
@@ -1,6 +1,15 @@
|
|||||||
Функция доступна в провайдере версии 4.2.0 и выше.
|
Функция доступна в провайдере версии 4.2.0 и выше.
|
||||||
|
|
||||||
|
## Изменения в 4.4.0
|
||||||
|
|
||||||
|
- добавлено поле _extnet_only_
|
||||||
|
- добавлено поле _oidc_cert_
|
||||||
|
- добавлено поле _cloud_init_
|
||||||
|
- добавлено поле _ha_mode_
|
||||||
|
- добавлено поле _cluster_config_
|
||||||
|
|
||||||
_Resource_ функция **decort_k8s_cp** служит для управления control plane кластера k8s. Функция позволяет:
|
_Resource_ функция **decort_k8s_cp** служит для управления control plane кластера k8s. Функция позволяет:
|
||||||
|
|
||||||
- Создать кластер
|
- Создать кластер
|
||||||
- Удалить кластер
|
- Удалить кластер
|
||||||
- Настроить мастер-узел
|
- Настроить мастер-узел
|
||||||
@@ -10,16 +19,16 @@ _Resource_ функция **decort_k8s_cp** служит для управлен
|
|||||||
**!** При удалении ресурса `decort_k8s_cp` удалится сам кластер и все зависимые ресурсы (worker-группы) <br/>
|
**!** При удалении ресурса `decort_k8s_cp` удалится сам кластер и все зависимые ресурсы (worker-группы) <br/>
|
||||||
**!** При использовании `decort_k8s_cp` не рекомендуется параллельное использование `decort_k8s` для управления одним и тем же кластером во избежание проблем с идемпотентностью
|
**!** При использовании `decort_k8s_cp` не рекомендуется параллельное использование `decort_k8s` для управления одним и тем же кластером во избежание проблем с идемпотентностью
|
||||||
|
|
||||||
**Данный способ управления кластерами стал предпочтительным с версии провайдера 4.2.0 - для упрощения процесса миграции обратитесь к [**статье.**](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/05.07-Миграция-k8s-кластеров-на-версию-4.2.0)
|
**Данный способ управления кластерами стал предпочтительным с версии провайдера 4.2.0 - для упрощения процесса миграции обратитесь к [**статье.\*\*](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/05.07-Миграция-k8s-кластеров-на-версию-4.2.0)
|
||||||
|
|
||||||
### Работа с cluster_config
|
## Работа с cluster_config
|
||||||
|
|
||||||
Для использования cluster_config конфигурации, следует:
|
Для использования cluster_config конфигурации, следует:
|
||||||
|
|
||||||
1. Создать файл с расширением `.json` в рабочей директории.
|
1. Создать файл с расширением `.json` в рабочей директории.
|
||||||
2. Описать в созданном файле конфигурацию cluster_config в формате JSON:
|
2. Описать в созданном файле конфигурацию cluster_config в формате JSON:
|
||||||
|
|
||||||
#### cluster_config.json
|
### cluster_config.json
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
@@ -35,10 +44,10 @@ _Resource_ функция **decort_k8s_cp** служит для управлен
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Указать путь до файла `cluster_config.json` в качестве значения параметра `cluster_config` в ресурсе `decort_k8s_cp`:
|
3. Указать путь до файла `cluster_config.json` в качестве значения параметра `cluster_config` в ресурсе `decort_k8s`:
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_k8s_cp" "cluster1" {
|
resource "decort_k8s" "cluster1" {
|
||||||
# ...
|
# ...
|
||||||
|
|
||||||
cluster_config = file("cluster_config.json")
|
cluster_config = file("cluster_config.json")
|
||||||
@@ -49,14 +58,16 @@ resource "decort_k8s_cp" "cluster1" {
|
|||||||
|
|
||||||
4. Выполнить `terraform apply`
|
4. Выполнить `terraform apply`
|
||||||
|
|
||||||
### Работа с oidc__cert
|
## Работа с oidc\_\_cert
|
||||||
|
|
||||||
Для работы с oidc_cert следует:
|
Для работы с oidc_cert следует:
|
||||||
|
|
||||||
1. Создать файл с ssl-сертификатом в формате x509 pem c названием ca.crt в рабочей директории
|
1. Создать файл с ssl-сертификатом в формате x509 pem c названием ca.crt в рабочей директории
|
||||||
|
|
||||||
#### ca.crt
|
### ca.crt
|
||||||
|
|
||||||
Пример содержания файла ca.crt
|
Пример содержания файла ca.crt
|
||||||
|
|
||||||
```
|
```
|
||||||
-----BEGIN CERTIFICATE-----
|
-----BEGIN CERTIFICATE-----
|
||||||
MIIDzTCCArWgAwIBAgIUUW9bFlExT8f/gVX4OrYXegInXi0wDQYJKoZIhvcNAQEL
|
MIIDzTCCArWgAwIBAgIUUW9bFlExT8f/gVX4OrYXegInXi0wDQYJKoZIhvcNAQEL
|
||||||
@@ -83,10 +94,10 @@ KxLl/lm/Y0zhV/VNd7OXsV0LAsyrRiNpuyCaniCOTR1ZRkD4UfWkc/bbNgbLjAfb
|
|||||||
-----END CERTIFICATE-----
|
-----END CERTIFICATE-----
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Указать путь до файла `ca.crt` в качестве значениея параметра `oidc_cert` в ресурсе `decort_k8s_cp`
|
2. Указать путь до файла `ca.crt` в качестве значениея параметра `oidc_cert` в ресурсе `decort_k8s`
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_k8s_cp" "cluster1" {
|
resource "decort_k8s" "cluster1" {
|
||||||
# ...
|
# ...
|
||||||
|
|
||||||
oidc_cert = file("ca.crt")
|
oidc_cert = file("ca.crt")
|
||||||
@@ -97,9 +108,7 @@ resource "decort_k8s_cp" "cluster1" {
|
|||||||
|
|
||||||
3. Выполнить `terraform apply`
|
3. Выполнить `terraform apply`
|
||||||
|
|
||||||
|
## Работа с cloud_init
|
||||||
|
|
||||||
### Работа с cloud_init
|
|
||||||
|
|
||||||
Cloud Init позволяет запустить ВМ с предустановленными настройками пользователя, группами и доступами. Подробнее про настройку cloud_init можно прочесть по [ссылке](https://cloudinit.readthedocs.io/en/latest/reference/examples.html).
|
Cloud Init позволяет запустить ВМ с предустановленными настройками пользователя, группами и доступами. Подробнее про настройку cloud_init можно прочесть по [ссылке](https://cloudinit.readthedocs.io/en/latest/reference/examples.html).
|
||||||
|
|
||||||
@@ -125,10 +134,10 @@ users:
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Указать путь до файла `initconfig.tftpl` в качестве значения параметра `cloud_init` в ресурсе `decort_k8s_cp`:
|
3. Указать путь до файла `initconfig.tftpl` в качестве значения параметра `cloud_init` в ресурсе `decort_k8s`:
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_k8s_cp" "cluster1" {
|
resource "decort_k8s" "cluster1" {
|
||||||
# ...
|
# ...
|
||||||
|
|
||||||
cloud_init = file("initconfig.tftpl")
|
cloud_init = file("initconfig.tftpl")
|
||||||
@@ -139,13 +148,17 @@ resource "decort_k8s_cp" "cluster1" {
|
|||||||
|
|
||||||
4. Выполнить `terraform apply`
|
4. Выполнить `terraform apply`
|
||||||
|
|
||||||
**Конфигурация cloud_init применяется только при создании кластера, во всех остальных случаях - игнорируется**
|
## Работа в параллельном режиме
|
||||||
|
|
||||||
|
Рекомендуется создавать одновременно не более одного экземпляра ресурса.
|
||||||
|
В случае необходимости создания нескольких ресурсов одновременно, необходимо запускать `terraform apply/plan` в режиме `-parallelism=1`.
|
||||||
|
|
||||||
## Аргументы
|
## Аргументы
|
||||||
|
|
||||||
_Resource_ функция **decort_k8s_cp** принимает следующие аргументы:
|
_Resource_ функция **decort_k8s_cp** принимает следующие аргументы:
|
||||||
|
|
||||||
| Аргумент | Тип | Обязательный | Описание |
|
| Аргумент | Тип | Обязательный | Описание |
|
||||||
| --- | --- | :---: | --- |
|
| -------------- | ------ | :----------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| name | string | :heavy_check_mark: | Наименование кластера |
|
| name | string | :heavy_check_mark: | Наименование кластера |
|
||||||
| k8sci_id | int | :heavy_check_mark: | ID k8s CI |
|
| k8sci_id | int | :heavy_check_mark: | ID k8s CI |
|
||||||
| network_plugin | string | :heavy_check_mark: | Плагин сети ("flannel", "weavenet" или "calico") |
|
| network_plugin | string | :heavy_check_mark: | Плагин сети ("flannel", "weavenet" или "calico") |
|
||||||
@@ -162,8 +175,8 @@ _Resource_ функция **decort_k8s_cp** принимает следующи
|
|||||||
| cloud_init | string | :x: | Используется на этапе создания вм.<br/>Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. |
|
| cloud_init | string | :x: | Используется на этапе создания вм.<br/>Параметры для утилиты _cloud_init_, которая используется в платформе DECORT для первичного конфигурирования виртуальной машины после её создания. |
|
||||||
| cluster_config | string | :x: | используется для определения глобальных настроек и конфигураций для всего кластера. Она включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера. вставьте допустимую строку JSON со всеми уровнями вложенности. |
|
| cluster_config | string | :x: | используется для определения глобальных настроек и конфигураций для всего кластера. Она включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера. вставьте допустимую строку JSON со всеми уровнями вложенности. |
|
||||||
| oidc_cert | string | :x: | ssl-сертификат в формате x509 pem |
|
| oidc_cert | string | :x: | ssl-сертификат в формате x509 pem |
|
||||||
| ha_mode | bool | :x: | Использовать высокодостпуню схему для балансировщика нагрузки |
|
| extnet_only | bool | :x: | Использовать только extnet для работы кластера |
|
||||||
| extnet_only | bool | :x: | Использовать только extnet
|
| ha_mode | bool | :x: | Режим высокой доступностью балансировщика нагрузки |
|
||||||
| start | bool | :x: | Старт/Стоп кластера |
|
| start | bool | :x: | Старт/Стоп кластера |
|
||||||
|
|
||||||
## Возвращаемые значения
|
## Возвращаемые значения
|
||||||
@@ -171,7 +184,7 @@ _Resource_ функция **decort_k8s_cp** принимает следующи
|
|||||||
В случае успешного выполнения _resource_ функция **decort_k8s_cp** возвращает в указанную при вызове переменную следующие значения:
|
В случае успешного выполнения _resource_ функция **decort_k8s_cp** возвращает в указанную при вызове переменную следующие значения:
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| -------------- | ------------------------------------------------------------ | ----------------------------------- |
|
||||||
| acl | Struct{} [см. ниже](#описание-структуры-списка-acl) | acl |
|
| acl | Struct{} [см. ниже](#описание-структуры-списка-acl) | acl |
|
||||||
| account_id | int | ID аккаунта |
|
| account_id | int | ID аккаунта |
|
||||||
| account_name | string | Имя аккаунта |
|
| account_name | string | Имя аккаунта |
|
||||||
@@ -209,7 +222,7 @@ _Resource_ функция **decort_k8s_cp** принимает следующи
|
|||||||
### Описание структуры списка acl
|
### Описание структуры списка acl
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ------------- | ------ | -------------- |
|
||||||
| explicit | bool | explicit |
|
| explicit | bool | explicit |
|
||||||
| guid | string | ID ресурса |
|
| guid | string | ID ресурса |
|
||||||
| right | string | right |
|
| right | string | right |
|
||||||
@@ -220,7 +233,7 @@ _Resource_ функция **decort_k8s_cp** принимает следующи
|
|||||||
### Описание структуры списка detailed_info
|
### Описание структуры списка detailed_info
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| -------------------- | ------------------------------------------------------------ | -------------------------------- |
|
||||||
| compute_id | int | ID компьюта в составе группы |
|
| compute_id | int | ID компьюта в составе группы |
|
||||||
| name | string | Имя компьюта в составе группы |
|
| name | string | Имя компьюта в составе группы |
|
||||||
| status | string | Статус компьюта в составе группы |
|
| status | string | Статус компьюта в составе группы |
|
||||||
@@ -232,12 +245,14 @@ _Resource_ функция **decort_k8s_cp** принимает следующи
|
|||||||
### Описание структуры списка interfaces
|
### Описание структуры списка interfaces
|
||||||
|
|
||||||
| Параметр | Тип | Описание |
|
| Параметр | Тип | Описание |
|
||||||
| --- | --- | --- |
|
| ---------- | ------ | ----------------- |
|
||||||
| def_gw | string | Шлюз по умолчанию |
|
| def_gw | string | Шлюз по умолчанию |
|
||||||
| ip_address | string | IP интерфейса |
|
| ip_address | string | IP интерфейса |
|
||||||
|
|
||||||
## Пример использования
|
## Пример использования
|
||||||
|
|
||||||
Пример вызова _resource_ функции **decort_k8s_cp**:
|
Пример вызова _resource_ функции **decort_k8s_cp**:
|
||||||
|
|
||||||
```terraform
|
```terraform
|
||||||
resource "decort_k8s_cp" "cp" {
|
resource "decort_k8s_cp" "cp" {
|
||||||
# Название кластера
|
# Название кластера
|
||||||
|
|||||||
76
Home.md
76
Home.md
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user