diff --git a/.gitignore b/.gitignore index 23428f7..da8fd45 100644 --- a/.gitignore +++ b/.gitignore @@ -106,3 +106,4 @@ terraform-provider-mycloud artifacts/api-meta/*/errors.log TOOLS/bin/ TOOLS/docs-generator/bin/ +docs/30_registry/resources/ diff --git a/docs/30_registry/resources/Akhq.md b/docs/30_registry/resources/Akhq.md deleted file mode 100644 index 892b70d..0000000 --- a/docs/30_registry/resources/Akhq.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_Akhq - -Service ID: `119` - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -## Example - -```hcl -resource "nubes_akhq" "example" { - # required params ... - suspend_on_destroy = "suspend" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/Akhq_instruction.md b/docs/30_registry/resources/Akhq_instruction.md deleted file mode 100644 index 5d2d2ea..0000000 --- a/docs/30_registry/resources/Akhq_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для Akhq - -# Инструкция по развертыванию Apache Kafka через платформу

---
## 1. Общая информация
AKHQ — это веб-интерфейс для работы с кластерами Apache Kafka.
Позволяет просматривать топики, consumer group'ы, сообщения, ACL, схему безопасности, состояние брокеров и метаданные.
Поддерживает работу с несколькими кластерами Kafka одновременно, включая внутренние и внешние (TLS) подключения.

## Доступные операции
- **create** — Создание ресурса AKHQ
- **suspend** — Остановка ресурса
- **resume** — Возобновление работы ресурса
- **modify** — Модификация настроек
- **delete** — Удаление ресурса

---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:

* **Кластер Kafka к которому нужно настроить подключение**
Для использования AKHQ необходимо предварительно развернуть сервис Kafka. Пример: `kafka-external`.

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество узлов для работы Akhq. Пример `2`

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `512`

* **Квота (millicore ) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `500`

* **Имя домена:**
Dns Имя по которому будет происходить обращение к сервису. Указать необходимо уникальное имя до . ( то есть если необходимо получить dns ui) Пример: `kafka-external`

---
## 4. Выходные параметры
После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.
Ключевым из них является:

**connectionUrl**
Это полное доменное имя (FQDN), по которому будет доступен интерфейс AKHQ. После развёртывания подождите несколько минут — UI станет доступен по HTTPS, как только все сервисы полностью запустятся.

**Учетные данные**
Здесь представлены поля для ввода логина и пароля, с помощью которых вы сможете авторизоваться в сервисе.

---
## 5. Дополнительная информация
Учётные записи, созданные для работы с AKHQ, предоставляют доступ только для просмотра данных. Для управления Kafka, пожалуйста, используйте возможности личного кабинета.
--- diff --git a/docs/30_registry/resources/Akhq_ops.md b/docs/30_registry/resources/Akhq_ops.md deleted file mode 100644 index 88597a0..0000000 --- a/docs/30_registry/resources/Akhq_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_Akhq - -Service ID: `119` - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) diff --git a/docs/30_registry/resources/Akhq_params.md b/docs/30_registry/resources/Akhq_params.md deleted file mode 100644 index 88597a0..0000000 --- a/docs/30_registry/resources/Akhq_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_Akhq - -Service ID: `119` - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) - -[Overview](Akhq.md) | [Parameters](Akhq_params.md) | [Operations](Akhq_ops.md) diff --git a/docs/30_registry/resources/DEPRECATED.md b/docs/30_registry/resources/DEPRECATED.md deleted file mode 100644 index 662b15e..0000000 --- a/docs/30_registry/resources/DEPRECATED.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_DEPRECATED - -Service ID: `24` - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -## Example - -```text -resource "nubes_DEPRECATED" "example" { - # required params ... - delete_mode = "state_only" - resume_if_exists = true -} -``` diff --git a/docs/30_registry/resources/DEPRECATED_instruction.md b/docs/30_registry/resources/DEPRECATED_instruction.md deleted file mode 100644 index 34b47bb..0000000 --- a/docs/30_registry/resources/DEPRECATED_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для DEPRECATED - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED diff --git a/docs/30_registry/resources/DEPRECATED_ops.md b/docs/30_registry/resources/DEPRECATED_ops.md deleted file mode 100644 index 254b619..0000000 --- a/docs/30_registry/resources/DEPRECATED_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_DEPRECATED - -Service ID: `24` - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) diff --git a/docs/30_registry/resources/DEPRECATED_params.md b/docs/30_registry/resources/DEPRECATED_params.md deleted file mode 100644 index 254b619..0000000 --- a/docs/30_registry/resources/DEPRECATED_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_DEPRECATED - -Service ID: `24` - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) - -[Overview](DEPRECATED.md) | [Parameters](DEPRECATED_params.md) | [Operations](DEPRECATED_ops.md) diff --git a/docs/30_registry/resources/GiteaComplex.md b/docs/30_registry/resources/GiteaComplex.md deleted file mode 100644 index 9e6c1bc..0000000 --- a/docs/30_registry/resources/GiteaComplex.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_GiteaComplex - -Service ID: `114` - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -## Example - -```hcl -resource "nubes_gitea_complex" "example" { - # required params ... - suspend_on_destroy = "state_only" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/GiteaComplex_instruction.md b/docs/30_registry/resources/GiteaComplex_instruction.md deleted file mode 100644 index 3001377..0000000 --- a/docs/30_registry/resources/GiteaComplex_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для GiteaComplex - -Комплексная услуга из ["gittea", "postgres"] diff --git a/docs/30_registry/resources/GiteaComplex_ops.md b/docs/30_registry/resources/GiteaComplex_ops.md deleted file mode 100644 index 5630e6e..0000000 --- a/docs/30_registry/resources/GiteaComplex_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_GiteaComplex - -Service ID: `114` - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) diff --git a/docs/30_registry/resources/GiteaComplex_params.md b/docs/30_registry/resources/GiteaComplex_params.md deleted file mode 100644 index 5630e6e..0000000 --- a/docs/30_registry/resources/GiteaComplex_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_GiteaComplex - -Service ID: `114` - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) - -[Overview](GiteaComplex.md) | [Parameters](GiteaComplex_params.md) | [Operations](GiteaComplex_ops.md) diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse.md deleted file mode 100644 index 95d24a4..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse.md +++ /dev/null @@ -1,92 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## MAN - -
- -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (https://github.com/Altinity/clickhouse-operator) в ресурсной платформе типа k8s

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра Создать ClickHouse-Keeper.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу S3 Object Storage.
---

## Доступные операции

* create — Создание кластера
* delete — Удаление кластера
* suspend — Приостановка работы кластера
* resume — Возобновление работы кластера
* create_database — Создание базы данных
* delete_database — Удаление базы данных
* create_user — Создание пользователя и настройка прав доступа к базе данных
* delete_user — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию create - будет создан кластер
2. Выполнить операцию create_database - будет создана база данных
3. Выполнить операцию create_user - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

# Проверка доступности кластера
-curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"
-
-# Выполнение запроса
-curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"


## Простые кейсы
*Создать БД и обычной таблицы*
CREATE TABLE database.table
-(
-    id UInt64,
-    value String
-)
-ENGINE = MergeTree()
-ORDER BY id;
-
-INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);
-
-SELECT count() FROM database.table;

Базы и таблицы не реплицируются без специального ключа (ON CLUSTER 'clickhousek8s')
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
CREATE TABLE database.localUsers
-(
-    id UInt64,
-    value String
-)
-ENGINE = MergeTree()
-ORDER BY id;
-
-CREATE TABLE database.shardedTable
-AS localUsers
-ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);
-
-INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);
-
-SELECT count() FROM shardedTable;

Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
-(
-    user_id UInt64,
-    name String,
-    email String
-)
-ENGINE = ReplicatedMergeTree(
-    '/clickhouse/tables/{shard}/localUsers',
-    '{replica}'
-)
-ORDER BY user_id;
-
-CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
-AS database.localUsers
-ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());
-
-INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
-INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
-INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
-INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
-INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
-INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
-INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
-INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
-INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
-INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');
-
-SELECT * FROM database.localUsers;
-SELECT * FROM database.users;
-
-SELECT COUNT(*) AS total_users       FROM database.users;
-SELECT COUNT(*) AS total_users_local FROM database.localUsers;
- -- state_params (map) — параметры, отправленные в API при создании/изменении. -- state_out (map) — ответ API с результатами/выходными значениями. -- state_params_flat (map) — параметры в плоском виде (ключи с путями). -- state_out_flat (map) — ответы в плоском виде (ключи с путями). -- vault_secrets (map) — секреты, записанные в Vault для ресурса. -- vault_url (string) — адрес Vault для ресурса. -- vault_user_path (string) — путь пользователя в Vault. -- vault_fields (list) — список ключей доступных секретов. -
- -## Summary - -# Инструкция по управлению кластерами и пользователями ClickHouse - - -## Lifecycle behavior - -- If suspend/resume exist, delete maps to suspend and apply can resume. -- Advanced users may override delete_mode and resume_if_exists. diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database.md deleted file mode 100644 index 5a4ae20..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -## Example - -```hcl -resource "nubes_clickhouse_database" "example" { - clickhouse_id = nubes_clickhouse.example.id - database_name = "TODO" -} -``` diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_ops.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_ops.md deleted file mode 100644 index bc60fa3..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_params.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_params.md deleted file mode 100644 index bc60fa3..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_database_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_example.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_example.md deleted file mode 100644 index 7a7ed5d..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_example.md +++ /dev/null @@ -1,58 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Copy-ready manifest (`clickhouse_main.tf`) - -
terraform {
-  required_providers {
-    nubes = {
-      source  = "terra.k8c.ru/nubes/nubes"
-      version = "2.1.10" # Для определения актуальной версии наберите в терминале terraform version
-    }
-  }
-}
-
-# Токен доступа api_token к Nubes API  — замените на реальный.
-provider "nubes" {
-  api_token    = "token_***"
-  api_endpoint = "https://deck-api.ngcloud.ru/api/v1/index.cfm"
-}
-resource "nubes_clickhouse" "baza" {
-  # TODO - обязательный параметр, задаваемый пользователем
-  resourceRealm             = "TODO" # Кластер Kubernetes в котором будет развернуто приложение, например "k8s-3.ext.nubes.ru"
-  s3Uid                     = "TODO" # Экземпляр (учетная запись) S3, это имя S3 Object Storage
-
-  # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте
-  resourceInstances         = 1
-  resourceInstancesShards   = 1
-  resourceCPU               = 1000
-  resourceMemory            = 1536
-  appVersion                = "25.10"
-  resourceDisk              = 10
-  needExternalAddressMaster = false
-  needCreateKeeper          = true
-  resourceCPUKeeper         = 50
-  resourceMemoryKeeper      = 152
-  resourceInstancesKeeper   = 1
-  ext_BACKUP_SCHEDULE       = "0 0 * * *"
-  ext_BACKUP_NUM_TO_RETAIN  = 7
-}
-
- -## Outputs usage - -
# Выходные параметры можно использовать как
-nubes_clickhouse.baza.state_params["имя_ключа"]
-nubes_clickhouse.baza.state_out["имя_ключа"]
-nubes_clickhouse.baza.state_params_flat["имя_ключа"]
-nubes_clickhouse.baza.state_out_flat["имя_ключа"]
-nubes_clickhouse.baza.vault_secrets["имя_ключа"]
-nubes_clickhouse.baza.vault_url
-nubes_clickhouse.baza.vault_user_path
-nubes_clickhouse.baza.vault_fields
-
diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_instruction.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_instruction.md deleted file mode 100644 index acc9b87..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для clickhouse - -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (`https://github.com/Altinity/clickhouse-operator`) в ресурсной платформе типа `k8s`

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра `Создать ClickHouse-Keeper`.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу `S3 Object Storage`.
---

## Доступные операции

* **create** — Создание кластера
* **delete** — Удаление кластера
* **suspend** — Приостановка работы кластера
* **resume** — Возобновление работы кластера
* **create_database** — Создание базы данных
* **delete_database** — Удаление базы данных
* **create_user** — Создание пользователя и настройка прав доступа к базе данных
* **delete_user** — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию `create` - будет создан кластер
2. Выполнить операцию `create_database` - будет создана база данных
3. Выполнить операцию `create_user` - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

```bash
# Проверка доступности кластера
curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"

# Выполнение запроса
curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"
```

## Простые кейсы
*Создать БД и обычной таблицы*
```clickhouse
CREATE TABLE database.table
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM database.table;
```
Базы и таблицы не реплицируются без специального ключа (`ON CLUSTER 'clickhousek8s'`)
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
```clickhouse
CREATE TABLE database.localUsers
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

CREATE TABLE database.shardedTable
AS localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);

INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM shardedTable;
```
Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
```clickhouse
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
(
user_id UInt64,
name String,
email String
)
ENGINE = ReplicatedMergeTree(
'/clickhouse/tables/{shard}/localUsers',
'{replica}'
)
ORDER BY user_id;

CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
AS database.localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());

INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');

SELECT * FROM database.localUsers;
SELECT * FROM database.users;

SELECT COUNT(*) AS total_users FROM database.users;
SELECT COUNT(*) AS total_users_local FROM database.localUsers;
``` diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_man.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_man.md deleted file mode 100644 index 4f1df93..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: clickhouse - -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (`https://github.com/Altinity/clickhouse-operator`) в ресурсной платформе типа `k8s`

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра `Создать ClickHouse-Keeper`.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу `S3 Object Storage`.
---

## Доступные операции

* **create** — Создание кластера
* **delete** — Удаление кластера
* **suspend** — Приостановка работы кластера
* **resume** — Возобновление работы кластера
* **create_database** — Создание базы данных
* **delete_database** — Удаление базы данных
* **create_user** — Создание пользователя и настройка прав доступа к базе данных
* **delete_user** — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию `create` - будет создан кластер
2. Выполнить операцию `create_database` - будет создана база данных
3. Выполнить операцию `create_user` - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

```bash
# Проверка доступности кластера
curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"

# Выполнение запроса
curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"
```

## Простые кейсы
*Создать БД и обычной таблицы*
```clickhouse
CREATE TABLE database.table
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM database.table;
```
Базы и таблицы не реплицируются без специального ключа (`ON CLUSTER 'clickhousek8s'`)
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
```clickhouse
CREATE TABLE database.localUsers
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

CREATE TABLE database.shardedTable
AS localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);

INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM shardedTable;
```
Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
```clickhouse
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
(
user_id UInt64,
name String,
email String
)
ENGINE = ReplicatedMergeTree(
'/clickhouse/tables/{shard}/localUsers',
'{replica}'
)
ORDER BY user_id;

CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
AS database.localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());

INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');

SELECT * FROM database.localUsers;
SELECT * FROM database.users;

SELECT COUNT(*) AS total_users FROM database.users;
SELECT COUNT(*) AS total_users_local FROM database.localUsers;
``` diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_ops.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_ops.md deleted file mode 100644 index 941bf9b..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_ops.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](clickhouse_params_create.md) -- `modify` — Изменение кластера. Параметры: [Modify params](clickhouse_params_modify.md) -- `delete` — Удаление кластера (после `suspend`, требуется время на остановку) -- `suspend` — Остановка кластера (pods удаляются, PV остаются) -- `resume` — Возобновление работы кластера -- `create_database` — Создание базы данных. См. [nubes_clickhouse_database](clickhouse_database.md) -- `delete_database` — Удаление базы данных. См. [nubes_clickhouse_database](clickhouse_database.md) -- `create_user` — Создание пользователя. См. [nubes_clickhouse_user](clickhouse_user.md) -- `delete_user` — Удаление пользователя. См. [nubes_clickhouse_user](clickhouse_user.md) - diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_outputs.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_outputs.md deleted file mode 100644 index b4ce249..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении. -- `state_out` (map) — ответ API с результатами/выходными значениями. -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями). -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями). -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса. -- `vault_url` (string) — адрес Vault для ресурса. -- `vault_user_path` (string) — путь пользователя в Vault. -- `vault_fields` (list) — список ключей доступных секретов. diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params.md deleted file mode 100644 index c78f96d..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Parameters - -- [Create params](clickhouse_params_create.md) -- [Modify params](clickhouse_params_modify.md) diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_create.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_create.md deleted file mode 100644 index 3020f40..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_create.md +++ /dev/null @@ -1,47 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
572resourceRealmstringВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
573s3Uiduuid**Если список не отображается**
перейдите в раздел `S3 Object Storage`
операция `create`
ref_svc_id=12
581ipSpaceNameMasterstringИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
574resourceInstancesinteger1**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
575resourceInstancesShardsinteger1**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
576resourceCPUinteger1000Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
577resourceMemoryinteger1536Указывается в Megabytesminvalue=1536; maxvalue=8192
578appVersionstring25.10Версия `clickhouse-server`value_list=25.10
579resourceDiskinteger10Указывается в Gigabytesminvalue=1; maxvalue=999
580needExternalAddressMasterbooleanfalseДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
582needCreateKeeperbooleantrueАналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
583resourceCPUKeeperinteger50Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
584resourceMemoryKeeperinteger152Указывается в Megabytesminvalue=152; maxvalue=8192
585resourceInstancesKeeperinteger1Для **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
586ext_BACKUP_SCHEDULEstring0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
587ext_BACKUP_NUM_TO_RETAINinteger7Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- -
-Параметры жизненного цикла (Lifecycle defaults)
-По умолчанию: `delete_mode_default = suspend`, `resume_if_exists_default = True`.
-Если для сервиса доступны операции `suspend` и `resume`, то `delete` выполняет приостановку (без удаления данных),
-а `apply` при необходимости возобновляет работу существующего ресурса.
-Менять эти значения стоит только в продвинутых сценариях — через параметры `delete_mode` и `resume_if_exists` в манифесте. -
diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_modify.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_modify.md deleted file mode 100644 index b216d58..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_params_modify.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -## Modify params - - - - - - - - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
603resourceInstancesinteger**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
604resourceInstancesShardsinteger**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
605resourceCPUintegerУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
606resourceMemoryintegerУказывается в Megabytesminvalue=1536; maxvalue=8192
607appVersionstringВерсия `clickhouse-server`
608resourceDiskintegerУказывается в Gigabytes
**Нельзя** выставлять меньше текущего значения
minvalue=1; maxvalue=999
609needExternalAddressMasterbooleanДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
610ipSpaceNameMasterstringИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
611needCreateKeeperbooleanАналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
612resourceCPUKeeperintegerУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
613resourceMemoryKeeperintegerУказывается в Megabytesminvalue=152; maxvalue=8192
614resourceInstancesKeeperintegerДля **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
615ext_BACKUP_SCHEDULEstringПринимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
616ext_BACKUP_NUM_TO_RETAINintegerКол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user.md deleted file mode 100644 index 623cf7f..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user.md +++ /dev/null @@ -1,22 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -## Example - -```hcl -resource "nubes_clickhouse_user" "example" { - clickhouse_id = nubes_clickhouse.example.id - username = "TODO" - database_name = ["database"] - access_hosts = ::/0 -} -``` diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_ops.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_ops.md deleted file mode 100644 index 8dab3d2..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) diff --git a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_params.md b/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_params.md deleted file mode 100644 index 8dab3d2..0000000 --- a/docs/30_registry/resources/_snapshot_clickhouse_20260225/clickhouse_user_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) diff --git a/docs/30_registry/resources/akhq.md b/docs/30_registry/resources/akhq.md deleted file mode 100644 index b160ca3..0000000 --- a/docs/30_registry/resources/akhq.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## MAN - -
-# Инструкция по развертыванию Apache Kafka через платформу

---
## 1. Общая информация
AKHQ — это веб-интерфейс для работы с кластерами Apache Kafka.
Позволяет просматривать топики, consumer group'ы, сообщения, ACL, схему безопасности, состояние брокеров и метаданные.
Поддерживает работу с несколькими кластерами Kafka одновременно, включая внутренние и внешние (TLS) подключения.

## Доступные операции
- **create** — Создание ресурса AKHQ
- **suspend** — Остановка ресурса
- **resume** — Возобновление работы ресурса
- **modify** — Модификация настроек
- **delete** — Удаление ресурса

---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:

* **Кластер Kafka к которому нужно настроить подключение**
Для использования AKHQ необходимо предварительно развернуть сервис Kafka. Пример: `kafka-external`.

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество узлов для работы Akhq. Пример `2`

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `512`

* **Квота (millicore ) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `500`

* **Имя домена:**
Dns Имя по которому будет происходить обращение к сервису. Указать необходимо уникальное имя до . ( то есть если необходимо получить dns ui) Пример: `kafka-external`

---
## 4. Выходные параметры
После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.
Ключевым из них является:

**connectionUrl**
Это полное доменное имя (FQDN), по которому будет доступен интерфейс AKHQ. После развёртывания подождите несколько минут — UI станет доступен по HTTPS, как только все сервисы полностью запустятся.

**Учетные данные**
Здесь представлены поля для ввода логина и пароля, с помощью которых вы сможете авторизоваться в сервисе.

---
## 5. Дополнительная информация
Учётные записи, созданные для работы с AKHQ, предоставляют доступ только для просмотра данных. Для управления Kafka, пожалуйста, используйте возможности личного кабинета.
--- -
diff --git a/docs/30_registry/resources/akhq_example.md b/docs/30_registry/resources/akhq_example.md deleted file mode 100644 index 7521bd2..0000000 --- a/docs/30_registry/resources/akhq_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Copy-ready manifest (`akhq_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_akhq" "baza" { - resource_realm = "TODO" # Выбрать платформу из списка - domain = "TODO" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - kafka_uid = "TODO" # Выбрать кластер из списка - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_memory = 512 # Пример: `1024` - resource_c_p_u = 500 # Пример: `1000` - resource_instances = 1 -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_akhq.baza.state_params["имя_ключа"] -nubes_akhq.baza.state_out["имя_ключа"] -nubes_akhq.baza.state_params_flat["имя_ключа"] -nubes_akhq.baza.state_out_flat["имя_ключа"] -nubes_akhq.baza.vault_secrets["имя_ключа"] -nubes_akhq.baza.vault_url -nubes_akhq.baza.vault_user_path -nubes_akhq.baza.vault_fields -``` diff --git a/docs/30_registry/resources/akhq_example_ops.md b/docs/30_registry/resources/akhq_example_ops.md deleted file mode 100644 index bcfc56b..0000000 --- a/docs/30_registry/resources/akhq_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_example.md) | [Parameters](akhq_example_params.md) | [Operations](akhq_example_ops.md) diff --git a/docs/30_registry/resources/akhq_example_params.md b/docs/30_registry/resources/akhq_example_params.md deleted file mode 100644 index bcfc56b..0000000 --- a/docs/30_registry/resources/akhq_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_example.md) | [Parameters](akhq_example_params.md) | [Operations](akhq_example_ops.md) diff --git a/docs/30_registry/resources/akhq_man.md b/docs/30_registry/resources/akhq_man.md deleted file mode 100644 index fd82f10..0000000 --- a/docs/30_registry/resources/akhq_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: akhq - -# Инструкция по развертыванию Apache Kafka через платформу

---
## 1. Общая информация
AKHQ — это веб-интерфейс для работы с кластерами Apache Kafka.
Позволяет просматривать топики, consumer group'ы, сообщения, ACL, схему безопасности, состояние брокеров и метаданные.
Поддерживает работу с несколькими кластерами Kafka одновременно, включая внутренние и внешние (TLS) подключения.

## Доступные операции
- **create** — Создание ресурса AKHQ
- **suspend** — Остановка ресурса
- **resume** — Возобновление работы ресурса
- **modify** — Модификация настроек
- **delete** — Удаление ресурса

---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:

* **Кластер Kafka к которому нужно настроить подключение**
Для использования AKHQ необходимо предварительно развернуть сервис Kafka. Пример: `kafka-external`.

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество узлов для работы Akhq. Пример `2`

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `512`

* **Квота (millicore ) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `500`

* **Имя домена:**
Dns Имя по которому будет происходить обращение к сервису. Указать необходимо уникальное имя до . ( то есть если необходимо получить dns ui) Пример: `kafka-external`

---
## 4. Выходные параметры
После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.
Ключевым из них является:

**connectionUrl**
Это полное доменное имя (FQDN), по которому будет доступен интерфейс AKHQ. После развёртывания подождите несколько минут — UI станет доступен по HTTPS, как только все сервисы полностью запустятся.

**Учетные данные**
Здесь представлены поля для ввода логина и пароля, с помощью которых вы сможете авторизоваться в сервисе.

---
## 5. Дополнительная информация
Учётные записи, созданные для работы с AKHQ, предоставляют доступ только для просмотра данных. Для управления Kafka, пожалуйста, используйте возможности личного кабинета.
--- diff --git a/docs/30_registry/resources/akhq_ops.md b/docs/30_registry/resources/akhq_ops.md deleted file mode 100644 index 9e4364f..0000000 --- a/docs/30_registry/resources/akhq_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](akhq_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](akhq_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/akhq_outputs.md b/docs/30_registry/resources/akhq_outputs.md deleted file mode 100644 index 39d0188..0000000 --- a/docs/30_registry/resources/akhq_outputs.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (prod / Akhq-4 / suspended) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["resourceCPU"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/akhq_outputs_ops.md b/docs/30_registry/resources/akhq_outputs_ops.md deleted file mode 100644 index 2e30094..0000000 --- a/docs/30_registry/resources/akhq_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_outputs.md) | [Parameters](akhq_outputs_params.md) | [Operations](akhq_outputs_ops.md) diff --git a/docs/30_registry/resources/akhq_outputs_params.md b/docs/30_registry/resources/akhq_outputs_params.md deleted file mode 100644 index 2e30094..0000000 --- a/docs/30_registry/resources/akhq_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_outputs.md) | [Parameters](akhq_outputs_params.md) | [Operations](akhq_outputs_ops.md) diff --git a/docs/30_registry/resources/akhq_params.md b/docs/30_registry/resources/akhq_params.md deleted file mode 100644 index b419cf6..0000000 --- a/docs/30_registry/resources/akhq_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Parameters - -- [Create params](akhq_params_create.md) -- [Modify params](akhq_params_modify.md) diff --git a/docs/30_registry/resources/akhq_params_create.md b/docs/30_registry/resources/akhq_params_create.md deleted file mode 100644 index 687ca12..0000000 --- a/docs/30_registry/resources/akhq_params_create.md +++ /dev/null @@ -1,40 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
550resource_realmstringВыбрать платформу из спискаfunc=getAvailableResourceRealms
553domainstringЕсли будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
555kafka_uiduuidВыбрать кластер из спискаref_svc_id=116
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
551resource_memoryinteger512Пример: `1024`minvalue=512
552resource_cpuinteger500Пример: `1000`minvalue=500
554resource_instancesinteger1minvalue=1
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/akhq_params_create_ops.md b/docs/30_registry/resources/akhq_params_create_ops.md deleted file mode 100644 index 55a5017..0000000 --- a/docs/30_registry/resources/akhq_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_params_create.md) | [Parameters](akhq_params_create_params.md) | [Operations](akhq_params_create_ops.md) diff --git a/docs/30_registry/resources/akhq_params_create_params.md b/docs/30_registry/resources/akhq_params_create_params.md deleted file mode 100644 index 55a5017..0000000 --- a/docs/30_registry/resources/akhq_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_params_create.md) | [Parameters](akhq_params_create_params.md) | [Operations](akhq_params_create_ops.md) diff --git a/docs/30_registry/resources/akhq_params_modify.md b/docs/30_registry/resources/akhq_params_modify.md deleted file mode 100644 index 1ba2657..0000000 --- a/docs/30_registry/resources/akhq_params_modify.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -## Modify params - - - - - -
IDCodeTypeDescriptionConstraints
565kafka_uiduuidВыбрать кластер из спискаref_svc_id=116
diff --git a/docs/30_registry/resources/akhq_params_modify_ops.md b/docs/30_registry/resources/akhq_params_modify_ops.md deleted file mode 100644 index 540c967..0000000 --- a/docs/30_registry/resources/akhq_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_params_modify.md) | [Parameters](akhq_params_modify_params.md) | [Operations](akhq_params_modify_ops.md) diff --git a/docs/30_registry/resources/akhq_params_modify_params.md b/docs/30_registry/resources/akhq_params_modify_params.md deleted file mode 100644 index 540c967..0000000 --- a/docs/30_registry/resources/akhq_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_akhq - -Service ID: `119` - -Service Name: Akhq - -[Manual](akhq.md) | [Create params](akhq_params_create.md) | [Modify params](akhq_params_modify.md) | [Output params](akhq_outputs.md) | [Operations](akhq_ops.md) | [Example](akhq_example.md) - -[Overview](akhq_params_modify.md) | [Parameters](akhq_params_modify_params.md) | [Operations](akhq_params_modify_ops.md) diff --git a/docs/30_registry/resources/all_resources.md b/docs/30_registry/resources/all_resources.md deleted file mode 100644 index 6e6d908..0000000 --- a/docs/30_registry/resources/all_resources.md +++ /dev/null @@ -1,1688 +0,0 @@ -# Provider resources (full list) - -Auto-generated summary from API/YAML (max detail). - -## nubes_dummy -- Service ID: 1 -- Description: Болванка для тестов -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -## Болванка для тестов.

А это просто много букв, чтобы посмотреть, как ведет себя текст при переполнении контейнера.


``` json
{
"iamServiceUrl": "https://auth-api-test.ngcloud.ru/api/v1/user",
"idpResponse": {
"prefix": {
"charset": "",
"status_text": "Request Time-out",
"text": true,
"errordetail": "",
"filecontent": "Connection Timeout",
"responseheader": {},
"header": "",
"statuscode": "408 Request Time-out",
&quo... - -### Create parameters - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
198durationMsintegerДА0перед завершением подождать (sleep) столько миллисекунд
199failAtStartbooleanДАfalse**Операция не будет завершена**
Она будет в постоянном статусе PENDING, однако в Jenkins Job завершится с ошибкой
value_list=false, true
200failInProgressbooleanДАfalseесли true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdbvalue_list=false, true
201whereFailintegerНЕТ1принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault writevalue_list=1, 2, 3
242resourceRealmstringДАНаименование ресурсной платформы для подключенияfunc=getAvailableResourceRealms
286bodymessagestringНЕТДата, уходящая в Vault
321mapExamplemapНЕТ
322jsonExamplejsonНЕТДля тестирования интерфейса. Сюда можно писать корректный json
396nestedRefExampleНЕТ
447yamlExampleyamlНЕТ
647mapFixedmap-fixedНЕТНовый тип поля
654arrayMapFixedExamplearray-map-fixedНЕТArray of map-fixed
- -### Modify parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
287durationMsintegerДА0перед завершением подождать (sleep) столько миллисекунд
288failAtStartbooleanДАfalseесли true, завершить джоб, ничего не записывая в cmdbvalue_list=false, true
289failInProgressbooleanДАfalseесли true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdbvalue_list=false, true
290whereFailintegerНЕТпринимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault writevalue_list=1, 2, 3
291bodymessageНЕТДата, уходящая в Vault
373mapExamplemapНЕТ{}
374jsonExampleНЕТ
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `18` | durationMs, failAtStart, failInProgress, whereFail, resourceRealm, bodymessage, mapExample, jsonExample, nestedRefExample, yamlExample, mapFixed, arrayMapFixedExample | Это мануал к операции CREATE сервиса Болванка | -| `delete` | `instance` | `delete` | `` | `71` | | | -| `modify` | `instance` | `modify` | `` | `92` | durationMs, failAtStart, failInProgress, whereFail, bodymessage, mapExample, jsonExample | | -| `redeploy` | `action` | `redeploy` | `` | `240` | | | -| `resume` | `instance` | `resume` | `` | `94` | | | -| `suspend` | `instance` | `suspend` | `` | `93` | | | - - -## nubes_template -- Service ID: 2 -- Description: Болванка для тестирования -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
202resourceCPUintegerДА100minvalue=100; maxvalue=4000
203resourceMemoryintegerДА200minvalue=128; maxvalue=8192
204resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
205resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
206resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
207domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
- -### Modify parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
208resourceCPUintegerНЕТminvalue=100; maxvalue=4000
209resourceMemoryintegerНЕТminvalue=128; maxvalue=8192
210resourceDiskintegerНЕТ1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
211resourceInstancesintegerНЕТКоличество узловminvalue=1; maxvalue=7
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `74` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, domain | | -| `delete` | `instance` | `delete` | `` | `75` | | | -| `modify` | `instance` | `modify` | `` | `76` | resourceCPU, resourceMemory, resourceDisk, resourceInstances | | -| `resume` | `instance` | `resume` | `` | `98` | | | -| `suspend` | `instance` | `suspend` | `` | `97` | | | - - -## nubes_s3 -- Service ID: 12 -- Description: Масштабируемое хранилище данных -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Руководство доступно по ссылке:
https://docs.s3.msk-1.ngcloud.ru/s3/s3.description.html - -### Create parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
163resourceRealmДАПлатформа для развертыванияfunc=getAvailableResourceRealms
320displayNamestringДАЧеловеко-читаемое имя (транслит из Elma) - передаётся имя клиента
- -### Modify parameters - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
50maxSizeGbPerUserintegerНЕТmaxSizeGb. Передаём рукамиminvalue=-1; maxvalue=50000
51maxObjectsPerBucketintegerНЕТКвота на бакет. Кол-во объектов. Передаём рукамиminvalue=1; maxvalue=1e+07
52maxBucketsPerUserintegerНЕТКвота на пользователя. Количество бакетов пользователя. Передаём рукамиminvalue=1; maxvalue=1000
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `1` | resourceRealm, displayName | | -| `create_sub_user` | `subresource` | `create` | `sub_user` | `6` | subUserName, subUserAccess | | -| `delete` | `instance` | `delete` | `` | `5` | | | -| `delete_sub_user` | `subresource` | `delete` | `sub_user` | `7` | subUserName | | -| `modify` | `instance` | `modify` | `` | `4` | maxSizeGbPerUser, maxObjectsPerBucket, maxBucketsPerUser | При первичном вызове операции услуга Trial прекращает действие | -| `resume` | `instance` | `resume` | `` | `3` | | | -| `suspend` | `instance` | `suspend` | `` | `2` | | | - - -## nubes_s3bucket -- Service ID: 13 -- Description: Бакет в сервисе S3 -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
124s3UserUiduuidДАUID Корневой услуги S3. На основе него будет создан бакет.ref_svc_id=12
125bucketNamestringДАИмя бакета s3
126maxSizeДА-1Максимальный размер бакета s3. Если поставить -1, будет безлимит. Размер указывается в Bytes
127readAllbooleanДАfalseПубличный доступ на чтение позволяет любому пользователю интернета скачивать объекты из бакета.value_list=false, true
128listAllbooleanДАfalseПубличный доступ к листингу позволяет любому пользователю интернета получить список объектов в бакете.value_list=false, true
129corsAllbooleanДАfalseПубличный доступ к чтению настроек позволяет любому пользователю интернета читать конфигурации CORSvalue_list=false, true
130placementstringДАHOTКласс хранилища, который используется по умолчанию при загрузке объектов. Чем холоднее, тем дешевле место, но дороже обращенияvalue_list=HOT, COLD
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `51` | s3UserUid, bucketName, maxSize, readAll, listAll, corsAll, placement | | -| `delete` | `instance` | `delete` | `` | `52` | | | - - -## nubes_vc_org -- Service ID: 19 -- Description: Организация в Cloud Director -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей... - -### Create parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
418resourceRealmstringДАВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
556organizationTypestringДАiaasДоступ к организации предоставляется только при выборе `iaas`value_list=iaas, saas
- -### Modify parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
662vIPConfigurearray-map-fixedДА
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `136` | resourceRealm, organizationType | `IaaS` - Доступ в Keycloak предоставляется пользователю, который создаёт услугу
`SaaS` - Без доступа к Keycloak | -| `delete` | `instance` | `delete` | `` | `137` | | Удалить возможно только через 14 дней после выполнения операции `suspend`
**ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого тенанта**

Если существуют инстансы VDC, Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов | -| `modify` | `instance` | `modify` | `` | `207` | vIPConfigure | Для возможности изменения параметров предварительно необходимо создать **Виртуальный датацентр (VDC)**, потом **Сетевой шлюз периметра (Edge Gateway)**
Также при удалении ipSpaces убедитесь, что все внешние IP удалены. В случае если хоть одна привязка vIP есть, данный ipSpace удалён **не будет** | -| `reconcile` | `action` | `reconcile` | `` | `249` | | | -| `resume` | `instance` | `resume` | `` | `144` | | | -| `suspend` | `instance` | `suspend` | `` | `143` | | Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри тенанта | - - -## nubes_vc_org_saas -- Service ID: 20 -- Description: Без интеграции Keycloak -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Верхнеуровневая сущность создаваемая для Заказчика.
Внутри Организация вы можете создать: Виртуальные датацентры, Каталоги. - -### Create parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
185resourceRealmstringДАНаименование ресурсной платформыfunc=getAvailableResourceRealms
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `8` | resourceRealm | Создание организации в Cloud Director
Id в клауд директоре создаётся на основе contragentCode | -| `delete` | `instance` | `delete` | `` | `23` | | | -| `resume` | `instance` | `resume` | `` | `119` | | | -| `suspend` | `instance` | `suspend` | `` | `118` | | | - - -## nubes_vc_vdc -- Service ID: 21 -- Description: Выделение вычислительных ресурсов -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Виртуальный датацентр (vDC) через платформу

## 1. Общая информация

**Виртуальный датацентр (vDC)** — это логическая изолированная среда в VMware Cloud Director, предназначенная для размещения и управления виртуальными машинами, сетевой инфраструктурой и ресурсами хранения. Сервис обеспечивает выделение вычислительных ресурсов под конкретную организацию и предоставляет гибкие параметры масштабирования, контроля потребления и разделения ресурсов.

### Доступные операции

**create** — Создание виртуального датацентра (vDC) с заданными параметрами CPU, RAM, Storage и сетевой конфигурацией.
**delete** — Удаление vDC. Требуется предварительный перевод vDC в состояние *suspend*. Полное удаление возможно через 14 дней.
**modif... - -### Create parameters - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
30organizationUiduuidДАДля создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director`ref_svc_id=19
335providerVdcstringДАПриписка `2.8` - Скорость vCPU - 2800MHz
И так далее...
361storageConfigarray-map-fixedДАПервая политика в списке указывается как &quot;По умолчанию&quot;
397cpuGuaranteedintegerДА20Свойство нельзя изменить после созданияvalue_list=20, 50, 80
398memGuaranteedintegerДА20После создания нельзя изменитьvalue_list=20, 50, 80
557cpuAllocatedintegerДА10штminvalue=1; maxvalue=200
558memAllocatedintegerДА20gbminvalue=1; maxvalue=4096
746networkProviderstringДА
- -### Modify parameters - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
560cpuAllocatedintegerДАштminvalue=1; maxvalue=999
561memAllocatedintegerДАgbminvalue=1; maxvalue=1024
562storageConfigarray-map-fixedДАПервая политика в списке указывается как &quot;По умолчанию&quot;
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `9` | organizationUid, providerVdc, storageConfig, cpuGuaranteed, memGuaranteed, cpuAllocated, memAllocated, networkProvider | | -| `delete` | `instance` | `delete` | `` | `24` | | Удалить возможно только через 14 дней после выполнения операции `suspend`
**ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого VDC**

Если существуют инстансы Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов | -| `modify` | `instance` | `modify` | `` | `112` | cpuAllocated, memAllocated, storageConfig | | -| `reconcile` | `action` | `reconcile` | `` | `250` | | | -| `resume` | `instance` | `resume` | `` | `172` | | | -| `suspend` | `instance` | `suspend` | `` | `171` | | Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри VDC | - - -## nubes_vc_nsxt -- Service ID: 22 -- Description: Обеспечение сетевой доступности в тенанте -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Сетевой шлюз периметра (Edge) через платформу

## 1. Общая информация

Сервис **Сетевой шлюз периметра (Edge)** предназначен для создания периметрового сетевого шлюза в рамках одного виртуального датацентра (vDC) или группы виртуальных датацентров (groupvDC).
При создании автоматически разворачивается routed-сеть с адресным пространством `10.10.102.0/24`.
Сервис обеспечивает сетевую изоляцию, маршрутизацию, а также может включать функциональность балансировщика нагрузки AVI (ALB) для последующей интеграции, включая поддержку кластеров Штурвал.

### Доступные операции

**create** — Создание нового Edge с привязкой к vDC или groupvDC и развёртыванием routed-сети.
**delete** — Удаление ранее созданного Edge. Недос... - -### Create parameters - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
8vdcUidstringНЕТНеобходимо, если выбран тип подключаемой VDC: `vdc`ref_svc_id=21
340needEnableAVIbooleanДАfalseПараметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указатьvalue_list=false, true
341virtualServicesCountintegerНЕТ1Во избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB`
minvalue=1; maxvalue=4
621vdcTypestringДАvdcПри выборе vdc обеспечивает сетевую доступность только в рамках этого vdc
При выборе groupvdc обеспечивает сетевую доступность между всеми vdc, которые включены в groupvdc
value_list=vdc, vdcGroup
622vdcGroupUidstringНЕТНеобходимо, если выбран тип подключаемой VDC: `groupvdc`ref_svc_id=29
- -### Modify parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
368needEnableAVIbooleanНЕТПараметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указатьvalue_list=false, true
369virtualServicesCountintegerНЕТВо избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB`
minvalue=1; maxvalue=4
371needExternalAddressSNATbooleanНЕТПараметр `ip Space для VIP` станет обязательным, если указан `true`value_list=false, true
372ipSpaceNamestringНЕТИмя ip Space для внешнего IP

getKeyListFromStruct(getInstanceState(getValueFromStruct(getInstanceState(getValueFromStruct(getInstanceState(), &quot;params.vdcUid&quot;)), &quot;params.organizationUid&quot;)), &quot;params.vIPConfigure&quot;)
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `10` | vdcUid, needEnableAVI, virtualServicesCount, vdcType, vdcGroupUid | | -| `delete` | `instance` | `delete` | `` | `25` | | Невозможно удалить если routed-сеть в Edge связана с:
- vApp
- VM
- Kubernetes-кластер Штурвал

Запустить операцию возможно, но будет ошибка | -| `modify` | `instance` | `modify` | `` | `111` | needEnableAVI, virtualServicesCount, needExternalAddressSNAT, ipSpaceName | Для создания SNAT Правила убедитесь, что в организации есть свободные IP
Редактировать кол-во свободных IP можно в услуге `Организация в Cloud Director` -> `modify` | -| `reconcile` | `action` | `reconcile` | `` | `252` | | | - - -## nubes_vc_vm -- Service ID: 23 -- Description: Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ - -### Create parameters - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
33vappUiduuidДАInstanceUid vApp. vApp должен быть созданref_svc_id=26
35vmNamestringДАvm0001Имя ВМ. Не поддерживает спец-символыregex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
36vmCpustringДА2CPU
37vmRamstringДА2RAM (GB)
38vmDisksizestringДА10Размер диска под сервис (GB)
176templateNamestringДАRockyLinux_9-16GОСvalue_list=RockyLinux_9-16G, OracleLinux_9-16G, Ubuntu_24-20G, Ubuntu_22-20G
177accessIpListstringДА79.111.119.78/32 185.247.187.1/32Вставить содержимое из 'curl ifconfig.io'
IP адреса в CIDR формате через пробел для настройки аксес листов
406ipSpaceNamestringДАБрать из свойств ресурсной платформы
.vcd.ipSpace

Имя IP-space для выделения внешнего IP (IP выделяется обязательно)
- -### Modify parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
186vmCpuintegerНЕТCPU
187vmRamintegerНЕТRAM
188vmDisksizeintegerНЕТРазмер диска под сервис (GB)
189accessIpListstringНЕТIP адреса в CIDR формате через пробел для настройки аксес листов
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `26` | vappUid, vmName, vmCpu, vmRam, vmDisksize, templateName, accessIpList, ipSpaceName | | -| `delete` | `instance` | `delete` | `` | `29` | | | -| `modify` | `instance` | `modify` | `` | `68` | vmCpu, vmRam, vmDisksize, accessIpList | Операция автоматически останавливает ВМ. | -| `resume` | `instance` | `resume` | `` | `28` | | | -| `suspend` | `instance` | `suspend` | `` | `27` | | | - - -## nubes_vcexternalip -- Service ID: 25 -- Description: Резервирование IP адреса -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**
Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать

Резервировать публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.
Вы можете назначить IP адрес для существующего экземпляра сервиса. - -### Create parameters - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
140serviceUidstringДА
141dnatCreatebooleanДАtrueНеобходимо создать DNAT-правило.
142internalPortAccessstringДА5432Порт для связки ната с адресом. Несколько значений можно передавать через пробел. Если передать all, то dnat будет на все порты. Требует dnatCreate=true
143snatCreatebooleanНЕТНеобходимо создать SNAT-правило.
144internalAddrAccessstringДАВнутренний адрес для связки ната. Требует dnatCreate=true или snatCreate=true
324fromServiceNamespacestringДАNamespace составной услуги (для отображения правил FW)
325fromServiceCloudEdgeNamestringНЕТEdge составной услуги (указывать, если resourceRealm связан с CloudDirector)
326fromServiceCloudVdcNameНЕТVdc составной услуги (указывать, если resourceRealm связан с CloudDirector)
327fromServiceCloudOrgNamestringНЕТOrg составной услуги (указывать, если resourceRealm связан с CloudDirector)
328fromServiceCloudVmwareUrlstringНЕТApi-Url составной услуги (указывать, если resourceRealm связан с CloudDirector)
336ipSpaceNamestringДАТип ip Space (internet-ipv4-v1 / internet-antiddos-v1 / internet-no-antiddos-v1)
488resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
624fromServiceCloudEdgeScopestringНЕТ
626fromServiceVdcGroupNamestringНЕТ
- -### Modify parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
627serviceUidstringДА
628ipSpaceNamestringДА
629dnatCreatebooleanДА
630snatCreatebooleanДА
631internalPortAccessstringДА
632internalAddrAccessstringДА
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `56` | serviceUid, dnatCreate, internalPortAccess, snatCreate, internalAddrAccess, fromServiceNamespace, fromServiceCloudEdgeName, fromServiceCloudVdcName, fromServiceCloudOrgName, fromServiceCloudVmwareUrl, ipSpaceName, resourceRealm, fromServiceCloudEdgeScope, fromServiceVdcGroupName | | -| `delete` | `instance` | `delete` | `` | `57` | | | -| `modify` | `instance` | `modify` | `` | `197` | serviceUid, ipSpaceName, dnatCreate, snatCreate, internalPortAccess, internalAddrAccess | | - - -## nubes_vapp -- Service ID: 26 -- Description: Группировка виртуальных машин -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Виртуальный каталог ВМ (vApp) через платформу

## 1. Общая информация

**Виртуальный каталог ВМ (vApp)** — это логическая каталог, объединённая в единый управляемый объект. Сервис предназначен для совместного развертывания, управления жизненным циклом и сетевого взаимодействия набора связанных ВМ. Основные функции включают:
- централизованное управление включением, выключением и приостановкой группы ВМ;
- унифицированный сетевой доступ через привязанный Edge-шлюз;

### Доступные операции

**create** — Создание нового vApp с привязкой к заданным услугам VDC и Edge
**delete** — Удаление существующего vApp. Требуется предварительный перевод vApp в состояние *suspend*. Полное удаление возможно через 14 дней.
**suspen... - -### Create parameters - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
190nsxtUiduuidДАК какой сети может быть подключен виртуальный каталогref_svc_id=22
191vappNamestringДАИмеет строгую маску `^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$`

Используется в формировании DNS-Имени (для виртуальных машин)
regex=^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$; minlength=3
623vdcUiduuidДАВ каких ресурсах будет создан виртуальный каталогref_svc_id=21
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `69` | nsxtUid, vappName, vdcUid | | -| `delete` | `instance` | `delete` | `` | `70` | | | -| `resume` | `instance` | `resume` | `` | `209` | | | -| `suspend` | `instance` | `suspend` | `` | `208` | | | - - -## nubes_vc_vm_v2 -- Service ID: 27 -- Description: Виртуальная машина с возможностью настройки Cloud Init
Можно развернуть в услуге несколько ВМ
В зависимости от настроек можно выдавать на ВМ vip + dns -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
301serverListJsonjsonДА[{}]Необходимо изменить vappUid и ipSpaceName
Пример конфигурации взять по ссылке ниже

Объект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2)
maxlength=65536; minlength=10
- -### Modify parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
302serverListJsonjsonДА[{}]Объект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2)
maxlength=65536; minlength=10
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `100` | serverListJson | | -| `delete` | `instance` | `delete` | `` | `101` | | | -| `modify` | `instance` | `modify` | `` | `104` | serverListJson | | -| `resume` | `instance` | `resume` | `` | `102` | | | -| `suspend` | `instance` | `suspend` | `` | `103` | | | - - -## nubes_vc_vm_v3 -- Service ID: 28 -- Description: Создание виртуальной машины -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Документация по разворачиванию ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины - -### Create parameters - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
407vappUiduuidДАref_svc_id=26
408vmNamestringДАweb01regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
409vmCpuintegerДА1штminvalue=1; maxvalue=64
410vmRamintegerДА1Gbminvalue=1; maxvalue=256
411vmDiskintegerНЕТОсновной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$
412ipSpaceNamestringДА
413accessIpListjsonНЕТФормат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено [&quot;0.0.0.0/0&quot;]
regex=^(?:$|\[\s*(?:"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?"(?:\s*,\s*"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?")*)\s*\])$
414imageVmstringДА
415cloudInityamlНЕТМожно передать создание дополнительных пользователей.
На текущий момент не реализовано выполнения в cloud-init, установки пакетов, выполнения команд и записи файлов.
416userLoginДАmyuserУчётка SSH
417userPublicKeystringДАПубличная часть SSH-Ключа для пользователя
448accessPortListstringДА["22"]По каким портам открыть доступ к ВМ.
Порты 22, 10050 проставляются автоматически
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS,
10050 - ZABBIX
- -### Modify parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
493vmCpuintegerНЕТштminvalue=1; maxvalue=64
494vmRamintegerНЕТGbminvalue=1; maxvalue=256
495vmDiskintegerНЕТОсновной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$
496ipSpaceNamestringНЕТno-needed, без внешнего ip
internet-antiddos-v1, с функцией защиты от ddos атак
internet-no-antiddos-v1, с функцией защиты от ddos атак
internet-ipv4-v1 тестовое простанство dev
value_list=no-needed, internet-antiddos-v1, internet-no-antiddos-v1
497accessIpListjsonНЕТФормат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено [&quot;0.0.0.0/0&quot;]
498accessPortListjsonНЕТФормат массива
По каким портам открыть доступ к ВМ.
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `132` | vappUid, vmName, vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, imageVm, cloudInit, userLogin, userPublicKey, accessPortList | # Документация по использованию услуги развёртывания ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины

---

## Параметры для развёртывания ВМ

### Обязательные параметры:

**vappUid**
UUID vApp, в которой будет создаваться виртуальная машина.
*Пример: WZ00400*

**vmName**
Уникальное имя виртуальной машины.
*Пример: test-vm*

**vmCpu**
Количество ядер процессора. Должно быть больше 0.
*Пример: 1*

**vmRam**
Объем оперативной памяти в гигабайтах. Должно быть больше 0.
*Пример: 1*


**accessPortList**
Белый список портов для доступа к виртуальной машине извне в формате JSON.
*Пример: ["22","10050]*

**imageVm**
Образ операционной системы для развёртывания.
*Доступные значения: RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G*

**userLogin**
Логин пользователя для SSH-доступа.
*По умолчанию: myuser*

**userPublicKey**
Публичный SSH-ключ пользователя в формате OpenSSH.
*Пример: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...*

**needAddZabbixTemplate**
Значение истина\лож определяющее будет ли добавлен хост в zabbix.
*Пример: true*

### Опциональные параметры:

**accessIpList**
Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, вм будет доступена со всех адресов.
*Пример: ["192.168.1.1", "10.0.0.5"]*

**vmDisk**
Размер дополнительного диска в гигабайтах. Должно быть больше 0.
*Пример: 50*

**ipSpaceName**
Внешний IP-адрес. Если не требуется — укажите значение "no-needed".

**cloudInit**
YAML-скрипт для кастомизации системы через cloud-init.

---

## Доступные образы операционных систем

### RockyLinux_9-16G-cloudinit
Базовый образ на основе Rocky Linux 9 (Rocky-9.6-x86_64-minimal) для серверных задач.
- Размер системного диска: 16 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Ubuntu_22-20G
Образ на основе Ubuntu Server 22.04 LTS для облачного окружения.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Debian_13-20G
Образ на основе Debian 13 (Trixie) для стабильной серверной работы.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

---

## Пример использования Cloud-init

```yaml
users:
- name: myuser
sudo: ALL=(ALL) NOPASSWD:ALL
groups: sudo
shell: /bin/bash
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...

packages:
- nginx

runcmd:
- systemctl enable --now nginx
- systemctl restart nginx
```

---

## Результат выполнения

После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа.

---

## Важные примечания

### Особенности работы:
- Для отключения внешнего IP укажите значение "no-needed" в параметре ipSpaceName
- Параметр cloudInit является опциональным

### Ограничения:
- Не рекомендуется использовать продолжительные инструкции в cloud-init (таймаут 5 минут)
- Не поддерживается запись файлов через cloud-init
- Не реализовано создание резервных копий ВМ

---

## Диагностика проблем с cloud-init

### Основной лог-файл:
```bash
/var/log/cloud-init.log
```

### Пакет не устанавливается:
- Проверьте доступность пакета в репозитории
- Убедитесь в правильности написания имени пакета
- Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux)

### Команда не выполняется:
- Проверьте наличие требуемой утилиты в системе
- Убедитесь в правильности синтаксиса команды
- Попробуйте выполнить команду вручную для диагностики | -| `delete` | `instance` | `delete` | `` | `133` | | | -| `modify` | `instance` | `modify` | `` | `159` | vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, accessPortList | | -| `redeploy` | `action` | `redeploy` | `` | `164` | vmName, vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, imageVm, userLogin, userPublicKey, cloudInit, accessPortList | | -| `resume` | `instance` | `resume` | `` | `135` | | | -| `suspend` | `instance` | `suspend` | `` | `134` | | | - - -## nubes_vc_vdc_group -- Service ID: 29 -- Description: Обеспечение сетевой доступности между датацентрами -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Группа виртуальных датацентров (groupvDC) через платформу

## 1. Общая информация

Сервис **Группа виртуальных датацентров (groupvDC)** предназначен для логического объединения нескольких виртуальных датацентров (vDC) в единую группу. Это позволяет растягивать SDN между разными vDC и централизованно управлять сетевой связностью. Управление инфраструктурой осуществляется через Cloud Director.
Сервис применяется в случаях, когда требуется обеспечить единое сетевое пространство для распределенных виртуальных датацентров.

### Доступные операции

**create** — Создание новой группы виртуальных датацентров.
**delete** — Удаление существующей группы vDC.
**add_vdc** — Добавление дополнительного виртуального датацентра в гру... - -### Create parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
618vdcUiduuidДАref_svc_id=21
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `add_vdc` | `action` | `add_vdc` | `` | `192` | vdcUid | **Не нужно** выбирать UUID VDC, который уже был добавлен в группу | -| `create` | `instance` | `create` | `` | `191` | vdcUid | **VDC Группа** нужна для объединения всех VDC в организации в одну логическую группу.
Это позволит, к примеру, создать **общую сеть** для всех VDC в организации

- Для создания группы VDC необходимо указать **инстанс** услуги VDC (`Виртуальный датацентр`)
- **Важный момент** - удалить эту VDC из группы нельзя. Если такая потребность появится, необходимо будет **ПОЛНОСТЬЮ** удалить группу VDC и уже потом создать новую | -| `delete` | `instance` | `delete` | `` | `195` | | | -| `reconcile` | `action` | `reconcile` | `` | `251` | | | -| `remove_vdc` | `action` | `remove_vdc` | `` | `193` | vdcName | | - - -## nubes_vmpostgre -- Service ID: 32 -- Description: Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
43vdcUiduuidДАInstanceUid vdc. Vdc должен быть создан
ref_svc_id=21
44nsxtUiduuidДАInstanceUid nsxt. Nsxt должен быть создан
ref_svc_id=22
45vmUiduuidДАInstanceUid ВМ. ВМ должна быть создана
ref_svc_id=23
46userDbstringДАservicedbНаименование Базы данных
47userLoginstringДАserviceuserПользователь базы данных
48userPasswordstringДАfj29gm48fm!d374mc9Пароль от доступа к Базе данных
859resourceRealmstringДАРесурсная платформаfunc=getAvailableResourceRealms
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `32` | vdcUid, nsxtUid, vmUid, userDb, userLogin, userPassword, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `33` | | | - - -## nubes_nextcloud -- Service ID: 50 -- Description: Платформа совместной работы -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Ресурсная платформа: k8s. Автоматизация: helm chart - -### Create parameters - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
21domainstringДАweb01Наименование домена. Если будет указан FQDN, то происходят проверки DNS. Если указан поддомен, то будет добавлен в зону services.ngcloud.ru
Можно указать клиентскую DNS-Запись. Важно, чтобы запись смотрела на Ingress кластера
regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
99resourceCPUintegerДА1000Квота ядра пода (Указывается в mili). 1 ядро = 1000 Miliminvalue=100; maxvalue=4000
100resourceMemoryintegerДА1024Квота памяти пода (Указывается в Megabytes)minvalue=1024; maxvalue=8192
101resourceDiskintegerДА2Квота диска (Указывается в GIGAbytes)
Диск не может быть меньше 2G (!)
minvalue=2; maxvalue=999
192documentServerstringДАcollaboraВыбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен
Размер пода collabora:
1.8 ядра. 2Gi ОЗУ
value_list=collabora
470resourceInstancesintegerДА1Количество узлов
Не может пока быть больше одного, так как нужны SC под RWMany
minvalue=1; maxvalue=7; value_list=1
564psqlUiduuidДАref_svc_id=90
569appVersionДА32.0.1value_list=32.0.1
570redisUiduuidДАref_svc_id=91
- -### Modify parameters - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
178resourceCPUintegerНЕТКвота ядра пода (Указывается в mili)minvalue=100; maxvalue=4000
179resourceMemoryintegerНЕТКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
180resourceDiskintegerНЕТКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
547resourceInstancesintegerНЕТКоличество узлов.
Не может пока быть больше одного, так как нужны SC под RWMany
minvalue=1; maxvalue=7; value_list=1
571appVersionstringДАНельзя обновляться сразу через несколько версий сразуvalue_list=32.0.1
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `16` | domain, resourceCPU, resourceMemory, resourceDisk, documentServer, resourceInstances, psqlUid, appVersion, redisUid | DEV-Ветка сборки Nextcloud | -| `delete` | `instance` | `delete` | `` | `17` | | DEV-Ветка удаления Nextcloud | -| `modify` | `instance` | `modify` | `` | `67` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, appVersion | | -| `restart` | `action` | `restart` | `` | `66` | | | -| `resume` | `instance` | `resume` | `` | `129` | | | -| `suspend` | `instance` | `suspend` | `` | `128` | | | - - -## nubes_superset -- Service ID: 81 -- Description: Сервер отчетов -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Apache Superset как сервис.
Ресурсная платформа: k8s.
Автоматизация: k8s operator.
Авторизация: 2FA keycloak (для доменного логина @mgmt.nubes.ru) - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
14domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
20emailsstringДАtestuser1Учётная запись, которой будут выданы админские права. В формате email [ну не совсем. Для доменных учетных записей - без доменного суффикса]. Обязана находиться в Keycloak. Можно передавать несколько через пробел
96resourceCPUintegerДА500Квота ядра пода (Указывается в mili). 1000 Mili = 1 ядроminvalue=100; maxvalue=4000
97resourceMemoryintegerДА512Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
98resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
109resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
227resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `12` | domain, emails, resourceCPU, resourceMemory, resourceDisk, resourceRealm, resourceInstances | DEV-Ветка сборки Superset | -| `delete` | `instance` | `delete` | `` | `13` | | DEV-Ветка удаления Superset | - - -## nubes_harbor -- Service ID: 82 -- Description: Реестр для хранения образов контейнеров -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Расширенный реестр для управления Docker-образами с enterprise-функциями безопасности, репликации и контроля доступа.
Container Registry позволяет хранить, развертывать и управлять Docker-образами контейнеров в инфраструктуре NGcloud.
Сервис можно использовать в процессе разработки контейнеров. Например, вы можете настроить систему автоматизации на работу с реестром в Container Registry в рамках процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.
Чтобы начать работу, создайте реестр и загрузите в него Docker-образ
Авторизация: keycloak - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
16domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
17emailsstringДАtestuser1Учётная запись, которой будут выданы админские права. Обязана находиться в Keycloak. Можно передавать несколько через пробел
110resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
228resourceCPUintegerДА100Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
229resourceMemoryintegerДА200Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
230resourceInstancesintegerДА1Количество узлов в сетиminvalue=1; maxvalue=7
231s3UiduuidДАUUID экземпляра услуги S3ref_svc_id=12
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `14` | domain, emails, resourceRealm, resourceCPU, resourceMemory, resourceInstances, s3Uid | DEV-Ветка сборки Harbor | -| `delete` | `instance` | `delete` | `` | `15` | | DEV-Ветка удаления Harbor | - - -## nubes_k8s_ziti_controller -- Service ID: 88 -- Description: Контроллер управления Client to service & service to service Zero trust network
-- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
294resourceCPUintegerДА300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
295resourceMemoryintegerДА512Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
296resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
297resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
298resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
299domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `99` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, domain | | -| `delete` | `instance` | `delete` | `` | `105` | | | - - -## nubes_flask -- Service ID: 89 -- Description: Flask -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
248domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
249resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
250resourceCPUintegerДА300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
251resourceMemoryintegerДА256Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
252resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
253gitPathstringДАhttps://github.com/Foxyhhd/Baldurs-Gate-test.gitПуть до Git, который будет webroot для сайта
254jsonEnvstringНЕТ{ &quot;param&quot;: &quot;value&quot; }Массив переменных, будут переданы в env приложения
255healthPathstringНЕТПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код
- -### Modify parameters - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
451resourceCPUintegerДАКвота ядра пода (milicores)minvalue=100; maxvalue=4000
452resourceMemoryintegerДАКвота памяти пода (MBytes)minvalue=128; maxvalue=8192
453resourceInstancesintegerДАКоличество узловminvalue=1; maxvalue=7
454gitPathДАПуть до Git, который будет webroot для сайта
455jsonEnvjsonДА{ "param": "value" }Массив переменных, будут переданы в env приложения
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `88` | domain, resourceRealm, resourceCPU, resourceMemory, resourceInstances, gitPath, jsonEnv, healthPath | | -| `delete` | `instance` | `delete` | `` | `89` | | | -| `modify` | `instance` | `modify` | `` | `146` | resourceCPU, resourceMemory, resourceInstances, gitPath, jsonEnv | | -| `resume` | `instance` | `resume` | `` | `145` | | | -| `suspend` | `instance` | `suspend` | `` | `125` | | | - - -## nubes_postgres -- Service ID: 90 -- Description: Управляемая база данных PostgreSQL -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию PostgreSQL через платформу - -### Create parameters - - - - - - - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
23s3UiduuidДАЭкземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательноref_svc_id=12
80resourceInstancesintegerДА1Количество узлов в кластере. 1,3,5,7minvalue=1; maxvalue=7; regex=^[1357]$
81resourceMemoryintegerДА512Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
82resourceCPUintegerДА500Квота ядра пода (milicores)minvalue=100; maxvalue=4000
83resourceDiskДА10Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
102resourceRealmstringДАКластер Kubernetes, на котором будет развернут экземплярfunc=getAvailableResourceRealms
145needExternalAddressMasterbooleanНЕТfalseВыделяет внешний (белый) IP для доступа к mastervalue_list=false, true
146needExternalAddressSlavebooleanНЕТfalseВыделяет внешний (белый) IP для доступа к slave. Будет работать, если slave в принципе естьvalue_list=false, true
265ext_BACKUP_SCHEDULEstringНЕТ0 0 * * *Не обязательный. Время запуска бекапаregex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
266ext_BACKUP_NUM_TO_RETAINintegerНЕТ7Не обязательный. Количество сохраняемых бекаповminvalue=1; maxvalue=99
310appVersionstringДА17Версия PostgreSQLvalue_list=17, 16, 15, 14, 13
311jsonParametersjsonДА{ "log_connections": "off", "log_disconnections": "off" }Массив переменных, более подробнее про настройку можно посмотреть https://www.postgresql.org/docs/current/runtime-config.htmlmaxlength=2048
312enablePgPoolerMasterbooleanДАfalseВключает pgPooler (на запись). Будет создан новый подvalue_list=false, true
313enablePgPoolerSlavebooleanДАfalseВключает pgPooler (на чтение). Будет создан новый подvalue_list=false, true
314allowNoSSLbooleanДАfalseПо умолчанию подключение обязательное (sslmode=require). Выставление в true отключит этот параметрvalue_list=false, true
329autoScalebooleanДАfalseВключает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услугиvalue_list=false, true
330autoScalePercentageintegerДА10Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объемаvalue_list=10, 15, 20
331autoScaleTechWindowintegerДА0Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23)value_list=0, 5, 12, 23
337ipSpaceNameMasterstringНЕТИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster. Пример: `internet-no-antiddos-v1`
338ipSpaceNameSlavestringНЕТИмя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave
339autoScaleQuotaGbstringДА1Квота для autoScale
- -### Modify parameters - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
91resourceInstancesintegerНЕТКоличество узлов в сетиminvalue=1; maxvalue=7
92resourceMemoryintegerНЕТКвота памяти пода (MBytes)minvalue=128; maxvalue=8192
93resourceCPUintegerНЕТКвота ядра пода (milicores)minvalue=100; maxvalue=4000
94resourceDiskintegerНЕТКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
147needExternalAddressMasterbooleanДАВыделяет внешний IP для доступа к mastervalue_list=false, true
148needExternalAddressSlavebooleanДАВыделяет внешний IP для доступа к slave. Действует, если slave в принципе естьvalue_list=false, true
267ext_BACKUP_SCHEDULEstringНЕТНе обязательный. Время запуска бекапаregex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
268ext_BACKUP_NUM_TO_RETAINintegerНЕТНе обязательный. Количество сохраняемых бекаповminvalue=1; maxvalue=99
315appVersionstringДАВерсия PostgreSQL. Нельзя опускать внизvalue_list=17, 16, 15, 14, 13
316jsonParametersjsonНЕТМассив переменных, более подробнее про настройку можно посмотреть https://www.postgresql.org/docs/current/runtime-config.htmlmaxlength=2048
317enablePgPoolerMasterbooleanДАfalseВключает pgPooler (на запись). Будет создан новый подvalue_list=false, true
318enablePgPoolerSlavebooleanДАfalseВключает pgPooler (на чтение). Будет создан новый подvalue_list=false, true
319allowNoSSLbooleanДАfalseПо умолчанию подключение обязательное (sslmode=require). Выставление в true отключит этот параметрvalue_list=false, true
541ipSpaceNameMasterstringНЕТИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster. Пример: `internet-no-antiddos-v1`
542ipSpaceNameSlavestringНЕТИмя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `19` | s3Uid, resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm, needExternalAddressMaster, needExternalAddressSlave, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN, appVersion, jsonParameters, enablePgPoolerMaster, enablePgPoolerSlave, allowNoSSL, autoScale, autoScalePercentage, autoScaleTechWindow, ipSpaceNameMaster, ipSpaceNameSlave, autoScaleQuotaGb | руководство | -| `delete` | `instance` | `delete` | `` | `20` | deleteS3Bucket | | -| `modify` | `instance` | `modify` | `` | `48` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, needExternalAddressSlave, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN, appVersion, jsonParameters, enablePgPoolerMaster, enablePgPoolerSlave, allowNoSSL, ipSpaceNameMaster, ipSpaceNameSlave | | -| `recovery` | `action` | `recovery` | `` | `47` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm | | -| `restart` | `action` | `restart` | `` | `54` | | ВНИМАНИЕ - Рестарт предполагает УДАЛЕНИЕ подов.
Может быть полная поломка. Крайне осторожно запускать при работе | -| `resume` | `instance` | `resume` | `` | `114` | | | -| `suspend` | `instance` | `suspend` | `` | `115` | | | - - -## nubes_redis -- Service ID: 91 -- Description: Управляемая база данных Redis -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Redis кластер. Под кеши.
Ресурсная платформа: k8s.
Автоматизация: k8s operator
port 6379 - -### Create parameters - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
112resourceCPUintegerДА1000Квота ядра пода (Указывается в mili)minvalue=500; maxvalue=4000
113resourceMemoryintegerДА1024Квота памяти пода (Указывается в Megabytes)minvalue=512; maxvalue=8192
114resourceDiskintegerДА30Квота диска (Указывается в GIGAbytes)minvalue=10; maxvalue=999
181resourceInstancesintegerДА1Количество узлов в сети. Если выделить больше 1 ноды, будет добавлено дополнительно 3 Sentinel нодыminvalue=1; maxvalue=7
182resourceRealmstringДАНаименование кластера Kubernetes для подключения
func=getAvailableResourceRealms
183needExternalAddressMasterbooleanДАfalseВыделяет внешний IP для доступа к mastervalue_list=false, true
184needExternalAddressSlavebooleanДАfalseВыделяет внешний IP для доступа к slave. Будет работать если slave в целом естьvalue_list=false, true
548ipSpaceNameMasterstringНЕТИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster
549ipSpaceNameSlavestringНЕТИмя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `21` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, needExternalAddressMaster, needExternalAddressSlave, ipSpaceNameMaster, ipSpaceNameSlave | | -| `delete` | `instance` | `delete` | `` | `22` | | | - - -## nubes_mongodb -- Service ID: 92 -- Description: Управляемая база данных MongoDB -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию MongoDB через платформу

## 1. Общая информация

MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность, горизонтальное масштабирование и гибкую модель хранения.

### Доступные операции с кластером

* **create** — создание кластера
* **delete** — удаление кластера
* **suspend** — остановка кластера
* **resume** — запуск кластера

### Доступные операции с пользователями

* **create_user** — создание пользователя
* **modify_user** — модификация пользователя
* **delete_user** — удаление пользователя - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
487resourceInstancesintegerДАПример: `2`minvalue=1; maxvalue=7
588resourceMemoryintegerДАПример: `2048`minvalue=1000
589resourceCPUintegerДАПример: `1000`
590resourceDiskintegerДАПример: `20`
595resourceRealmstringДАВыбрать платформу из спискаfunc=getAvailableResourceRealms
645needExternalAddressMasterstringДАfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
646ipSpaceNameMasterstringНЕТЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `37` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm, needExternalAddressMaster, ipSpaceNameMaster | | -| `create_user` | `subresource` | `create` | `user` | `198` | username, dbName, role | | -| `delete` | `instance` | `delete` | `` | `190` | | | -| `delete_user` | `subresource` | `delete` | `user` | `199` | username | | -| `modify_user` | `subresource` | `modify` | `user` | `200` | username, dbName, role | | -| `resume` | `instance` | `resume` | `` | `196` | | | -| `suspend` | `instance` | `suspend` | `` | `194` | | | - - -## nubes_rabbitmq -- Service ID: 93 -- Description: Сервер очередей -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию RabbitMQ через платформу - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
116resourceCPUintegerДА1000Пример: `2000`minvalue=500; maxvalue=4000
117resourceMemoryintegerДА1124Пример: `2048`minvalue=512; maxvalue=8192
118resourceDiskintegerДА30Пример: `20`minvalue=5; maxvalue=999
119resourceRealmstringДАВыбрать платформу из спискаfunc=getAvailableResourceRealms
224resourceInstancesintegerДА1Пример: `1`minvalue=1; maxvalue=7
225needExternalAddressMasterbooleanДАfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master. Пример: `true` или `false`value_list=false, true
543ipSpaceNameMasterstringНЕТПример: `internet-no-antiddos-v1`
- -### Modify parameters - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
304resourceCPUintegerДАПример: `2000`minvalue=500; maxvalue=4000
305resourceMemoryintegerДАПример: `2048`minvalue=512; maxvalue=8192
306resourceDiskintegerДАПример: `20`minvalue=1; maxvalue=999
307resourceInstancesintegerДАПример: `1`minvalue=1; maxvalue=7
308needExternalAddressMasterbooleanДАfalseВыделяет внешний (белый) IP для доступа к mastervalue_list=false, true
309needExternalAddressSlavebooleanДАfalseВыделяет внешний (белый) IP для доступа к slavevalue_list=false, true
545ipSpaceNameMasterstringНЕТПример: `internet-no-antiddos-v1`
546ipSpaceNameSlavestringНЕТПример: `internet-no-antiddos-v1`
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `38` | resourceCPU, resourceMemory, resourceDisk, resourceRealm, resourceInstances, needExternalAddressMaster, ipSpaceNameMaster | | -| `delete` | `instance` | `delete` | `` | `39` | | | -| `modify` | `instance` | `modify` | `` | `106` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, needExternalAddressMaster, needExternalAddressSlave, ipSpaceNameMaster, ipSpaceNameSlave | | -| `resume` | `instance` | `resume` | `` | `117` | | | -| `suspend` | `instance` | `suspend` | `` | `116` | | Пока не работает из за того что RabbitmqCluster нельзя занулить | - - -## nubes_lucee -- Service ID: 94 -- Description: Cервер приложений -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
103domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
104gitPathstringДАhttps://github.com/xahys/testluceeПуть до Git, который будет webroot для сайта
105jsonEnvjsonНЕТ{ "param": "value" }Здесь вы можете задать переменные среды в формате KEY=VALUE. Они будут доступны внутри вашего приложения.maxlength=2048
106resourceCPUintegerДА300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
107resourceMemoryintegerДА512Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
108resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
132healthPathstringНЕТПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код
139resourceInstancesintegerДА1Количество узлов в сетиminvalue=1; maxvalue=7
263appVersionstringДА5.4Версия Luceeregex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0
- -### Modify parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
133gitPathstringНЕТПуть до Git, который будет webroot для сайта
134healthPathstringНЕТПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код.
135jsonEnvjsonНЕТМассив переменных, будут переданы в env приложенияmaxlength=2048
136resourceCPUintegerНЕТКвота ядра пода (Указывается в mili) 1000Mili = 1 ядроminvalue=100; maxvalue=4000
137resourceMemoryintegerНЕТКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
138resourceInstancesintegerНЕТКоличество узлов в сетиminvalue=1; maxvalue=7
264appVersionstringДА5.4regex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `49` | domain, gitPath, jsonEnv, resourceCPU, resourceMemory, resourceRealm, healthPath, resourceInstances, appVersion | | -| `delete` | `instance` | `delete` | `` | `50` | | | -| `modify` | `instance` | `modify` | `` | `55` | gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, appVersion | Если CFS оставить пустым, то при запуске джобы берётся параметр из instanceData | -| `redeploy` | `action` | `redeploy` | `` | `53` | resourceRealm | | -| `restart` | `action` | `restart` | `` | `163` | | | -| `resume` | `instance` | `resume` | `` | `95` | | | -| `suspend` | `instance` | `suspend` | `` | `96` | | | - - -## nubes_nodejs -- Service ID: 95 -- Description: Cервер приложений -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Развертывает контейнер в k8s кластере с node:16, который можно использовать для запуска своих приложений.
Приложение должно быть доступно по ссылки в git репозитории, которая является входным параметром. - -### Create parameters - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
149domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
150gitPathstringДАhttps://github.com/xahys/testnode.gitПуть до Git, который будет webroot для сайта
151healthPathstringНЕТПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. Если оставить пустым, healtcheck'а не будет
152jsonEnvjsonНЕТМассив переменных, будут переданы в env приложения
153resourceCPUintegerДА500Квота ядра пода (milicores). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
154resourceMemoryintegerДА1024Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
155resourceInstancesintegerДА1Количество узлов в сетиminvalue=1; maxvalue=7
156resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
270appVersionstringДА23Версия приложенияregex=^(\d){2}$; value_list=18, 20, 22, 23
- -### Modify parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
157gitPathstringНЕТПуть до Git, который будет webroot для сайта
158healthPathstringНЕТПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код.
159jsonEnvjsonНЕТМассив переменных, будут переданы в env приложенияmaxlength=2048
160resourceCPUintegerНЕТКвота ядра пода (Указывается в mili) 1000Mili = 1 ядроminvalue=100; maxvalue=4000
161resourceMemoryintegerНЕТКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
162resourceInstancesintegerНЕТКоличество узлов в сетиminvalue=1; maxvalue=7
271appVersionstringДА23Версия приложенияregex=^(\d){2}$; value_list=18, 20, 22, 23
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `58` | domain, gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, resourceRealm, appVersion | | -| `delete` | `instance` | `delete` | `` | `61` | | | -| `modify` | `instance` | `modify` | `` | `59` | gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, appVersion | | -| `redeploy` | `action` | `redeploy` | `` | `60` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `121` | | | -| `suspend` | `instance` | `suspend` | `` | `120` | | | - - -## nubes_pgadmin -- Service ID: 96 -- Description: Административный интерфейс для PostgreSQL -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Инструмент с графическим интерфейсом для управления базами данных PostgreSQL - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
164domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
165resourceCPUintegerДА200Квота ядра пода (milicores). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
166resourceMemoryintegerДА256Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
167resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
169resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
170loginstringДАЛогин для подключения к pgAdmin, в формате email (login@email.net)regex=^([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)$; maxlength=255; minlength=3
171passwordstringДАПароль для подключения к pgAdmin
- -### Modify parameters - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
172resourceCPUintegerНЕТКвота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
173resourceMemoryintegerНЕТКвота памяти пода (MBytes)minvalue=128; maxvalue=8192
174resourceDiskintegerНЕТ1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `62` | domain, resourceCPU, resourceMemory, resourceDisk, resourceRealm, login, password | | -| `delete` | `instance` | `delete` | `` | `63` | | | -| `modify` | `instance` | `modify` | `` | `64` | resourceCPU, resourceMemory, resourceDisk | | -| `redeploy` | `action` | `redeploy` | `` | `65` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `123` | | | -| `suspend` | `instance` | `suspend` | `` | `122` | | | - - -## nubes_nodered -- Service ID: 97 -- Description: Low-code платформа для IoT -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
193resourceCPUintegerДА500Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
194resourceMemoryintegerДА512Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
195resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
196resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
197domainstringДАНаименование поддомена, будет добавлено в k8stemplate.dev.nubes.ruregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
323resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `72` | resourceCPU, resourceMemory, resourceDisk, resourceRealm, domain, resourceInstances | | -| `delete` | `instance` | `delete` | `` | `73` | | | - - -## nubes_http -- Service ID: 98 -- Description: Простой HTTP контейнер -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
212domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
213resourceCPUintegerДА100Квота ядра пода (Указывается в mili)minvalue=100; maxvalue=4000
214resourceMemoryintegerДА200Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
215resourceInstancesintegerДА1Количество реплик приложения. Трафик будет распределяться между подами в режиме Round-Robinminvalue=1; maxvalue=7
216resourceRealmstringДАНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
217registryPathstringДАnexus-sa.tst.nubes.ru/docker-nubes/joltПуть до image, который будет установлен как deployment
241jsonEnvjsonНЕТ{&quot;param&quot;: &quot;value&quot;}Массив переменных, будут переданы в env приложения
- -### Modify parameters - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
218resourceCPUintegerДАminvalue=100; maxvalue=4000
219resourceMemoryintegerДАminvalue=128; maxvalue=8192
220resourceInstancesintegerДАКоличество узловminvalue=1; maxvalue=7
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `77` | domain, resourceCPU, resourceMemory, resourceInstances, resourceRealm, registryPath, jsonEnv | | -| `delete` | `instance` | `delete` | `` | `78` | | | -| `modify` | `instance` | `modify` | `` | `81` | resourceCPU, resourceMemory, resourceInstances | | -| `redeploy` | `action` | `redeploy` | `` | `79` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `130` | | | -| `suspend` | `instance` | `suspend` | `` | `131` | | | - - -## nubes_gitea -- Service ID: 99 -- Description: Сервис контроля версий -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Развертывает сервис контроля версий Gitea
Зависит от сервиса postgresql который должен быть развернут заранее. - -### Create parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
232resourceCPUintegerДА500Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=300; maxvalue=4000
233resourceMemoryintegerДА512Квота памяти пода (Указывается в Megabytes)minvalue=256; maxvalue=8192
234resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
235resourceInstancesintegerДА1Количество узлов в сетиminvalue=1; maxvalue=7
237domainstringДАweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
238psqlUiduuidДАUUID Услуги k8sPgsql. Пользователя techGitea, базу данных gitea создаёт автоматическиref_svc_id=90
- -### Modify parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
259resourceCPUintegerДА100Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=500; maxvalue=4000
260resourceMemoryintegerДА128Квота памяти пода (Указывается в Megabytes)minvalue=256; maxvalue=8192
261resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
262resourceInstancesintegerДА1Количество узлов в сетиminvalue=1; maxvalue=7
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `82` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, domain, psqlUid | | -| `delete` | `instance` | `delete` | `` | `83` | | | -| `modify` | `instance` | `modify` | `` | `91` | resourceCPU, resourceMemory, resourceDisk, resourceInstances | | -| `resume` | `instance` | `resume` | `` | `127` | | | -| `suspend` | `instance` | `suspend` | `` | `126` | | | - - -## nubes_openwhisk -- Service ID: 100 -- Description: Добавление и удаления пользователя (учетной записи, тенанта) для работы с Openwhisk -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Добавление и удаления пользователя для работы с Openwhisk - -### Create parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
64usernamestringДАИмя пользователя Openwhisk
863resourceRealmstringДАРесурсная платформаfunc=getAvailableResourceRealms
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `41` | username, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `42` | username | | - - -## nubes_dnszone -- Service ID: 110 -- Description: Хостинг DNS зоны -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -## ![image](https://img.icons8.com/?size=50&id=41400&format=png) Необходимо делегировать зону у регистратора на Авторитетные DNS (Сервера зон)

ns3.ngcloud.ru
``` bash
185.247.187.83
2a10:aa80:0:5::3
```

ns4.ngcloud.ru
``` bash
81.22.46.43
2a10:aa80:0:6::3
``` - -### Create parameters - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
66zoneEmailstringДАКонтактный e-mail
67zoneNamestringДАИмя зоныregex=^([a-z0-9-]+\.)+[a-z0-9-]+$
68zoneKindstringДАNATIVEТип зоныvalue_list=NATIVE, SLAVE
69zoneMastersForSlavestringНЕТИспользовать если выбран тип SLAVE. IP адреса в формате через пробел для настройки Master-серверов
70zoneTimeToRefreshstringДА86400Время ожидания ответа вторичного DNS перед запросом SOA-записи с первичных серверов
71zoneTimeToRetrystringДА7200Время в течение которого сервер повторно попробует синхронизировать информацию с первичных DNS-серверов
72zoneTimeToExpirestringДА3600000Время в течение которого вторичный DNS будет пытаться завершить синхронизацию зоны с первичным
73zoneTimeToLivestringДА86400Время, в течение которого информация будет кешироваться другими DNS-серверами
284resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `43` | zoneEmail, zoneName, zoneKind, zoneMastersForSlave, zoneTimeToRefresh, zoneTimeToRetry, zoneTimeToExpire, zoneTimeToLive, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `44` | | | - - -## nubes_dnsrecord -- Service ID: 111 -- Description: DNS запись в созданной зоне -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Необходима DNS зона, в которой будет создана DNS запись.
Выберите
* Зону в которой будет создана запись
* Тип записи
* Имя записи
* Значение записи - -### Create parameters - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
75zoneUiduuidДАUUID экземпляра услуги DNS-зоныref_svc_id=110
76recordTypestringДАТип DNS-записиvalue_list=A, AAAA, CNAME, MX, PTR, SOA, SRV, TXT, LUA, NS, SSHFP
77recordNamestringДАИмя записи. Имя зоны в конце проставляется автоматическиunique_scope=parent
78recordInputstringДАЗначение. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP
450recordTTLintegerДА3600Time-to-Leave записи. Раз в какое время запись будет обновленаminvalue=30; maxvalue=604800
- -### Modify parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
256recordInputstringДАЗапись. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `45` | zoneUid, recordType, recordName, recordInput, recordTTL | | -| `delete` | `instance` | `delete` | `` | `46` | | | -| `modify` | `instance` | `modify` | `` | `90` | recordInput | | - - -## nubes_tenant -- Service ID: 112 -- Description: Организация доступов к мониторингу -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
239grafanaOrgNamestringДАWZ-Код клиентаregex=^WZ[\d]+$
240resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `84` | grafanaOrgName, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `86` | | | -| `modify` | `instance` | `modify` | `` | `87` | | Просто удаляет все текущие датасоурсы и ставит их заново
Полезно, когда нужно "ресетнуть" / "добавить" | - - -## nubes_vc_complex -- Service ID: 113 -- Description: Создание готовой иерархии ресурсов -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Создает окружение для ВМ.

## Создает сервисы:
**Организация**
**Виртуальный датацентр**
**Каталог**
**Сетевой шлюз периметра**

- -### Create parameters - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
332resourceRealmstringДАНаименование ресурсной платформыfunc=getAvailableResourceRealms
334vappNamestringДАИмя vAppregex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
358vdcProviderGatewaystringДАsandbox-v1cl1-pvdcВзять из свойств ресурсной платформы.
Путь .vcd.providerVdc - взять KEY

providerGateway Cloud Director. Влияет ресурсы будут предоставлены. Является полем (List&lt;String&gt;) в свойствах рес. платформы ЛК, но сам параметр передаётся только как один String
359virtualServicesCountДА1Кол-во виртуальных сервисов, которые выделяются на AVI. Во избежании коллапса пока выделяется до 4minvalue=1; maxvalue=4
360ipSpaceNamestringНЕТinternet-ipv4-v1Имя ip Space для внешнего IP. Целесообразнее брать самый дешёвый, так как это vip для исходящего трафика. Необходимо задавать если включен needExternalAddressSNAT
399storageConfigjsonДА[{"name": "", "size": 1024}]Описывается как массив объектов, где описывается имя политики и её размер
400vdcNetworkPoolstringДАnsxt-sandbox-geneve-np
401cpuGuaranteedintegerДА20value_list=20, 50, 80
402memGuaranteedintegerДА20value_list=20, 50, 80
403segroupNamestringНЕТSEGROUP-SANDBOX-CL1-SHARED-01Наименование segroup, в котором будут выделяться пулы на AVI
404needExternalAddressSNATbooleanДАtrueВыделяет внешний IP на Edge. Используется для SNAT всего трафикаvalue_list=false, true
405needEnableAVIbooleanДАfalseВключает AVI в Cloud Directorvalue_list=false, true
566cpuAllocatedstringДА1штminvalue=1
567memAllocatedintegerДА10gbminvalue=1
568vIPCountintegerДА0шminvalue=0; maxvalue=20
- -### Modify parameters -None. - -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `107` | resourceRealm, vappName, vdcProviderGateway, virtualServicesCount, ipSpaceName, storageConfig, vdcNetworkPool, cpuGuaranteed, memGuaranteed, segroupName, needExternalAddressSNAT, needEnableAVI, cpuAllocated, memAllocated, vIPCount | | - - -## nubes_gitea_complex -- Service ID: 114 -- Description: Комплексная услуга из ["gittea", "postgres"] -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Комплексная услуга из ["gittea", "postgres"] - -### Create parameters -None. - -### Modify parameters -None. - -### Operations -None. - - -## nubes_mariadb -- Service ID: 115 -- Description: Управляемая база данных MySQL -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. - -### Create parameters - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
422resourceRealmstringДАПлатформа для развертыванияfunc=getAvailableResourceRealms
424resourceCPUintegerДА500Квота ядра пода (milicores)minvalue=500; maxvalue=4000
425resourceMemoryintegerДА1024Квота памяти пода (MBytes)minvalue=1024; maxvalue=8192
426resourceDiskintegerДА1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
427resourceInstancesintegerДА1Количество узловminvalue=1; maxvalue=7
428needExternalAddressMasterbooleanДАfalseВыделяет внешний (белый) IP для доступа к mastervalue_list=false, true
429ipSpaceNameMasterstringНЕТИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster
430ext_BACKUP_SCHEDULEstringНЕТ0 * * * *Не обязательный. Время запуска бекапаregex=^(\*|(\d+|\*\/\d+|\d+(,\d+)*))\s\*\s\*\s\*\s\*$
431appVersionstringДА9.4.0Версия MySQLvalue_list=8.4.0, 9.4.0
432autoScalebooleanДАfalseВключает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услугиvalue_list=false, true
433autoScalePercentageintegerНЕТ10Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объемаvalue_list=10, 15, 20
434autoScaleTechWindowintegerНЕТ0Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23)value_list=0, 5, 12, 23
435autoScaleQuotaGbintegerНЕТ1Квота для autoScale
459s3UiduuidДАЭкземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательноref_svc_id=12
- -### Modify parameters - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
436resourceCPUintegerНЕТ
437resourceMemoryintegerНЕТ
438resourceInstancesintegerНЕТ
439resourceDiskintegerНЕТ
440needExternalAddressMasterbooleanНЕТvalue_list=false, true
441ipSpaceNameMasterНЕТ
442ext_BACKUP_SCHEDULEstringНЕТ
443autoScalebooleanНЕТvalue_list=false, true
444autoScalePercentageintegerНЕТ
445autoScaleTechWindowintegerНЕТ
446autoScaleQuotaGbintegerНЕТ
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `138` | resourceRealm, resourceCPU, resourceMemory, resourceDisk, resourceInstances, needExternalAddressMaster, ipSpaceNameMaster, ext_BACKUP_SCHEDULE, appVersion, autoScale, autoScalePercentage, autoScaleTechWindow, autoScaleQuotaGb, s3Uid | | -| `delete` | `instance` | `delete` | `` | `139` | deleteS3Bucket | | -| `modify` | `instance` | `modify` | `` | `142` | resourceCPU, resourceMemory, resourceInstances, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, ext_BACKUP_SCHEDULE, autoScale, autoScalePercentage, autoScaleTechWindow, autoScaleQuotaGb | | -| `resume` | `instance` | `resume` | `` | `141` | | | -| `suspend` | `instance` | `suspend` | `` | `140` | | | - - -## nubes_kafka -- Service ID: 116 -- Description: Сервис создания кластера Apache Kafka -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Apache Kafka через платформу - -### Create parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
461resourceInstancesintegerДАПример: `2`minvalue=1; value_list=1, 2, 3, 4, 5
462resourceMemoryintegerДАПример: `2048`minvalue=1000
463resourceCPUintegerДАПример: `2000`minvalue=1000
464resourceDiskintegerДАПример: `20`
465needExternalAddressMasterbooleanДАfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
466ipSpaceNameMasterstringНЕТЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
469resourceRealmstringДАВыбрать платформу из спискаfunc=getAvailableResourceRealms
- -### Modify parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
501resourceInstancesintegerНЕТПример: `2`value_list=1, 2, 3, 4, 5
502resourceMemoryintegerНЕТПример: `2048`minvalue=1000
503resourceCPUНЕТПример: `2000`minvalue=1000
504resourceDiskintegerНЕТПример: `20`
505needExternalAddressMasterbooleanНЕТfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
506ipSpaceNameMasterstringНЕТЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `148` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, resourceRealm | | -| `create_topic` | `subresource` | `create` | `topic` | `165` | nameTopic, partitions, replicas | # Инструкция по управлению топиками Apache Kafka через платформу

## 1. Общая информация

---

Топик — это основная сущность в Apache Kafka, предназначенная для приёма сообщений от продюсеров и передачи их консюмерам.
Платформа позволяет создавать, удалять и изменять параметры топиков без прямого доступа к брокерам, обеспечивая удобное управление через интерфейс или API.

---

## Доступные операции

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

---

## 2. Параметры создания топика

Ниже перечислены параметры, которые необходимо указать при создании нового топика:

* **Имя топика**
Название топика.
Должно быть уникальным в пределах кластера.
Пример: `orders-events`.

* **Партиции**
Количество партиций топика.
Рекомендуется выбирать с учётом уровня параллелизма потребителей и предполагаемой нагрузки.
Пример: `6`. Здесь важно рассказать о том как происходит расчет оптимального количества
Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.

* **Реплики**
Количество реплик для каждой партиции.
Обычно равно количеству доступных брокеров или меньше.
Пример: `3`.


---

## 4. Параметры модификации топика

Для уже существующих топиков можно изменять параметры. Все параметры являются опциональными:

* **Имя топика**
Название топика.
Пример: `orders-events`.

* **Партиции**
Новое количество партиций.
Пример: `12`.

* **Реплики**
Новое количество реплик.
Пример: `2`.

---

## 5. Рекомендации

* Планируйте количество партиций с запасом — уменьшение их числа невозможно.
* Количество реплик должно соответствовать требуемому уровню отказоустойчивости, но не превышать количество брокеров.
* Изменение параметров топика в рабочем окружении может временно влиять на производительность. Рекомендуется проводить крупные изменения в периоды минимальной нагрузки.

--- | -| `create_user` | `subresource` | `create` | `user` | `168` | username, nameTopic, operations, group, accessHosts | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `delete` | `instance` | `delete` | `` | `149` | | | -| `delete_topic` | `subresource` | `delete` | `topic` | `167` | nameTopic | | -| `delete_user` | `subresource` | `delete` | `user` | `170` | username | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `modify` | `instance` | `modify` | `` | `162` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster | | -| `modify_topic` | `subresource` | `modify` | `topic` | `166` | nameTopic, partitions, replicas | # Инструкция по управлению топиками Apache Kafka через платформу

## 1. Общая информация

---

Топик — это основная сущность в Apache Kafka, предназначенная для приёма сообщений от продюсеров и передачи их консюмерам.
Платформа позволяет создавать, удалять и изменять параметры топиков без прямого доступа к брокерам, обеспечивая удобное управление через интерфейс или API.

---

## Доступные операции

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

---

## 2. Параметры создания топика

Ниже перечислены параметры, которые необходимо указать при создании нового топика:

* **Имя топика**
Название топика.
Должно быть уникальным в пределах кластера.
Пример: `orders-events`.

* **Партиции**
Количество партиций топика.
Рекомендуется выбирать с учётом уровня параллелизма потребителей и предполагаемой нагрузки.
Пример: `6`. Здесь важно рассказать о том как происходит расчет оптимального количества
Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.

* **Реплики**
Количество реплик для каждой партиции.
Обычно равно количеству доступных брокеров или меньше.
Пример: `3`.


---

## 4. Параметры модификации топика

Для уже существующих топиков можно изменять параметры. Все параметры являются опциональными:

* **Имя топика**
Название топика.
Пример: `orders-events`.

* **Партиции**
Новое количество партиций.
Пример: `12`.

* **Реплики**
Новое количество реплик.
Пример: `2`.

---

## 5. Рекомендации

* Планируйте количество партиций с запасом — уменьшение их числа невозможно.
* Количество реплик должно соответствовать требуемому уровню отказоустойчивости, но не превышать количество брокеров.
* Изменение параметров топика в рабочем окружении может временно влиять на производительность. Рекомендуется проводить крупные изменения в периоды минимальной нагрузки.

--- | -| `modify_user` | `subresource` | `modify` | `user` | `169` | nameTopic, operations, group, accessHosts, username | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `resume` | `instance` | `resume` | `` | `161` | | | -| `suspend` | `instance` | `suspend` | `` | `160` | | | - - -## nubes_nifi -- Service ID: 117 -- Description: ETL-система -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Create parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
471kafkaUiduuidДАВыбрать кластер из спискаref_svc_id=116
472partitionsintegerДАОбратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.
473replicasintegerДАКоличество партиций ≤ (число брокеров). Пример `2`
474nameTopicstringДАПример: `orders-events`
- -### Modify parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
477partitionsintegerНЕТОбратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.
478replicasintegerНЕТКоличество партиций ≤ (число брокеров). Пример `2`
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `150` | kafkaUid, partitions, replicas, nameTopic | | -| `delete` | `instance` | `delete` | `` | `151` | | | -| `modify` | `instance` | `modify` | `` | `154` | partitions, replicas | | - - -## nubes_akhq -- Service ID: 119 -- Description: Web интерфейс Akhq для работы с Apache Kafka -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Apache Kafka через платформу - -### Create parameters - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
550resourceRealmstringДАВыбрать платформу из спискаfunc=getAvailableResourceRealms
551resourceMemoryintegerДА512Пример: `1024`minvalue=512
552resourceCPUintegerДА500Пример: `1000`minvalue=500
553domainstringДАЕсли будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
554resourceInstancesintegerДА1minvalue=1
555kafkaUiduuidДАВыбрать кластер из спискаref_svc_id=116
- -### Modify parameters - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
565kafkaUiduuidДАВыбрать кластер из спискаref_svc_id=116
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `175` | resourceRealm, resourceMemory, resourceCPU, domain, resourceInstances, kafkaUid | | -| `delete` | `instance` | `delete` | `` | `176` | | | -| `modify` | `instance` | `modify` | `` | `180` | kafkaUid | | -| `resume` | `instance` | `resume` | `` | `178` | | | -| `suspend` | `instance` | `suspend` | `` | `177` | | | - - -## nubes_clickhouse -- Service ID: 120 -- Description: Управляемая база данных ClickHouse -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по управлению кластерами и пользователями ClickHouse - -### Create parameters - - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
572resourceRealmstringДАВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
573s3UiduuidДА**Если список не отображается**
перейдите в раздел `S3 Object Storage`
операция `create`
ref_svc_id=12
574resourceInstancesintegerДА1**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
575resourceInstancesShardsintegerДА1**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
576resourceCPUintegerДА1000Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
577resourceMemoryintegerДА1536Указывается в Megabytesminvalue=1536; maxvalue=8192
578appVersionstringДА25.10Версия `clickhouse-server`value_list=25.10
579resourceDiskintegerДА10Указывается в Gigabytesminvalue=1; maxvalue=999
580needExternalAddressMasterbooleanДАfalseДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
581ipSpaceNameMasterstringНЕТИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
582needCreateKeeperbooleanДАtrueАналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
583resourceCPUKeeperintegerДА50Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
584resourceMemoryKeeperintegerДА152Указывается в Megabytesminvalue=152; maxvalue=8192
585resourceInstancesKeeperintegerДА1Для **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
586ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
587ext_BACKUP_NUM_TO_RETAINintegerДА7Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- -### Modify parameters - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
603resourceInstancesintegerДА**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
604resourceInstancesShardsintegerДА**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
605resourceCPUintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
606resourceMemoryintegerДАУказывается в Megabytesminvalue=1536; maxvalue=8192
607appVersionstringДА25.10Версия `clickhouse-server`
608resourceDiskintegerДАУказывается в Gigabytes
**Нельзя** выставлять меньше текущего значения
minvalue=1; maxvalue=999
609needExternalAddressMasterbooleanДАДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
610ipSpaceNameMasterstringДАИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
611needCreateKeeperbooleanДААналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
612resourceCPUKeeperintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
613resourceMemoryKeeperintegerДАУказывается в Megabytesminvalue=152; maxvalue=8192
614resourceInstancesKeeperintegerДАДля **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
615ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
616ext_BACKUP_NUM_TO_RETAINintegerДАКол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `181` | resourceRealm, s3Uid, resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | Операция создания кластера ClickHouse

Для подключения к кластеру также необходимо создать базу данных через операцию `create_database` и создание пользователя через операцию `create_user` | -| `create_database` | `subresource` | `create` | `database` | `186` | databaseName | База данных создаётся на всех репликах кластера ClickHouse | -| `create_user` | `subresource` | `create` | `user` | `185` | username, databaseName, accessHosts | | -| `delete` | `instance` | `delete` | `` | `184` | | Удаление возможно только после остановки сервиса через операцию `suspend`
После выполнения операции необходимо выждать определенное кол-во времени | -| `delete_database` | `subresource` | `delete` | `database` | `188` | databaseName | Необратимое действие!!!
Трижды подумай, заблокируй телефон тимлида и не выполняй это действие | -| `delete_user` | `subresource` | `delete` | `user` | `187` | username | | -| `modify` | `instance` | `modify` | `` | `189` | resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | | -| `resume` | `instance` | `resume` | `` | `183` | | | -| `suspend` | `instance` | `suspend` | `` | `182` | | Операция приводит к удалению всех подов
Persistent Volume остаются нетронутыми | - - -## nubes_valo_tenant -- Service ID: 149 -- Description: Корпоративная система обмена и синхронизации файлов -- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -# Инструкция по развертыванию Тенант Valo через платформу

## 1. Общая информация
Тенант Valo — логический изолированный экземпляр сервиса VALO Cloud, предоставляющий защищённое облачное хранилище, синхронизацию данных и доступ к документам с различных устройств. При создании тенант автоматически разворачивается в тестовом режиме сроком на 2 месяца. Перевод в промышленную эксплуатацию выполняется отдельной операцией.

### Доступные операции

* **create** — создание нового тенанта в тестовом режиме сроком на 2 месяца.
* **modify** — изменение настроек тенанта, включая перевод из ТЕСТ в ПРОД.
* **suspend** — выключение (приостановка работы) тенанта.
* **resume** — включение ранее приостановленного тенанта.
* **delete** — удаление тенанта; доступно... - -### Create parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
655resourceRealmstringДАfunc=getAvailableResourceRealms
656domainstringДАБудет добавлено в зону valo.ngcloud.ruregex=^[a-z0-9](?:[a-z0-9-]{3,61}[a-z0-9])?$; maxlength=61; minlength=3
657valoOptionsmap-fixedДА{}
658s3StorageintegerДА10Данные хранятся в отдельном экземпляре S3minvalue=1; maxvalue=999
- -### Modify parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
659valoOptionsmap-fixedДА
660s3StorageintegerДАДанные хранятся в отдельном экземпляре S3
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `202` | resourceRealm, domain, valoOptions, s3Storage | | -| `delete` | `instance` | `delete` | `` | `206` | | | -| `modify` | `instance` | `modify` | `` | `203` | valoOptions, s3Storage | | -| `resume` | `instance` | `resume` | `` | `205` | | | -| `suspend` | `instance` | `suspend` | `` | `204` | | | - - -## nubes_k8s_sthutrval_cluster -- Service ID: 150 -- Description: Платформа управления K8s
-- MAN: embedded in resource page -- Operations: embedded in resource page - -### Summary -Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле - -### Create parameters - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
344nsxtUiduuidДАInstanceUid nsxt. Nsxt должен быть созданref_svc_id=22
345clusterNamestringДАexample1Наименование кластера Kubernetes. Имя будет использоваться в fqdn (svc.$CLUSTER_NAME)regex=(?=^.{1,63}$)^[a-z0-9]([a-z0-9-]*[a-z0-9])?$; unique_scope=provider
346controlPlaneSizingPolicystringДАНастройка Control Plane. CPU (шт) / MEM (gb).
Наверное, должна подтягиваться из свойств ресурсной платформы
347controlPlaneSizingDiskintegerДА30Настройка Control Plane. Disk (Gb)minvalue=20; maxvalue=999
348controlPlaneCountintegerДА1minvalue=1; maxvalue=9
349workersSizingPolicystringДАНастройка workers. CPU (шт) / MEM (gb)
350workersSizingDiskintegerДА40Настройка workers. Disk (Gb)minvalue=20; maxvalue=999
351workersCountintegerДА2Настройка workers. Кол-во нодminvalue=1; maxvalue=99
352appVersionstringДА2.12.1Версия Штурвал (не является версией Kubernetes)value_list=2.12.1, 2.11.0
353needExternalAddressAPIbooleanДАtrueВыделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить falsevalue_list=true
354accessIpListAPIjsonДА[]Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем
355needExternalAddressIngressbooleanДАtrueВыделяет внешний IP для доступа к Ingressvalue_list=true
356accessIpListIngressjsonДА[]Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем
747vdcUiduuidДАref_svc_id=21
- -### Modify parameters - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
362controlPlaneCountintegerНЕТКол-во нод Control Planeminvalue=1; maxvalue=9
363workersCountintegerНЕТКол-во нод Workersminvalue=1; maxvalue=99
364accessIpListAPIjsonНЕТAccess IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем
365accessIpListIngressjsonНЕТAccess IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем
563appVersionstringНЕТВерсия Штурвал (не является версией Kubernetes)
Понижать версию нельзя
Обновиться на несколько минорных нельзя
Невозможно перепрыгнуть не с последней минорной на мажорную
Можно обновиться на несколько патчей
value_list=2.11.0, 2.12.1
637controlPlaneSizingDiskintegerДА
638workersSizingDiskintegerДА
- -### Operations -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `108` | nsxtUid, clusterName, controlPlaneSizingPolicy, controlPlaneSizingDisk, controlPlaneCount, workersSizingPolicy, workersSizingDisk, workersCount, appVersion, needExternalAddressAPI, accessIpListAPI, needExternalAddressIngress, accessIpListIngress, vdcUid | | -| `delete` | `instance` | `delete` | `` | `109` | | | -| `modify` | `instance` | `modify` | `` | `110` | controlPlaneCount, workersCount, accessIpListAPI, accessIpListIngress, appVersion, controlPlaneSizingDisk, workersSizingDisk | | -| `reconcile` | `action` | `reconcile` | `` | `253` | | | -| `resume` | `instance` | `resume` | `` | `174` | | | -| `suspend` | `instance` | `suspend` | `` | `173` | | | -| `update_secrets` | `action` | `update_secrets` | `` | `179` | | | - - diff --git a/docs/30_registry/resources/clickhouse.md b/docs/30_registry/resources/clickhouse.md deleted file mode 100644 index 16a72cc..0000000 --- a/docs/30_registry/resources/clickhouse.md +++ /dev/null @@ -1,66 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Overview](clickhouse.md) | [Parameters](clickhouse_params.md) | [Operations](clickhouse_ops.md) - -## MAN - -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (`https://github.com/Altinity/clickhouse-operator`) в ресурсной платформе типа `k8s`

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра `Создать ClickHouse-Keeper`.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу `S3 Object Storage`.
---

## Доступные операции

* **create** — Создание кластера
* **delete** — Удаление кластера
* **suspend** — Приостановка работы кластера
* **resume** — Возобновление работы кластера
* **create_database** — Создание базы данных
* **delete_database** — Удаление базы данных
* **create_user** — Создание пользователя и настройка прав доступа к базе данных
* **delete_user** — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию `create` - будет создан кластер
2. Выполнить операцию `create_database` - будет создана база данных
3. Выполнить операцию `create_user` - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

```bash
# Проверка доступности кластера
curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"

# Выполнение запроса
curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"
```

## Простые кейсы
*Создать БД и обычной таблицы*
```clickhouse
CREATE TABLE database.table
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM database.table;
```
Базы и таблицы не реплицируются без специального ключа (`ON CLUSTER 'clickhousek8s'`)
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
```clickhouse
CREATE TABLE database.localUsers
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

CREATE TABLE database.shardedTable
AS localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);

INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM shardedTable;
```
Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
```clickhouse
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
(
user_id UInt64,
name String,
email String
)
ENGINE = ReplicatedMergeTree(
'/clickhouse/tables/{shard}/localUsers',
'{replica}'
)
ORDER BY user_id;

CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
AS database.localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());

INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');

SELECT * FROM database.localUsers;
SELECT * FROM database.users;

SELECT COUNT(*) AS total_users FROM database.users;
SELECT COUNT(*) AS total_users_local FROM database.localUsers;
``` - - -## Summary - -# Инструкция по управлению кластерами и пользователями ClickHouse - - -## Example - -```hcl -resource "nubes_clickhouse" "example" { - resource_realm = "TODO" - s3_uid = "235e0546-..." - resource_instances = 1 - resource_instances_shards = 1 - resource_c_p_u = 1000 - resource_memory = 1536 - app_version = 25.10 - resource_disk = 10 - need_external_address_master = false - need_create_keeper = true - resource_c_p_u_keeper = 50 - resource_memory_keeper = 152 - resource_instances_keeper = 1 - ext__b_a_c_k_u_p__s_c_h_e_d_u_l_e = 0 0 * * * - ext__b_a_c_k_u_p__n_u_m__t_o__r_e_t_a_i_n = 7 - adopt_existing_on_create = НЕТ - suspend_on_destroy = ДА -} -``` - - -## Outputs - -- `state_params` (map) -- `state_out` (map) -- `state_params_flat` (map) -- `state_out_flat` (map) -- `vault_secrets` (map) -- `vault_url` (string) -- `vault_user_path` (string) -- `vault_fields` (list) - - -## Lifecycle defaults - -- `suspend_on_destroy_default` = `True` -- `adopt_existing_on_create_default` = `False` - - -## Lifecycle behavior - -- For suspend-capable services: cloud status `missing/deleted` => create, `suspend` + key params match => resume. -- `running` requires explicit `adopt_existing_on_create=true` for adopt/import behavior, otherwise error. -- Destroy uses `suspend_on_destroy`: true => suspend, false => remove from state only. diff --git a/docs/30_registry/resources/clickhouse_database.md b/docs/30_registry/resources/clickhouse_database.md deleted file mode 100644 index fe5cc4d..0000000 --- a/docs/30_registry/resources/clickhouse_database.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -## Example - -```hcl -resource "nubes_clickhouse_database" "example" { - clickhouse_id = nubes_clickhouse.example.id - database_name = "TODO" -} -``` diff --git a/docs/30_registry/resources/clickhouse_database_ops.md b/docs/30_registry/resources/clickhouse_database_ops.md deleted file mode 100644 index ea30480..0000000 --- a/docs/30_registry/resources/clickhouse_database_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) diff --git a/docs/30_registry/resources/clickhouse_database_params.md b/docs/30_registry/resources/clickhouse_database_params.md deleted file mode 100644 index ea30480..0000000 --- a/docs/30_registry/resources/clickhouse_database_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_clickhouse_database - -Service: nubes_clickhouse - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) - -[Overview](clickhouse_database.md) | [Parameters](clickhouse_database_params.md) | [Operations](clickhouse_database_ops.md) diff --git a/docs/30_registry/resources/clickhouse_example.md b/docs/30_registry/resources/clickhouse_example.md deleted file mode 100644 index e9ad34b..0000000 --- a/docs/30_registry/resources/clickhouse_example.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) diff --git a/docs/30_registry/resources/clickhouse_example_ops.md b/docs/30_registry/resources/clickhouse_example_ops.md deleted file mode 100644 index e9ad34b..0000000 --- a/docs/30_registry/resources/clickhouse_example_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) diff --git a/docs/30_registry/resources/clickhouse_example_params.md b/docs/30_registry/resources/clickhouse_example_params.md deleted file mode 100644 index e9ad34b..0000000 --- a/docs/30_registry/resources/clickhouse_example_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) -[Overview](clickhouse_example.md) | [Parameters](clickhouse_example_params.md) | [Operations](clickhouse_example_ops.md) diff --git a/docs/30_registry/resources/clickhouse_instruction.md b/docs/30_registry/resources/clickhouse_instruction.md deleted file mode 100644 index acc9b87..0000000 --- a/docs/30_registry/resources/clickhouse_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для clickhouse - -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (`https://github.com/Altinity/clickhouse-operator`) в ресурсной платформе типа `k8s`

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра `Создать ClickHouse-Keeper`.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу `S3 Object Storage`.
---

## Доступные операции

* **create** — Создание кластера
* **delete** — Удаление кластера
* **suspend** — Приостановка работы кластера
* **resume** — Возобновление работы кластера
* **create_database** — Создание базы данных
* **delete_database** — Удаление базы данных
* **create_user** — Создание пользователя и настройка прав доступа к базе данных
* **delete_user** — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию `create` - будет создан кластер
2. Выполнить операцию `create_database` - будет создана база данных
3. Выполнить операцию `create_user` - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

```bash
# Проверка доступности кластера
curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"

# Выполнение запроса
curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"
```

## Простые кейсы
*Создать БД и обычной таблицы*
```clickhouse
CREATE TABLE database.table
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM database.table;
```
Базы и таблицы не реплицируются без специального ключа (`ON CLUSTER 'clickhousek8s'`)
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
```clickhouse
CREATE TABLE database.localUsers
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

CREATE TABLE database.shardedTable
AS localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);

INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM shardedTable;
```
Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
```clickhouse
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
(
user_id UInt64,
name String,
email String
)
ENGINE = ReplicatedMergeTree(
'/clickhouse/tables/{shard}/localUsers',
'{replica}'
)
ORDER BY user_id;

CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
AS database.localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());

INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');

SELECT * FROM database.localUsers;
SELECT * FROM database.users;

SELECT COUNT(*) AS total_users FROM database.users;
SELECT COUNT(*) AS total_users_local FROM database.localUsers;
``` diff --git a/docs/30_registry/resources/clickhouse_man.md b/docs/30_registry/resources/clickhouse_man.md deleted file mode 100644 index 4f1df93..0000000 --- a/docs/30_registry/resources/clickhouse_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: clickhouse - -# Инструкция по управлению кластерами и пользователями ClickHouse

---

## Общая информация

ClickHouse — это колоночная система управления базами данных, предназначенная для обработки аналитических запросов в реальном времени. Платформа позволяет создавать, удалять, приостанавливать и возобновлять кластеры ClickHouse, а также управлять базами данных и пользователями.

Кластер создаётся через оператор Altinity (`https://github.com/Altinity/clickhouse-operator`) в ресурсной платформе типа `k8s`

Кластеры могут создаваться шардированными с произвольным количеством реплик. Для обеспечения отказоустойчивости и координации обязательно включение параметра `Создать ClickHouse-Keeper`.

Кластера создаются с обязательным бекапом. Для этого необходимо предварительно создать услугу `S3 Object Storage`.
---

## Доступные операции

* **create** — Создание кластера
* **delete** — Удаление кластера
* **suspend** — Приостановка работы кластера
* **resume** — Возобновление работы кластера
* **create_database** — Создание базы данных
* **delete_database** — Удаление базы данных
* **create_user** — Создание пользователя и настройка прав доступа к базе данных
* **delete_user** — Удаление пользователя

## Процесс создания и первого подключения

1. Выполнить операцию `create` - будет создан кластер
2. Выполнить операцию `create_database` - будет создана база данных
3. Выполнить операцию `create_user` - будет создан пользователь (выбрать доступ подключения к БД, созданной в п.2)

## Примеры подключения

### Подключение через HTTP-интерфейс

```bash
# Проверка доступности кластера
curl "http://<username>:<password>@<host>:8123/" -d "SELECT 1"

# Выполнение запроса
curl "http://<username>:<password>@<host>:8123/" -d "SHOW DATABASES"
```

## Простые кейсы
*Создать БД и обычной таблицы*
```clickhouse
CREATE TABLE database.table
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

INSERT INTO database.table SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM database.table;
```
Базы и таблицы не реплицируются без специального ключа (`ON CLUSTER 'clickhousek8s'`)
В случае создания в стиле, описанным выше, необходимо будет выполнять действия на всех шардах/репликах


*Создание БД и шардированной таблицы*
```clickhouse
CREATE TABLE database.localUsers
(
id UInt64,
value String
)
ENGINE = MergeTree()
ORDER BY id;

CREATE TABLE database.shardedTable
AS localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', id);

INSERT INTO shardedTable SELECT number, toString(number) FROM numbers(10000000);

SELECT count() FROM shardedTable;
```
Важный момент - в данном примере таблицы придётся также выполнять на всех нодах ClickHouse

*Создание реплицируемой и шардированной таблицы*
```clickhouse
CREATE TABLE IF NOT EXISTS database.localUsers ON cluster 'clickhousek8s'
(
user_id UInt64,
name String,
email String
)
ENGINE = ReplicatedMergeTree(
'/clickhouse/tables/{shard}/localUsers',
'{replica}'
)
ORDER BY user_id;

CREATE TABLE IF NOT EXISTS database.users ON cluster 'clickhousek8s'
AS database.localUsers
ENGINE = Distributed('clickhousek8s', 'database', 'localUsers', rand());

INSERT INTO database.users VALUES (1, 'Alice', 'alice@example.com');
INSERT INTO database.users VALUES (2, 'Bob', 'bob@example.com');
INSERT INTO database.users VALUES (3, 'Charlie', 'charlie@example.com');
INSERT INTO database.users VALUES (4, 'David', 'david@example.com');
INSERT INTO database.users VALUES (5, 'Gosha', 'gosha@example.com');
INSERT INTO database.users VALUES (6, 'Eve', 'eve@example.com');
INSERT INTO database.users VALUES (7, 'Frank', 'frank@example.com');
INSERT INTO database.users VALUES (8, 'Grace', 'grace@example.com');
INSERT INTO database.users VALUES (9, 'Hannah', 'hannah@example.com');
INSERT INTO database.users VALUES (10, 'Ivan', 'ivan@example.com');

SELECT * FROM database.localUsers;
SELECT * FROM database.users;

SELECT COUNT(*) AS total_users FROM database.users;
SELECT COUNT(*) AS total_users_local FROM database.localUsers;
``` diff --git a/docs/30_registry/resources/clickhouse_ops.md b/docs/30_registry/resources/clickhouse_ops.md deleted file mode 100644 index 21e3594..0000000 --- a/docs/30_registry/resources/clickhouse_ops.md +++ /dev/null @@ -1,179 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Overview](clickhouse.md) | [Parameters](clickhouse_params.md) | [Operations](clickhouse_ops.md) - -## Operations - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `181` | resourceRealm, s3Uid, resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | Операция создания кластера ClickHouse

Для подключения к кластеру также необходимо создать базу данных через операцию `create_database` и создание пользователя через операцию `create_user` | -| `create_database` | `subresource` | `create` | `database` | `186` | databaseName | База данных создаётся на всех репликах кластера ClickHouse | -| `create_user` | `subresource` | `create` | `user` | `185` | username, databaseName, accessHosts | | -| `delete` | `instance` | `delete` | `` | `184` | | Удаление возможно только после остановки сервиса через операцию `suspend`
После выполнения операции необходимо выждать определенное кол-во времени | -| `delete_database` | `subresource` | `delete` | `database` | `188` | databaseName | Необратимое действие!!!
Трижды подумай, заблокируй телефон тимлида и не выполняй это действие | -| `delete_user` | `subresource` | `delete` | `user` | `187` | username | | -| `modify` | `instance` | `modify` | `` | `189` | resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | | -| `resume` | `instance` | `resume` | `` | `183` | | | -| `suspend` | `instance` | `suspend` | `` | `182` | | Операция приводит к удалению всех подов
Persistent Volume остаются нетронутыми | - -### Operation: create - - - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
572resourceRealmstringДАВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
573s3UiduuidДА**Если список не отображается**
перейдите в раздел `S3 Object Storage`
операция `create`
ref_svc_id=12
574resourceInstancesintegerДА1**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
575resourceInstancesShardsintegerДА1**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
576resourceCPUintegerДА1000Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
577resourceMemoryintegerДА1536Указывается в Megabytesminvalue=1536; maxvalue=8192
578appVersionstringДА25.10Версия `clickhouse-server`value_list=25.10
579resourceDiskintegerДА10Указывается в Gigabytesminvalue=1; maxvalue=999
580needExternalAddressMasterbooleanДАfalseДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
581ipSpaceNameMasterstringНЕТИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
582needCreateKeeperbooleanДАtrueАналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
583resourceCPUKeeperintegerДА50Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
584resourceMemoryKeeperintegerДА152Указывается в Megabytesminvalue=152; maxvalue=8192
585resourceInstancesKeeperintegerДА1Для **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
586ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
587ext_BACKUP_NUM_TO_RETAINintegerДА7Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- -### Operation: create_database - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
600databaseNamestringДАПример: `db01`regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
- -### Operation: create_user - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
596usernamestringДАПример: `myusername`regex=^(?![0-9_])[a-zA-Z_][a-zA-Z0-9_]{0,62}$; maxlength=62; minlength=2
598databaseNamejsonДА["database"]Если базы не существует - при выполнении операции вернётся ошибка
599accessHostsstringДА::/0Пример: `::/0`
- -### Operation: delete - -None. - -### Operation: delete_database - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
602databaseNamestringДАВСЕ ДАННЫЕ ВНУТРИ БД БУДУТ УДАЛЕНЫ
- -### Operation: delete_user - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
601usernameДАИмя пользователя, созданное через операцию `create_user`
- -### Operation: modify - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
603resourceInstancesintegerДА**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
604resourceInstancesShardsintegerДА**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
605resourceCPUintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
606resourceMemoryintegerДАУказывается в Megabytesminvalue=1536; maxvalue=8192
607appVersionstringДА25.10Версия `clickhouse-server`
608resourceDiskintegerДАУказывается в Gigabytes
**Нельзя** выставлять меньше текущего значения
minvalue=1; maxvalue=999
609needExternalAddressMasterbooleanДАДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
610ipSpaceNameMasterstringДАИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
611needCreateKeeperbooleanДААналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
612resourceCPUKeeperintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
613resourceMemoryKeeperintegerДАУказывается в Megabytesminvalue=152; maxvalue=8192
614resourceInstancesKeeperintegerДАДля **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
615ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
616ext_BACKUP_NUM_TO_RETAINintegerДАКол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- -### Operation: resume - -None. - -### Operation: suspend - -None. - - -## Subresources - -### nubes_clickhouse_database - -#### Example - -```hcl -resource "nubes_clickhouse_database" "example" { - clickhouse_id = nubes_clickhouse.example.id - database_name = "TODO" -} -``` - -#### Create parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
600databaseNamestringДАПример: `db01`regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
- -#### Modify parameters - -None. - -#### Delete parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
602databaseNamestringДАВСЕ ДАННЫЕ ВНУТРИ БД БУДУТ УДАЛЕНЫ
-### nubes_clickhouse_user - -#### Example - -```hcl -resource "nubes_clickhouse_user" "example" { - clickhouse_id = nubes_clickhouse.example.id - username = "TODO" - database_name = ["database"] - access_hosts = ::/0 -} -``` - -#### Create parameters - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
596usernamestringДАПример: `myusername`regex=^(?![0-9_])[a-zA-Z_][a-zA-Z0-9_]{0,62}$; maxlength=62; minlength=2
598databaseNamejsonДА["database"]Если базы не существует - при выполнении операции вернётся ошибка
599accessHostsstringДА::/0Пример: `::/0`
- -#### Modify parameters - -None. - -#### Delete parameters - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
601usernameДАИмя пользователя, созданное через операцию `create_user`
diff --git a/docs/30_registry/resources/clickhouse_outputs.md b/docs/30_registry/resources/clickhouse_outputs.md deleted file mode 100644 index a4db88e..0000000 --- a/docs/30_registry/resources/clickhouse_outputs.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) diff --git a/docs/30_registry/resources/clickhouse_outputs_ops.md b/docs/30_registry/resources/clickhouse_outputs_ops.md deleted file mode 100644 index a4db88e..0000000 --- a/docs/30_registry/resources/clickhouse_outputs_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) diff --git a/docs/30_registry/resources/clickhouse_outputs_params.md b/docs/30_registry/resources/clickhouse_outputs_params.md deleted file mode 100644 index a4db88e..0000000 --- a/docs/30_registry/resources/clickhouse_outputs_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) -[Overview](clickhouse_outputs.md) | [Parameters](clickhouse_outputs_params.md) | [Operations](clickhouse_outputs_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params.md b/docs/30_registry/resources/clickhouse_params.md deleted file mode 100644 index 4227e62..0000000 --- a/docs/30_registry/resources/clickhouse_params.md +++ /dev/null @@ -1,52 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Overview](clickhouse.md) | [Parameters](clickhouse_params.md) | [Operations](clickhouse_ops.md) - -## Create parameters - - - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
572resourceRealmstringДАВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
573s3UiduuidДА**Если список не отображается**
перейдите в раздел `S3 Object Storage`
операция `create`
ref_svc_id=12
574resourceInstancesintegerДА1**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
575resourceInstancesShardsintegerДА1**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
576resourceCPUintegerДА1000Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
577resourceMemoryintegerДА1536Указывается в Megabytesminvalue=1536; maxvalue=8192
578appVersionstringДА25.10Версия `clickhouse-server`value_list=25.10
579resourceDiskintegerДА10Указывается в Gigabytesminvalue=1; maxvalue=999
580needExternalAddressMasterbooleanДАfalseДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
581ipSpaceNameMasterstringНЕТИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
582needCreateKeeperbooleanДАtrueАналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
583resourceCPUKeeperintegerДА50Указывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
584resourceMemoryKeeperintegerДА152Указывается в Megabytesminvalue=152; maxvalue=8192
585resourceInstancesKeeperintegerДА1Для **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
586ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
587ext_BACKUP_NUM_TO_RETAINintegerДА7Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
- - -## Modify parameters - - - - - - - - - - - - - - - - - - -
IDCodeTypeRequiredDefaultDescriptionConstraints
603resourceInstancesintegerДА**Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper`minvalue=1; maxvalue=7
604resourceInstancesShardsintegerДА**Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда
minvalue=1; maxvalue=7
605resourceCPUintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=1000; maxvalue=8000
606resourceMemoryintegerДАУказывается в Megabytesminvalue=1536; maxvalue=8192
607appVersionstringДА25.10Версия `clickhouse-server`
608resourceDiskintegerДАУказывается в Gigabytes
**Нельзя** выставлять меньше текущего значения
minvalue=1; maxvalue=999
609needExternalAddressMasterbooleanДАДля выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы
value_list=false, true
610ipSpaceNameMasterstringДАИмя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды`
611needCreateKeeperbooleanДААналог `Zookeeper`, представленный от ClickHousevalue_list=false, true
612resourceCPUKeeperintegerДАУказывается в Milicores
`1000` Mili == `1` Ядро
minvalue=50; maxvalue=8000
613resourceMemoryKeeperintegerДАУказывается в Megabytesminvalue=152; maxvalue=8192
614resourceInstancesKeeperintegerДАДля **теста** - 1 нода.
Для **продуктива** - 3 ноды
minvalue=1; maxvalue=3; value_list=1, 3
615ext_BACKUP_SCHEDULEstringДА0 0 * * *Принимает формат `CRON`regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$
616ext_BACKUP_NUM_TO_RETAINintegerДАКол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты**
minvalue=3; maxvalue=60
diff --git a/docs/30_registry/resources/clickhouse_params_create.md b/docs/30_registry/resources/clickhouse_params_create.md deleted file mode 100644 index e0c14f7..0000000 --- a/docs/30_registry/resources/clickhouse_params_create.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params_create_ops.md b/docs/30_registry/resources/clickhouse_params_create_ops.md deleted file mode 100644 index e0c14f7..0000000 --- a/docs/30_registry/resources/clickhouse_params_create_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params_create_params.md b/docs/30_registry/resources/clickhouse_params_create_params.md deleted file mode 100644 index e0c14f7..0000000 --- a/docs/30_registry/resources/clickhouse_params_create_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) -[Overview](clickhouse_params_create.md) | [Parameters](clickhouse_params_create_params.md) | [Operations](clickhouse_params_create_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params_modify.md b/docs/30_registry/resources/clickhouse_params_modify.md deleted file mode 100644 index fb79d2b..0000000 --- a/docs/30_registry/resources/clickhouse_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params_modify_ops.md b/docs/30_registry/resources/clickhouse_params_modify_ops.md deleted file mode 100644 index fb79d2b..0000000 --- a/docs/30_registry/resources/clickhouse_params_modify_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) diff --git a/docs/30_registry/resources/clickhouse_params_modify_params.md b/docs/30_registry/resources/clickhouse_params_modify_params.md deleted file mode 100644 index fb79d2b..0000000 --- a/docs/30_registry/resources/clickhouse_params_modify_params.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_clickhouse - -Service ID: `120` - -Service Name: ClickHouse - -[Manual](clickhouse.md) | [Create params](clickhouse_params_create.md) | [Modify params](clickhouse_params_modify.md) | [Output params](clickhouse_outputs.md) | [Operations](clickhouse_ops.md) | [Example](clickhouse_example.md) - -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) -[Overview](clickhouse_params_modify.md) | [Parameters](clickhouse_params_modify_params.md) | [Operations](clickhouse_params_modify_ops.md) diff --git a/docs/30_registry/resources/clickhouse_user.md b/docs/30_registry/resources/clickhouse_user.md deleted file mode 100644 index 78377c4..0000000 --- a/docs/30_registry/resources/clickhouse_user.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -## Example - -```hcl -resource "nubes_clickhouse_user" "example" { - clickhouse_id = nubes_clickhouse.example.id - username = "TODO" - database_name = ["database"] - access_hosts = ::/0 -} -``` diff --git a/docs/30_registry/resources/clickhouse_user_ops.md b/docs/30_registry/resources/clickhouse_user_ops.md deleted file mode 100644 index 5d72d54..0000000 --- a/docs/30_registry/resources/clickhouse_user_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) diff --git a/docs/30_registry/resources/clickhouse_user_params.md b/docs/30_registry/resources/clickhouse_user_params.md deleted file mode 100644 index 5d72d54..0000000 --- a/docs/30_registry/resources/clickhouse_user_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_clickhouse_user - -Service: nubes_clickhouse - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) - -[Overview](clickhouse_user.md) | [Parameters](clickhouse_user_params.md) | [Operations](clickhouse_user_ops.md) diff --git a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d.md b/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d.md deleted file mode 100644 index f2fc513..0000000 --- a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d.md +++ /dev/null @@ -1,71 +0,0 @@ -# Resource nubes_d_e_p_r_e_c_a_t_e_d - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -## MAN - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED - - - - - -## Summary - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED - - - - - -## Example - -```text -resource "nubes_d_e_p_r_e_c_a_t_e_d" "example" { - delete_mode = "state_only" - resume_if_exists = НЕТ -} -``` - - - - - -## Outputs - -- `state_params` (map) -- `state_out` (map) -- `state_params_flat` (map) -- `state_out_flat` (map) -- `vault_secrets` (map) -- `vault_url` (string) -- `vault_user_path` (string) -- `vault_fields` (list) - - - - - -## Lifecycle defaults - -- `delete_mode_default` = `state_only` -- `resume_if_exists_default` = `False` - - - - - -## Lifecycle behavior - -- If suspend/resume exist, delete maps to suspend and apply can resume. -- Advanced users may override delete_mode and resume_if_exists. diff --git a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_man.md b/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_man.md deleted file mode 100644 index 223fb83..0000000 --- a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: d_e_p_r_e_c_a_t_e_d - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED diff --git a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_ops.md b/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_ops.md deleted file mode 100644 index 88ca88f..0000000 --- a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_ops.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_d_e_p_r_e_c_a_t_e_d - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) diff --git a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_params.md b/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_params.md deleted file mode 100644 index 88ca88f..0000000 --- a/docs/30_registry/resources/d_e_p_r_e_c_a_t_e_d_params.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_d_e_p_r_e_c_a_t_e_d - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) - -[Overview](d_e_p_r_e_c_a_t_e_d.md) | [Parameters](d_e_p_r_e_c_a_t_e_d_params.md) | [Operations](d_e_p_r_e_c_a_t_e_d_ops.md) diff --git a/docs/30_registry/resources/dnsrecord.md b/docs/30_registry/resources/dnsrecord.md deleted file mode 100644 index 22f9734..0000000 --- a/docs/30_registry/resources/dnsrecord.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## MAN - -
-Необходима DNS зона, в которой будет создана DNS запись.
Выберите
* Зону в которой будет создана запись
* Тип записи
* Имя записи
* Значение записи -
diff --git a/docs/30_registry/resources/dnsrecord_example.md b/docs/30_registry/resources/dnsrecord_example.md deleted file mode 100644 index df3fb46..0000000 --- a/docs/30_registry/resources/dnsrecord_example.md +++ /dev/null @@ -1,49 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Copy-ready manifest (`dnsrecord_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_dnsrecord" "baza" { - zone_uid = "TODO" # UUID экземпляра услуги DNS-зоны - record_type = "A" # Тип DNS-записи - record_name = "TODO" # Имя записи. Имя зоны в конце проставляется автоматически - record_input = "TODO" # Значение. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - record_t_t_l = 3600 # Time-to-Leave записи. Раз в какое время запись будет обновлена -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_dnsrecord.baza.state_params["имя_ключа"] -nubes_dnsrecord.baza.state_out["имя_ключа"] -nubes_dnsrecord.baza.state_params_flat["имя_ключа"] -nubes_dnsrecord.baza.state_out_flat["имя_ключа"] -nubes_dnsrecord.baza.vault_secrets["имя_ключа"] -nubes_dnsrecord.baza.vault_url -nubes_dnsrecord.baza.vault_user_path -nubes_dnsrecord.baza.vault_fields -``` diff --git a/docs/30_registry/resources/dnsrecord_example_ops.md b/docs/30_registry/resources/dnsrecord_example_ops.md deleted file mode 100644 index 2165edc..0000000 --- a/docs/30_registry/resources/dnsrecord_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_example.md) | [Parameters](dnsrecord_example_params.md) | [Operations](dnsrecord_example_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_example_params.md b/docs/30_registry/resources/dnsrecord_example_params.md deleted file mode 100644 index 2165edc..0000000 --- a/docs/30_registry/resources/dnsrecord_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_example.md) | [Parameters](dnsrecord_example_params.md) | [Operations](dnsrecord_example_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_instruction.md b/docs/30_registry/resources/dnsrecord_instruction.md deleted file mode 100644 index eb6d36f..0000000 --- a/docs/30_registry/resources/dnsrecord_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для dnsrecord - -Необходима DNS зона, в которой будет создана DNS запись.
Выберите
* Зону в которой будет создана запись
* Тип записи
* Имя записи
* Значение записи diff --git a/docs/30_registry/resources/dnsrecord_man.md b/docs/30_registry/resources/dnsrecord_man.md deleted file mode 100644 index 9a9a0e8..0000000 --- a/docs/30_registry/resources/dnsrecord_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: dnsrecord - -Необходима DNS зона, в которой будет создана DNS запись.
Выберите
* Зону в которой будет создана запись
* Тип записи
* Имя записи
* Значение записи diff --git a/docs/30_registry/resources/dnsrecord_ops.md b/docs/30_registry/resources/dnsrecord_ops.md deleted file mode 100644 index 475844c..0000000 --- a/docs/30_registry/resources/dnsrecord_ops.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](dnsrecord_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](dnsrecord_params_modify.md) diff --git a/docs/30_registry/resources/dnsrecord_outputs.md b/docs/30_registry/resources/dnsrecord_outputs.md deleted file mode 100644 index bdab6e1..0000000 --- a/docs/30_registry/resources/dnsrecord_outputs.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / A-record (admin.1dbfe9da-ce1c-4958-b359-d016a4b455c8) / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["zoneUid"]` -- `state_params["recordTTL"]` -- `state_params["recordName"]` -- `state_params["recordType"]` -- `state_params["recordInput"]` - -### `state_out_flat` ключи - -- `state_out_flat["record"]` -- `state_out_flat["dnsServers"]` - -### `vault_secrets` ключи - -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/dnsrecord_outputs_ops.md b/docs/30_registry/resources/dnsrecord_outputs_ops.md deleted file mode 100644 index 2f623e2..0000000 --- a/docs/30_registry/resources/dnsrecord_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_outputs.md) | [Parameters](dnsrecord_outputs_params.md) | [Operations](dnsrecord_outputs_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_outputs_params.md b/docs/30_registry/resources/dnsrecord_outputs_params.md deleted file mode 100644 index 2f623e2..0000000 --- a/docs/30_registry/resources/dnsrecord_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_outputs.md) | [Parameters](dnsrecord_outputs_params.md) | [Operations](dnsrecord_outputs_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_params.md b/docs/30_registry/resources/dnsrecord_params.md deleted file mode 100644 index 84701f9..0000000 --- a/docs/30_registry/resources/dnsrecord_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Parameters - -- [Create params](dnsrecord_params_create.md) -- [Modify params](dnsrecord_params_modify.md) diff --git a/docs/30_registry/resources/dnsrecord_params_create.md b/docs/30_registry/resources/dnsrecord_params_create.md deleted file mode 100644 index b3a67ca..0000000 --- a/docs/30_registry/resources/dnsrecord_params_create.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
75zone_uiduuidUUID экземпляра услуги DNS-зоныref_svc_id=110
76record_typestringТип DNS-записиvalue_list=A, AAAA, CNAME, MX, PTR, SOA, SRV, TXT, LUA, NS, SSHFP
77record_namestringИмя записи. Имя зоны в конце проставляется автоматическиunique_scope=parent
78record_inputstringЗначение. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - -
IDCodeTypeDefaultDescriptionConstraints
450record_ttlinteger3600Time-to-Leave записи. Раз в какое время запись будет обновленаminvalue=30; maxvalue=604800
diff --git a/docs/30_registry/resources/dnsrecord_params_create_ops.md b/docs/30_registry/resources/dnsrecord_params_create_ops.md deleted file mode 100644 index 1f6e912..0000000 --- a/docs/30_registry/resources/dnsrecord_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_params_create.md) | [Parameters](dnsrecord_params_create_params.md) | [Operations](dnsrecord_params_create_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_params_create_params.md b/docs/30_registry/resources/dnsrecord_params_create_params.md deleted file mode 100644 index 1f6e912..0000000 --- a/docs/30_registry/resources/dnsrecord_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_params_create.md) | [Parameters](dnsrecord_params_create_params.md) | [Operations](dnsrecord_params_create_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_params_modify.md b/docs/30_registry/resources/dnsrecord_params_modify.md deleted file mode 100644 index d3cdbdb..0000000 --- a/docs/30_registry/resources/dnsrecord_params_modify.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -## Modify params - - - - - -
IDCodeTypeDescriptionConstraints
256record_inputstringЗапись. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP
diff --git a/docs/30_registry/resources/dnsrecord_params_modify_ops.md b/docs/30_registry/resources/dnsrecord_params_modify_ops.md deleted file mode 100644 index e5e7716..0000000 --- a/docs/30_registry/resources/dnsrecord_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_params_modify.md) | [Parameters](dnsrecord_params_modify_params.md) | [Operations](dnsrecord_params_modify_ops.md) diff --git a/docs/30_registry/resources/dnsrecord_params_modify_params.md b/docs/30_registry/resources/dnsrecord_params_modify_params.md deleted file mode 100644 index e5e7716..0000000 --- a/docs/30_registry/resources/dnsrecord_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnsrecord - -Service ID: `111` - -Service Name: DNS запись - -[Manual](dnsrecord.md) | [Create params](dnsrecord_params_create.md) | [Modify params](dnsrecord_params_modify.md) | [Output params](dnsrecord_outputs.md) | [Operations](dnsrecord_ops.md) | [Example](dnsrecord_example.md) - -[Overview](dnsrecord_params_modify.md) | [Parameters](dnsrecord_params_modify_params.md) | [Operations](dnsrecord_params_modify_ops.md) diff --git a/docs/30_registry/resources/dnszone.md b/docs/30_registry/resources/dnszone.md deleted file mode 100644 index f8249dd..0000000 --- a/docs/30_registry/resources/dnszone.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## MAN - -
-## ![image](https://img.icons8.com/?size=50&id=41400&format=png) Необходимо делегировать зону у регистратора на Авторитетные DNS (Сервера зон)

ns3.ngcloud.ru
``` bash
185.247.187.83
2a10:aa80:0:5::3
```

ns4.ngcloud.ru
``` bash
81.22.46.43
2a10:aa80:0:6::3
``` -
diff --git a/docs/30_registry/resources/dnszone_example.md b/docs/30_registry/resources/dnszone_example.md deleted file mode 100644 index 5054488..0000000 --- a/docs/30_registry/resources/dnszone_example.md +++ /dev/null @@ -1,52 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Copy-ready manifest (`dnszone_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_dnszone" "baza" { - zone_email = "TODO" # Контактный e-mail - zone_name = "TODO" # Имя зоны - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - zone_kind = "NATIVE" # Тип зоны - zone_time_to_refresh = 86400 # Время ожидания ответа вторичного DNS перед запросом SOA-записи с первичных серверов - zone_time_to_retry = 7200 # Время в течение которого сервер повторно попробует синхронизировать информацию с первичных DNS-серверов - zone_time_to_expire = 3600000 # Время в течение которого вторичный DNS будет пытаться завершить синхронизацию зоны с первичным - zone_time_to_live = 86400 # Время, в течение которого информация будет кешироваться другими DNS-серверами -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_dnszone.baza.state_params["имя_ключа"] -nubes_dnszone.baza.state_out["имя_ключа"] -nubes_dnszone.baza.state_params_flat["имя_ключа"] -nubes_dnszone.baza.state_out_flat["имя_ключа"] -nubes_dnszone.baza.vault_secrets["имя_ключа"] -nubes_dnszone.baza.vault_url -nubes_dnszone.baza.vault_user_path -nubes_dnszone.baza.vault_fields -``` diff --git a/docs/30_registry/resources/dnszone_example_ops.md b/docs/30_registry/resources/dnszone_example_ops.md deleted file mode 100644 index 73cfa09..0000000 --- a/docs/30_registry/resources/dnszone_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_example.md) | [Parameters](dnszone_example_params.md) | [Operations](dnszone_example_ops.md) diff --git a/docs/30_registry/resources/dnszone_example_params.md b/docs/30_registry/resources/dnszone_example_params.md deleted file mode 100644 index 73cfa09..0000000 --- a/docs/30_registry/resources/dnszone_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_example.md) | [Parameters](dnszone_example_params.md) | [Operations](dnszone_example_ops.md) diff --git a/docs/30_registry/resources/dnszone_instruction.md b/docs/30_registry/resources/dnszone_instruction.md deleted file mode 100644 index 3f2f891..0000000 --- a/docs/30_registry/resources/dnszone_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для dnszone - -## ![image](https://img.icons8.com/?size=50&id=41400&format=png) Необходимо делегировать зону у регистратора на Авторитетные DNS (Сервера зон)

ns3.ngcloud.ru
``` bash
185.247.187.83
2a10:aa80:0:5::3
```

ns4.ngcloud.ru
``` bash
81.22.46.43
2a10:aa80:0:6::3
``` diff --git a/docs/30_registry/resources/dnszone_man.md b/docs/30_registry/resources/dnszone_man.md deleted file mode 100644 index 751c36c..0000000 --- a/docs/30_registry/resources/dnszone_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: dnszone - -## ![image](https://img.icons8.com/?size=50&id=41400&format=png) Необходимо делегировать зону у регистратора на Авторитетные DNS (Сервера зон)

ns3.ngcloud.ru
``` bash
185.247.187.83
2a10:aa80:0:5::3
```

ns4.ngcloud.ru
``` bash
81.22.46.43
2a10:aa80:0:6::3
``` diff --git a/docs/30_registry/resources/dnszone_ops.md b/docs/30_registry/resources/dnszone_ops.md deleted file mode 100644 index e07344c..0000000 --- a/docs/30_registry/resources/dnszone_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](dnszone_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/dnszone_outputs.md b/docs/30_registry/resources/dnszone_outputs.md deleted file mode 100644 index 13cab31..0000000 --- a/docs/30_registry/resources/dnszone_outputs.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (prod / supermax / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["zoneTtl"]` -- `state_params["zoneKind"]` -- `state_params["zoneName"]` -- `state_params["zoneEmail"]` -- `state_params["zoneRetry"]` -- `state_params["zoneExpire"]` -- `state_params["zoneRefresh"]` -- `state_params["resourceRealm"]` -- `state_params["zoneMastersForSlave"]` - -### `state_out_flat` ключи - -- `state_out_flat["dnsServers"]` -- `state_out_flat["zoneSerial"]` -- `state_out_flat["zoneSoaServer"]` diff --git a/docs/30_registry/resources/dnszone_outputs_ops.md b/docs/30_registry/resources/dnszone_outputs_ops.md deleted file mode 100644 index 8e26344..0000000 --- a/docs/30_registry/resources/dnszone_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_outputs.md) | [Parameters](dnszone_outputs_params.md) | [Operations](dnszone_outputs_ops.md) diff --git a/docs/30_registry/resources/dnszone_outputs_params.md b/docs/30_registry/resources/dnszone_outputs_params.md deleted file mode 100644 index 8e26344..0000000 --- a/docs/30_registry/resources/dnszone_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_outputs.md) | [Parameters](dnszone_outputs_params.md) | [Operations](dnszone_outputs_ops.md) diff --git a/docs/30_registry/resources/dnszone_params.md b/docs/30_registry/resources/dnszone_params.md deleted file mode 100644 index 0f1f739..0000000 --- a/docs/30_registry/resources/dnszone_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Parameters - -- [Create params](dnszone_params_create.md) -- [Modify params](dnszone_params_modify.md) diff --git a/docs/30_registry/resources/dnszone_params_create.md b/docs/30_registry/resources/dnszone_params_create.md deleted file mode 100644 index 0690a8f..0000000 --- a/docs/30_registry/resources/dnszone_params_create.md +++ /dev/null @@ -1,31 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
66zone_emailstringКонтактный e-mail
67zone_namestringИмя зоныregex=^([a-z0-9-]+\.)+[a-z0-9-]+$
69zone_masters_for_slavestringИспользовать если выбран тип SLAVE. IP адреса в формате через пробел для настройки Master-серверов
284resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
68zone_kindstringNATIVEТип зоныvalue_list=NATIVE, SLAVE
70zone_time_to_refreshstring86400Время ожидания ответа вторичного DNS перед запросом SOA-записи с первичных серверов
71zone_time_to_retrystring7200Время в течение которого сервер повторно попробует синхронизировать информацию с первичных DNS-серверов
72zone_time_to_expirestring3600000Время в течение которого вторичный DNS будет пытаться завершить синхронизацию зоны с первичным
73zone_time_to_livestring86400Время, в течение которого информация будет кешироваться другими DNS-серверами
diff --git a/docs/30_registry/resources/dnszone_params_create_ops.md b/docs/30_registry/resources/dnszone_params_create_ops.md deleted file mode 100644 index 9567c05..0000000 --- a/docs/30_registry/resources/dnszone_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_params_create.md) | [Parameters](dnszone_params_create_params.md) | [Operations](dnszone_params_create_ops.md) diff --git a/docs/30_registry/resources/dnszone_params_create_params.md b/docs/30_registry/resources/dnszone_params_create_params.md deleted file mode 100644 index 9567c05..0000000 --- a/docs/30_registry/resources/dnszone_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_params_create.md) | [Parameters](dnszone_params_create_params.md) | [Operations](dnszone_params_create_ops.md) diff --git a/docs/30_registry/resources/dnszone_params_modify.md b/docs/30_registry/resources/dnszone_params_modify.md deleted file mode 100644 index bd1dc13..0000000 --- a/docs/30_registry/resources/dnszone_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/dnszone_params_modify_ops.md b/docs/30_registry/resources/dnszone_params_modify_ops.md deleted file mode 100644 index 283576e..0000000 --- a/docs/30_registry/resources/dnszone_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_params_modify.md) | [Parameters](dnszone_params_modify_params.md) | [Operations](dnszone_params_modify_ops.md) diff --git a/docs/30_registry/resources/dnszone_params_modify_params.md b/docs/30_registry/resources/dnszone_params_modify_params.md deleted file mode 100644 index 283576e..0000000 --- a/docs/30_registry/resources/dnszone_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dnszone - -Service ID: `110` - -Service Name: DNS зона - -[Manual](dnszone.md) | [Create params](dnszone_params_create.md) | [Modify params](dnszone_params_modify.md) | [Output params](dnszone_outputs.md) | [Operations](dnszone_ops.md) | [Example](dnszone_example.md) - -[Overview](dnszone_params_modify.md) | [Parameters](dnszone_params_modify_params.md) | [Operations](dnszone_params_modify_ops.md) diff --git a/docs/30_registry/resources/dummy.md b/docs/30_registry/resources/dummy.md deleted file mode 100644 index 53f9855..0000000 --- a/docs/30_registry/resources/dummy.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## MAN - -
-## Болванка для тестов.

А это просто много букв, чтобы посмотреть, как ведет себя текст при переполнении контейнера.


``` json
{
"iamServiceUrl": "https://auth-api-test.ngcloud.ru/api/v1/user",
"idpResponse": {
"prefix": {
"charset": "",
"status_text": "Request Time-out",
"text": true,
"errordetail": "",
"filecontent": "Connection Timeout",
"responseheader": {},
"header": "",
"statuscode": "408 Request Time-out",
"status_code": 408,
"mimetype": "Unable to determine MIME type of file."
}
}
}
``` -
diff --git a/docs/30_registry/resources/dummy_example.md b/docs/30_registry/resources/dummy_example.md deleted file mode 100644 index 9699faa..0000000 --- a/docs/30_registry/resources/dummy_example.md +++ /dev/null @@ -1,49 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Copy-ready manifest (`dummy_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_dummy" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - duration_ms = 0 # перед завершением подождать (sleep) столько миллисекунд - fail_at_start = false # если true, завершить джоб, ничего не записывая в cmdb - fail_in_progress = false # если true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdb - where_fail = 1 # принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault write -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_dummy.baza.state_params["имя_ключа"] -nubes_dummy.baza.state_out["имя_ключа"] -nubes_dummy.baza.state_params_flat["имя_ключа"] -nubes_dummy.baza.state_out_flat["имя_ключа"] -nubes_dummy.baza.vault_secrets["имя_ключа"] -nubes_dummy.baza.vault_url -nubes_dummy.baza.vault_user_path -nubes_dummy.baza.vault_fields -``` diff --git a/docs/30_registry/resources/dummy_example_ops.md b/docs/30_registry/resources/dummy_example_ops.md deleted file mode 100644 index 458759a..0000000 --- a/docs/30_registry/resources/dummy_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_example.md) | [Parameters](dummy_example_params.md) | [Operations](dummy_example_ops.md) diff --git a/docs/30_registry/resources/dummy_example_params.md b/docs/30_registry/resources/dummy_example_params.md deleted file mode 100644 index 458759a..0000000 --- a/docs/30_registry/resources/dummy_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_example.md) | [Parameters](dummy_example_params.md) | [Operations](dummy_example_ops.md) diff --git a/docs/30_registry/resources/dummy_instruction.md b/docs/30_registry/resources/dummy_instruction.md deleted file mode 100644 index 2323840..0000000 --- a/docs/30_registry/resources/dummy_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для dummy - -## Болванка для тестов.

А это просто много букв, чтобы посмотреть, как ведет себя текст при переполнении контейнера.


``` json
{
"iamServiceUrl": "https://auth-api-test.ngcloud.ru/api/v1/user",
"idpResponse": {
"prefix": {
"charset": "",
"status_text": "Request Time-out",
"text": true,
"errordetail": "",
"filecontent": "Connection Timeout",
"responseheader": {},
"header": "",
"statuscode": "408 Request Time-out",
"status_code": 408,
"mimetype": "Unable to determine MIME type of file."
}
}
}
``` diff --git a/docs/30_registry/resources/dummy_man.md b/docs/30_registry/resources/dummy_man.md deleted file mode 100644 index d3945f6..0000000 --- a/docs/30_registry/resources/dummy_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: dummy - -## Болванка для тестов.

А это просто много букв, чтобы посмотреть, как ведет себя текст при переполнении контейнера.


``` json
{
"iamServiceUrl": "https://auth-api-test.ngcloud.ru/api/v1/user",
"idpResponse": {
"prefix": {
"charset": "",
"status_text": "Request Time-out",
"text": true,
"errordetail": "",
"filecontent": "Connection Timeout",
"responseheader": {},
"header": "",
"statuscode": "408 Request Time-out",
"status_code": 408,
"mimetype": "Unable to determine MIME type of file."
}
}
}
``` diff --git a/docs/30_registry/resources/dummy_ops.md b/docs/30_registry/resources/dummy_ops.md deleted file mode 100644 index 2cd4d8f..0000000 --- a/docs/30_registry/resources/dummy_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](dummy_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](dummy_params_modify.md) -- `redeploy` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/dummy_outputs.md b/docs/30_registry/resources/dummy_outputs.md deleted file mode 100644 index 52b99e1..0000000 --- a/docs/30_registry/resources/dummy_outputs.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (running/suspended snapshot) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `vault_secrets` ключи - -- `vault_secrets["someKey"]` - diff --git a/docs/30_registry/resources/dummy_outputs_ops.md b/docs/30_registry/resources/dummy_outputs_ops.md deleted file mode 100644 index 4352cd9..0000000 --- a/docs/30_registry/resources/dummy_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_outputs.md) | [Parameters](dummy_outputs_params.md) | [Operations](dummy_outputs_ops.md) diff --git a/docs/30_registry/resources/dummy_outputs_params.md b/docs/30_registry/resources/dummy_outputs_params.md deleted file mode 100644 index 4352cd9..0000000 --- a/docs/30_registry/resources/dummy_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_outputs.md) | [Parameters](dummy_outputs_params.md) | [Operations](dummy_outputs_ops.md) diff --git a/docs/30_registry/resources/dummy_params.md b/docs/30_registry/resources/dummy_params.md deleted file mode 100644 index 67ae088..0000000 --- a/docs/30_registry/resources/dummy_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Parameters - -- [Create params](dummy_params_create.md) -- [Modify params](dummy_params_modify.md) diff --git a/docs/30_registry/resources/dummy_params_create.md b/docs/30_registry/resources/dummy_params_create.md deleted file mode 100644 index a098d0b..0000000 --- a/docs/30_registry/resources/dummy_params_create.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
242resource_realmstringНаименование ресурсной платформы для подключенияfunc=getAvailableResourceRealms
286bodymessagestringДата, уходящая в Vault
321map_examplemap
322json_examplejsonДля тестирования интерфейса. Сюда можно писать корректный json
396nested_ref_example
447yaml_exampleyaml
647map_fixedmap-fixedНовый тип поля
654array_map_fixed_examplearray-map-fixedArray of map-fixed
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
198duration_msinteger0перед завершением подождать (sleep) столько миллисекунд
199fail_at_startbooleanfalse**Операция не будет завершена**
Она будет в постоянном статусе PENDING, однако в Jenkins Job завершится с ошибкой
value_list=false, true
200fail_in_progressbooleanfalseесли true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdbvalue_list=false, true
201where_failinteger1принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault writevalue_list=1, 2, 3
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/dummy_params_create_ops.md b/docs/30_registry/resources/dummy_params_create_ops.md deleted file mode 100644 index 7d5943f..0000000 --- a/docs/30_registry/resources/dummy_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_params_create.md) | [Parameters](dummy_params_create_params.md) | [Operations](dummy_params_create_ops.md) diff --git a/docs/30_registry/resources/dummy_params_create_params.md b/docs/30_registry/resources/dummy_params_create_params.md deleted file mode 100644 index 7d5943f..0000000 --- a/docs/30_registry/resources/dummy_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_params_create.md) | [Parameters](dummy_params_create_params.md) | [Operations](dummy_params_create_ops.md) diff --git a/docs/30_registry/resources/dummy_params_modify.md b/docs/30_registry/resources/dummy_params_modify.md deleted file mode 100644 index b601221..0000000 --- a/docs/30_registry/resources/dummy_params_modify.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -## Modify params - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
287duration_msintegerперед завершением подождать (sleep) столько миллисекунд
288fail_at_startbooleanесли true, завершить джоб, ничего не записывая в cmdbvalue_list=false, true
289fail_in_progressbooleanесли true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdbvalue_list=false, true
290where_failintegerпринимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault writevalue_list=1, 2, 3
291bodymessageДата, уходящая в Vault
373map_examplemap
374json_example
diff --git a/docs/30_registry/resources/dummy_params_modify_ops.md b/docs/30_registry/resources/dummy_params_modify_ops.md deleted file mode 100644 index 6d2859f..0000000 --- a/docs/30_registry/resources/dummy_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_params_modify.md) | [Parameters](dummy_params_modify_params.md) | [Operations](dummy_params_modify_ops.md) diff --git a/docs/30_registry/resources/dummy_params_modify_params.md b/docs/30_registry/resources/dummy_params_modify_params.md deleted file mode 100644 index 6d2859f..0000000 --- a/docs/30_registry/resources/dummy_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_dummy - -Service ID: `1` - -Service Name: Болванка - -[Manual](dummy.md) | [Create params](dummy_params_create.md) | [Modify params](dummy_params_modify.md) | [Output params](dummy_outputs.md) | [Operations](dummy_ops.md) | [Example](dummy_example.md) - -[Overview](dummy_params_modify.md) | [Parameters](dummy_params_modify_params.md) | [Operations](dummy_params_modify_ops.md) diff --git a/docs/30_registry/resources/dummy_redeploy.md b/docs/30_registry/resources/dummy_redeploy.md deleted file mode 100644 index b62f7ae..0000000 --- a/docs/30_registry/resources/dummy_redeploy.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_dummy_redeploy - -Service: nubes_dummy - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_dummy_redeploy" "example" { - dummy_id = nubes_dummy.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/dummy_redeploy_ops.md b/docs/30_registry/resources/dummy_redeploy_ops.md deleted file mode 100644 index 03a97d7..0000000 --- a/docs/30_registry/resources/dummy_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_dummy_redeploy - -Service: nubes_dummy - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) diff --git a/docs/30_registry/resources/dummy_redeploy_params.md b/docs/30_registry/resources/dummy_redeploy_params.md deleted file mode 100644 index 03a97d7..0000000 --- a/docs/30_registry/resources/dummy_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_dummy_redeploy - -Service: nubes_dummy - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) - -[Overview](dummy_redeploy.md) | [Parameters](dummy_redeploy_params.md) | [Operations](dummy_redeploy_ops.md) diff --git a/docs/30_registry/resources/flask.md b/docs/30_registry/resources/flask.md deleted file mode 100644 index fc5aa48..0000000 --- a/docs/30_registry/resources/flask.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/flask_example.md b/docs/30_registry/resources/flask_example.md deleted file mode 100644 index 11f4475..0000000 --- a/docs/30_registry/resources/flask_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Copy-ready manifest (`flask_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_flask" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - resource_c_p_u = 300 # Квота ядра пода (milicores) - resource_memory = 256 # Квота памяти пода (MBytes) - resource_instances = 1 # Количество узлов - git_path = "https://github.com/Foxyhhd/Baldurs-Gate-test.git" # Путь до Git, который будет webroot для сайта - json_env = { "param": "value" } # Массив переменных, будут переданы в env приложения -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_flask.baza.state_params["имя_ключа"] -nubes_flask.baza.state_out["имя_ключа"] -nubes_flask.baza.state_params_flat["имя_ключа"] -nubes_flask.baza.state_out_flat["имя_ключа"] -nubes_flask.baza.vault_secrets["имя_ключа"] -nubes_flask.baza.vault_url -nubes_flask.baza.vault_user_path -nubes_flask.baza.vault_fields -``` diff --git a/docs/30_registry/resources/flask_example_ops.md b/docs/30_registry/resources/flask_example_ops.md deleted file mode 100644 index 3a56ba6..0000000 --- a/docs/30_registry/resources/flask_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_example.md) | [Parameters](flask_example_params.md) | [Operations](flask_example_ops.md) diff --git a/docs/30_registry/resources/flask_example_params.md b/docs/30_registry/resources/flask_example_params.md deleted file mode 100644 index 3a56ba6..0000000 --- a/docs/30_registry/resources/flask_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_example.md) | [Parameters](flask_example_params.md) | [Operations](flask_example_ops.md) diff --git a/docs/30_registry/resources/flask_instruction.md b/docs/30_registry/resources/flask_instruction.md deleted file mode 100644 index e5a7eb3..0000000 --- a/docs/30_registry/resources/flask_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для flask - -_Пока не заполнено. Инструкция будет добавлена разработчиками облака._ diff --git a/docs/30_registry/resources/flask_man.md b/docs/30_registry/resources/flask_man.md deleted file mode 100644 index 179cba4..0000000 --- a/docs/30_registry/resources/flask_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: flask - -Manual not available. diff --git a/docs/30_registry/resources/flask_ops.md b/docs/30_registry/resources/flask_ops.md deleted file mode 100644 index 0682476..0000000 --- a/docs/30_registry/resources/flask_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](flask_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](flask_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/flask_outputs.md b/docs/30_registry/resources/flask_outputs.md deleted file mode 100644 index 6f4871b..0000000 --- a/docs/30_registry/resources/flask_outputs.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-flask-r4 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["gitPath"]` -- `state_params["jsonEnv"]` -- `state_params["healthPath"]` -- `state_params["resourceCPU"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/flask_outputs_ops.md b/docs/30_registry/resources/flask_outputs_ops.md deleted file mode 100644 index abdbda9..0000000 --- a/docs/30_registry/resources/flask_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_outputs.md) | [Parameters](flask_outputs_params.md) | [Operations](flask_outputs_ops.md) diff --git a/docs/30_registry/resources/flask_outputs_params.md b/docs/30_registry/resources/flask_outputs_params.md deleted file mode 100644 index abdbda9..0000000 --- a/docs/30_registry/resources/flask_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_outputs.md) | [Parameters](flask_outputs_params.md) | [Operations](flask_outputs_ops.md) diff --git a/docs/30_registry/resources/flask_params.md b/docs/30_registry/resources/flask_params.md deleted file mode 100644 index 608ce56..0000000 --- a/docs/30_registry/resources/flask_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Parameters - -- [Create params](flask_params_create.md) -- [Modify params](flask_params_modify.md) diff --git a/docs/30_registry/resources/flask_params_create.md b/docs/30_registry/resources/flask_params_create.md deleted file mode 100644 index f063ce2..0000000 --- a/docs/30_registry/resources/flask_params_create.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
249resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
255health_pathstringПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
248domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
250resource_cpuinteger300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
251resource_memoryinteger256Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
252resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
253git_pathstringhttps://github.com/Foxyhhd/Baldurs-Gate-test.gitПуть до Git, который будет webroot для сайта
254json_envstring{ &quot;param&quot;: &quot;value&quot; }Массив переменных, будут переданы в env приложения
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/flask_params_create_ops.md b/docs/30_registry/resources/flask_params_create_ops.md deleted file mode 100644 index 7a690c8..0000000 --- a/docs/30_registry/resources/flask_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_params_create.md) | [Parameters](flask_params_create_params.md) | [Operations](flask_params_create_ops.md) diff --git a/docs/30_registry/resources/flask_params_create_params.md b/docs/30_registry/resources/flask_params_create_params.md deleted file mode 100644 index 7a690c8..0000000 --- a/docs/30_registry/resources/flask_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_params_create.md) | [Parameters](flask_params_create_params.md) | [Operations](flask_params_create_ops.md) diff --git a/docs/30_registry/resources/flask_params_modify.md b/docs/30_registry/resources/flask_params_modify.md deleted file mode 100644 index 75a0716..0000000 --- a/docs/30_registry/resources/flask_params_modify.md +++ /dev/null @@ -1,19 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -## Modify params - - - - - - - - - -
IDCodeTypeDescriptionConstraints
451resource_cpuintegerКвота ядра пода (milicores)minvalue=100; maxvalue=4000
452resource_memoryintegerКвота памяти пода (MBytes)minvalue=128; maxvalue=8192
453resource_instancesintegerКоличество узловminvalue=1; maxvalue=7
454git_pathПуть до Git, который будет webroot для сайта
455json_envjsonМассив переменных, будут переданы в env приложения
diff --git a/docs/30_registry/resources/flask_params_modify_ops.md b/docs/30_registry/resources/flask_params_modify_ops.md deleted file mode 100644 index 942bce1..0000000 --- a/docs/30_registry/resources/flask_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_params_modify.md) | [Parameters](flask_params_modify_params.md) | [Operations](flask_params_modify_ops.md) diff --git a/docs/30_registry/resources/flask_params_modify_params.md b/docs/30_registry/resources/flask_params_modify_params.md deleted file mode 100644 index 942bce1..0000000 --- a/docs/30_registry/resources/flask_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_flask - -Service ID: `89` - -Service Name: Web-сервер с фреймворком Flask - -[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md) - -[Overview](flask_params_modify.md) | [Parameters](flask_params_modify_params.md) | [Operations](flask_params_modify_ops.md) diff --git a/docs/30_registry/resources/gitea.md b/docs/30_registry/resources/gitea.md deleted file mode 100644 index b0fabf5..0000000 --- a/docs/30_registry/resources/gitea.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## MAN - -
-Развертывает сервис контроля версий Gitea
Зависит от сервиса postgresql который должен быть развернут заранее. -
diff --git a/docs/30_registry/resources/gitea_complex.md b/docs/30_registry/resources/gitea_complex.md deleted file mode 100644 index b67da5e..0000000 --- a/docs/30_registry/resources/gitea_complex.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## MAN - -
-Комплексная услуга из ["gittea", "postgres"] -
diff --git a/docs/30_registry/resources/gitea_complex_example.md b/docs/30_registry/resources/gitea_complex_example.md deleted file mode 100644 index 997d4aa..0000000 --- a/docs/30_registry/resources/gitea_complex_example.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Copy-ready manifest (`gitea_complex_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_gitea_complex" "baza" { -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_gitea_complex.baza.state_params["имя_ключа"] -nubes_gitea_complex.baza.state_out["имя_ключа"] -nubes_gitea_complex.baza.state_params_flat["имя_ключа"] -nubes_gitea_complex.baza.state_out_flat["имя_ключа"] -nubes_gitea_complex.baza.vault_secrets["имя_ключа"] -nubes_gitea_complex.baza.vault_url -nubes_gitea_complex.baza.vault_user_path -nubes_gitea_complex.baza.vault_fields -``` diff --git a/docs/30_registry/resources/gitea_complex_example_ops.md b/docs/30_registry/resources/gitea_complex_example_ops.md deleted file mode 100644 index e5c1893..0000000 --- a/docs/30_registry/resources/gitea_complex_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_example.md) | [Parameters](gitea_complex_example_params.md) | [Operations](gitea_complex_example_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_example_params.md b/docs/30_registry/resources/gitea_complex_example_params.md deleted file mode 100644 index e5c1893..0000000 --- a/docs/30_registry/resources/gitea_complex_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_example.md) | [Parameters](gitea_complex_example_params.md) | [Operations](gitea_complex_example_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_man.md b/docs/30_registry/resources/gitea_complex_man.md deleted file mode 100644 index 7bc5a82..0000000 --- a/docs/30_registry/resources/gitea_complex_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: gitea_complex - -Комплексная услуга из ["gittea", "postgres"] diff --git a/docs/30_registry/resources/gitea_complex_ops.md b/docs/30_registry/resources/gitea_complex_ops.md deleted file mode 100644 index 4612ff3..0000000 --- a/docs/30_registry/resources/gitea_complex_ops.md +++ /dev/null @@ -1,10 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Operations - diff --git a/docs/30_registry/resources/gitea_complex_outputs.md b/docs/30_registry/resources/gitea_complex_outputs.md deleted file mode 100644 index f0593c8..0000000 --- a/docs/30_registry/resources/gitea_complex_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/gitea_complex_outputs_ops.md b/docs/30_registry/resources/gitea_complex_outputs_ops.md deleted file mode 100644 index 1e83ffb..0000000 --- a/docs/30_registry/resources/gitea_complex_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_outputs.md) | [Parameters](gitea_complex_outputs_params.md) | [Operations](gitea_complex_outputs_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_outputs_params.md b/docs/30_registry/resources/gitea_complex_outputs_params.md deleted file mode 100644 index 1e83ffb..0000000 --- a/docs/30_registry/resources/gitea_complex_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_outputs.md) | [Parameters](gitea_complex_outputs_params.md) | [Operations](gitea_complex_outputs_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_params.md b/docs/30_registry/resources/gitea_complex_params.md deleted file mode 100644 index ad58e7f..0000000 --- a/docs/30_registry/resources/gitea_complex_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Parameters - -- [Create params](gitea_complex_params_create.md) -- [Modify params](gitea_complex_params_modify.md) diff --git a/docs/30_registry/resources/gitea_complex_params_create.md b/docs/30_registry/resources/gitea_complex_params_create.md deleted file mode 100644 index 2f57dfd..0000000 --- a/docs/30_registry/resources/gitea_complex_params_create.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - -None. - -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. diff --git a/docs/30_registry/resources/gitea_complex_params_create_ops.md b/docs/30_registry/resources/gitea_complex_params_create_ops.md deleted file mode 100644 index 4de2328..0000000 --- a/docs/30_registry/resources/gitea_complex_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_params_create.md) | [Parameters](gitea_complex_params_create_params.md) | [Operations](gitea_complex_params_create_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_params_create_params.md b/docs/30_registry/resources/gitea_complex_params_create_params.md deleted file mode 100644 index 4de2328..0000000 --- a/docs/30_registry/resources/gitea_complex_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_params_create.md) | [Parameters](gitea_complex_params_create_params.md) | [Operations](gitea_complex_params_create_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_params_modify.md b/docs/30_registry/resources/gitea_complex_params_modify.md deleted file mode 100644 index 472dee0..0000000 --- a/docs/30_registry/resources/gitea_complex_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/gitea_complex_params_modify_ops.md b/docs/30_registry/resources/gitea_complex_params_modify_ops.md deleted file mode 100644 index 71a5416..0000000 --- a/docs/30_registry/resources/gitea_complex_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_params_modify.md) | [Parameters](gitea_complex_params_modify_params.md) | [Operations](gitea_complex_params_modify_ops.md) diff --git a/docs/30_registry/resources/gitea_complex_params_modify_params.md b/docs/30_registry/resources/gitea_complex_params_modify_params.md deleted file mode 100644 index 71a5416..0000000 --- a/docs/30_registry/resources/gitea_complex_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea_complex - -Service ID: `114` - -Service Name: Комплексная услуга по созданию gitea - -[Manual](gitea_complex.md) | [Create params](gitea_complex_params_create.md) | [Modify params](gitea_complex_params_modify.md) | [Output params](gitea_complex_outputs.md) | [Operations](gitea_complex_ops.md) | [Example](gitea_complex_example.md) - -[Overview](gitea_complex_params_modify.md) | [Parameters](gitea_complex_params_modify_params.md) | [Operations](gitea_complex_params_modify_ops.md) diff --git a/docs/30_registry/resources/gitea_example.md b/docs/30_registry/resources/gitea_example.md deleted file mode 100644 index f49c193..0000000 --- a/docs/30_registry/resources/gitea_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Copy-ready manifest (`gitea_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_gitea" "baza" { - psql_uid = "TODO" # UUID Услуги k8sPgsql. Пользователя techGitea, базу данных gitea создаёт автоматически - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 500 # Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро - resource_memory = 512 # Квота памяти пода (Указывается в Megabytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_gitea.baza.state_params["имя_ключа"] -nubes_gitea.baza.state_out["имя_ключа"] -nubes_gitea.baza.state_params_flat["имя_ключа"] -nubes_gitea.baza.state_out_flat["имя_ключа"] -nubes_gitea.baza.vault_secrets["имя_ключа"] -nubes_gitea.baza.vault_url -nubes_gitea.baza.vault_user_path -nubes_gitea.baza.vault_fields -``` diff --git a/docs/30_registry/resources/gitea_example_ops.md b/docs/30_registry/resources/gitea_example_ops.md deleted file mode 100644 index 160f298..0000000 --- a/docs/30_registry/resources/gitea_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_example.md) | [Parameters](gitea_example_params.md) | [Operations](gitea_example_ops.md) diff --git a/docs/30_registry/resources/gitea_example_params.md b/docs/30_registry/resources/gitea_example_params.md deleted file mode 100644 index 160f298..0000000 --- a/docs/30_registry/resources/gitea_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_example.md) | [Parameters](gitea_example_params.md) | [Operations](gitea_example_ops.md) diff --git a/docs/30_registry/resources/gitea_instruction.md b/docs/30_registry/resources/gitea_instruction.md deleted file mode 100644 index 156391f..0000000 --- a/docs/30_registry/resources/gitea_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для gitea - -Развертывает сервис контроля версий Gitea
Зависит от сервиса postgresql который должен быть развернут заранее. diff --git a/docs/30_registry/resources/gitea_man.md b/docs/30_registry/resources/gitea_man.md deleted file mode 100644 index b7c8415..0000000 --- a/docs/30_registry/resources/gitea_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: gitea - -Развертывает сервис контроля версий Gitea
Зависит от сервиса postgresql который должен быть развернут заранее. diff --git a/docs/30_registry/resources/gitea_ops.md b/docs/30_registry/resources/gitea_ops.md deleted file mode 100644 index 0b22aac..0000000 --- a/docs/30_registry/resources/gitea_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](gitea_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](gitea_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/gitea_outputs.md b/docs/30_registry/resources/gitea_outputs.md deleted file mode 100644 index 10cc685..0000000 --- a/docs/30_registry/resources/gitea_outputs.md +++ /dev/null @@ -1,49 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (prod / naeel_git / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["psqlUid"]` -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/gitea_outputs_ops.md b/docs/30_registry/resources/gitea_outputs_ops.md deleted file mode 100644 index bee14c3..0000000 --- a/docs/30_registry/resources/gitea_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_outputs.md) | [Parameters](gitea_outputs_params.md) | [Operations](gitea_outputs_ops.md) diff --git a/docs/30_registry/resources/gitea_outputs_params.md b/docs/30_registry/resources/gitea_outputs_params.md deleted file mode 100644 index bee14c3..0000000 --- a/docs/30_registry/resources/gitea_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_outputs.md) | [Parameters](gitea_outputs_params.md) | [Operations](gitea_outputs_ops.md) diff --git a/docs/30_registry/resources/gitea_params.md b/docs/30_registry/resources/gitea_params.md deleted file mode 100644 index f0931ff..0000000 --- a/docs/30_registry/resources/gitea_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Parameters - -- [Create params](gitea_params_create.md) -- [Modify params](gitea_params_modify.md) diff --git a/docs/30_registry/resources/gitea_params_create.md b/docs/30_registry/resources/gitea_params_create.md deleted file mode 100644 index 378430a..0000000 --- a/docs/30_registry/resources/gitea_params_create.md +++ /dev/null @@ -1,40 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
238psql_uiduuidUUID Услуги k8sPgsql. Пользователя techGitea, базу данных gitea создаёт автоматическиref_svc_id=90
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
232resource_cpuinteger500Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=300; maxvalue=4000
233resource_memoryinteger512Квота памяти пода (Указывается в Megabytes)minvalue=256; maxvalue=8192
234resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
235resource_instancesinteger1Количество узлов в сетиminvalue=1; maxvalue=7
237domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/gitea_params_create_ops.md b/docs/30_registry/resources/gitea_params_create_ops.md deleted file mode 100644 index 71fe510..0000000 --- a/docs/30_registry/resources/gitea_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_params_create.md) | [Parameters](gitea_params_create_params.md) | [Operations](gitea_params_create_ops.md) diff --git a/docs/30_registry/resources/gitea_params_create_params.md b/docs/30_registry/resources/gitea_params_create_params.md deleted file mode 100644 index 71fe510..0000000 --- a/docs/30_registry/resources/gitea_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_params_create.md) | [Parameters](gitea_params_create_params.md) | [Operations](gitea_params_create_ops.md) diff --git a/docs/30_registry/resources/gitea_params_modify.md b/docs/30_registry/resources/gitea_params_modify.md deleted file mode 100644 index f584096..0000000 --- a/docs/30_registry/resources/gitea_params_modify.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -## Modify params - - - - - - - - -
IDCodeTypeDescriptionConstraints
259resource_cpuintegerКвота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=500; maxvalue=4000
260resource_memoryintegerКвота памяти пода (Указывается в Megabytes)minvalue=256; maxvalue=8192
261resource_diskintegerКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
262resource_instancesintegerКоличество узлов в сетиminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/gitea_params_modify_ops.md b/docs/30_registry/resources/gitea_params_modify_ops.md deleted file mode 100644 index ab1dfd7..0000000 --- a/docs/30_registry/resources/gitea_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_params_modify.md) | [Parameters](gitea_params_modify_params.md) | [Operations](gitea_params_modify_ops.md) diff --git a/docs/30_registry/resources/gitea_params_modify_params.md b/docs/30_registry/resources/gitea_params_modify_params.md deleted file mode 100644 index ab1dfd7..0000000 --- a/docs/30_registry/resources/gitea_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_gitea - -Service ID: `99` - -Service Name: Gitea - -[Manual](gitea.md) | [Create params](gitea_params_create.md) | [Modify params](gitea_params_modify.md) | [Output params](gitea_outputs.md) | [Operations](gitea_ops.md) | [Example](gitea_example.md) - -[Overview](gitea_params_modify.md) | [Parameters](gitea_params_modify_params.md) | [Operations](gitea_params_modify_ops.md) diff --git a/docs/30_registry/resources/harbor.md b/docs/30_registry/resources/harbor.md deleted file mode 100644 index c0cad0a..0000000 --- a/docs/30_registry/resources/harbor.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## MAN - -
-Расширенный реестр для управления Docker-образами с enterprise-функциями безопасности, репликации и контроля доступа.
Container Registry позволяет хранить, развертывать и управлять Docker-образами контейнеров в инфраструктуре NGcloud.
Сервис можно использовать в процессе разработки контейнеров. Например, вы можете настроить систему автоматизации на работу с реестром в Container Registry в рамках процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.
Чтобы начать работу, создайте реестр и загрузите в него Docker-образ
Авторизация: keycloak -
diff --git a/docs/30_registry/resources/harbor_example.md b/docs/30_registry/resources/harbor_example.md deleted file mode 100644 index 80cc74c..0000000 --- a/docs/30_registry/resources/harbor_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Copy-ready manifest (`harbor_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_harbor" "baza" { - resource_realm = "TODO" # Платформа для развертывания - s3_uid = "235e0546-..." # UUID экземпляра услуги S3 - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - emails = "testuser1" # Учётная запись, которой будут выданы админские права. Обязана находиться в Keycloak. Можно передавать несколько через пробел - resource_c_p_u = 100 # Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро - resource_memory = 200 # Квота памяти пода (Указывается в Megabytes) - resource_instances = 1 # Количество узлов -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_harbor.baza.state_params["имя_ключа"] -nubes_harbor.baza.state_out["имя_ключа"] -nubes_harbor.baza.state_params_flat["имя_ключа"] -nubes_harbor.baza.state_out_flat["имя_ключа"] -nubes_harbor.baza.vault_secrets["имя_ключа"] -nubes_harbor.baza.vault_url -nubes_harbor.baza.vault_user_path -nubes_harbor.baza.vault_fields -``` diff --git a/docs/30_registry/resources/harbor_example_ops.md b/docs/30_registry/resources/harbor_example_ops.md deleted file mode 100644 index 807ce3f..0000000 --- a/docs/30_registry/resources/harbor_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_example.md) | [Parameters](harbor_example_params.md) | [Operations](harbor_example_ops.md) diff --git a/docs/30_registry/resources/harbor_example_params.md b/docs/30_registry/resources/harbor_example_params.md deleted file mode 100644 index 807ce3f..0000000 --- a/docs/30_registry/resources/harbor_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_example.md) | [Parameters](harbor_example_params.md) | [Operations](harbor_example_ops.md) diff --git a/docs/30_registry/resources/harbor_instruction.md b/docs/30_registry/resources/harbor_instruction.md deleted file mode 100644 index f9c920c..0000000 --- a/docs/30_registry/resources/harbor_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для harbor - -Расширенный реестр для управления Docker-образами с enterprise-функциями безопасности, репликации и контроля доступа.
Container Registry позволяет хранить, развертывать и управлять Docker-образами контейнеров в инфраструктуре NGcloud.
Сервис можно использовать в процессе разработки контейнеров. Например, вы можете настроить систему автоматизации на работу с реестром в Container Registry в рамках процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.
Чтобы начать работу, создайте реестр и загрузите в него Docker-образ
Авторизация: keycloak diff --git a/docs/30_registry/resources/harbor_man.md b/docs/30_registry/resources/harbor_man.md deleted file mode 100644 index 52ed34c..0000000 --- a/docs/30_registry/resources/harbor_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: harbor - -Расширенный реестр для управления Docker-образами с enterprise-функциями безопасности, репликации и контроля доступа.
Container Registry позволяет хранить, развертывать и управлять Docker-образами контейнеров в инфраструктуре NGcloud.
Сервис можно использовать в процессе разработки контейнеров. Например, вы можете настроить систему автоматизации на работу с реестром в Container Registry в рамках процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.
Чтобы начать работу, создайте реестр и загрузите в него Docker-образ
Авторизация: keycloak diff --git a/docs/30_registry/resources/harbor_ops.md b/docs/30_registry/resources/harbor_ops.md deleted file mode 100644 index 9a06a19..0000000 --- a/docs/30_registry/resources/harbor_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](harbor_params_create.md) -- `delete` — DEV-Ветка удаления Harbor diff --git a/docs/30_registry/resources/harbor_outputs.md b/docs/30_registry/resources/harbor_outputs.md deleted file mode 100644 index 1c3afdc..0000000 --- a/docs/30_registry/resources/harbor_outputs.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (prod / pearlharbor / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["s3Uid"]` -- `state_params["domain"]` -- `state_params["emails"]` -- `state_params["resourceCPU"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` -- `state_out_flat["monitoring.k8sregistry"]` -- `state_out_flat["monitoring.k8sregistry.url"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/harbor_outputs_ops.md b/docs/30_registry/resources/harbor_outputs_ops.md deleted file mode 100644 index c37c98f..0000000 --- a/docs/30_registry/resources/harbor_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_outputs.md) | [Parameters](harbor_outputs_params.md) | [Operations](harbor_outputs_ops.md) diff --git a/docs/30_registry/resources/harbor_outputs_params.md b/docs/30_registry/resources/harbor_outputs_params.md deleted file mode 100644 index c37c98f..0000000 --- a/docs/30_registry/resources/harbor_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_outputs.md) | [Parameters](harbor_outputs_params.md) | [Operations](harbor_outputs_ops.md) diff --git a/docs/30_registry/resources/harbor_params.md b/docs/30_registry/resources/harbor_params.md deleted file mode 100644 index 6819254..0000000 --- a/docs/30_registry/resources/harbor_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Parameters - -- [Create params](harbor_params_create.md) -- [Modify params](harbor_params_modify.md) diff --git a/docs/30_registry/resources/harbor_params_create.md b/docs/30_registry/resources/harbor_params_create.md deleted file mode 100644 index d5f1c60..0000000 --- a/docs/30_registry/resources/harbor_params_create.md +++ /dev/null @@ -1,29 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
110resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
231s3_uiduuidUUID экземпляра услуги S3ref_svc_id=12
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
16domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
17emailsstringtestuser1Учётная запись, которой будут выданы админские права. Обязана находиться в Keycloak. Можно передавать несколько через пробел
228resource_cpuinteger100Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
229resource_memoryinteger200Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
230resource_instancesinteger1Количество узлов в сетиminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/harbor_params_create_ops.md b/docs/30_registry/resources/harbor_params_create_ops.md deleted file mode 100644 index 9890573..0000000 --- a/docs/30_registry/resources/harbor_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_params_create.md) | [Parameters](harbor_params_create_params.md) | [Operations](harbor_params_create_ops.md) diff --git a/docs/30_registry/resources/harbor_params_create_params.md b/docs/30_registry/resources/harbor_params_create_params.md deleted file mode 100644 index 9890573..0000000 --- a/docs/30_registry/resources/harbor_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_params_create.md) | [Parameters](harbor_params_create_params.md) | [Operations](harbor_params_create_ops.md) diff --git a/docs/30_registry/resources/harbor_params_modify.md b/docs/30_registry/resources/harbor_params_modify.md deleted file mode 100644 index 0960de7..0000000 --- a/docs/30_registry/resources/harbor_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/harbor_params_modify_ops.md b/docs/30_registry/resources/harbor_params_modify_ops.md deleted file mode 100644 index 3d40bd1..0000000 --- a/docs/30_registry/resources/harbor_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_params_modify.md) | [Parameters](harbor_params_modify_params.md) | [Operations](harbor_params_modify_ops.md) diff --git a/docs/30_registry/resources/harbor_params_modify_params.md b/docs/30_registry/resources/harbor_params_modify_params.md deleted file mode 100644 index 3d40bd1..0000000 --- a/docs/30_registry/resources/harbor_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_harbor - -Service ID: `82` - -Service Name: Container Registry - -[Manual](harbor.md) | [Create params](harbor_params_create.md) | [Modify params](harbor_params_modify.md) | [Output params](harbor_outputs.md) | [Operations](harbor_ops.md) | [Example](harbor_example.md) - -[Overview](harbor_params_modify.md) | [Parameters](harbor_params_modify_params.md) | [Operations](harbor_params_modify_ops.md) diff --git a/docs/30_registry/resources/http.md b/docs/30_registry/resources/http.md deleted file mode 100644 index 68075b0..0000000 --- a/docs/30_registry/resources/http.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/http_example.md b/docs/30_registry/resources/http_example.md deleted file mode 100644 index 30faee4..0000000 --- a/docs/30_registry/resources/http_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Copy-ready manifest (`http_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_http" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - resource_c_p_u = 100 # Квота ядра пода (Указывается в mili) - resource_memory = 200 # Квота памяти пода (Указывается в Megabytes) - resource_instances = 1 # Количество узлов - registry_path = "nexus-sa.tst.nubes.ru/docker-nubes/jolt" # Путь до image, который будет установлен как deployment - json_env = {"param": "value"} # Массив переменных, будут переданы в env приложения -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_http.baza.state_params["имя_ключа"] -nubes_http.baza.state_out["имя_ключа"] -nubes_http.baza.state_params_flat["имя_ключа"] -nubes_http.baza.state_out_flat["имя_ключа"] -nubes_http.baza.vault_secrets["имя_ключа"] -nubes_http.baza.vault_url -nubes_http.baza.vault_user_path -nubes_http.baza.vault_fields -``` diff --git a/docs/30_registry/resources/http_example_ops.md b/docs/30_registry/resources/http_example_ops.md deleted file mode 100644 index 37a0f16..0000000 --- a/docs/30_registry/resources/http_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_example.md) | [Parameters](http_example_params.md) | [Operations](http_example_ops.md) diff --git a/docs/30_registry/resources/http_example_params.md b/docs/30_registry/resources/http_example_params.md deleted file mode 100644 index 37a0f16..0000000 --- a/docs/30_registry/resources/http_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_example.md) | [Parameters](http_example_params.md) | [Operations](http_example_ops.md) diff --git a/docs/30_registry/resources/http_man.md b/docs/30_registry/resources/http_man.md deleted file mode 100644 index 805a7a7..0000000 --- a/docs/30_registry/resources/http_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: http - -Manual not available. diff --git a/docs/30_registry/resources/http_ops.md b/docs/30_registry/resources/http_ops.md deleted file mode 100644 index 547defd..0000000 --- a/docs/30_registry/resources/http_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](http_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](http_params_modify.md) -- `redeploy` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/http_outputs.md b/docs/30_registry/resources/http_outputs.md deleted file mode 100644 index 76b93a9..0000000 --- a/docs/30_registry/resources/http_outputs.md +++ /dev/null @@ -1,45 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-svc-98-r2 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["jsonEnv"]` -- `state_params["resourceCPU"]` -- `state_params["registryPath"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/http_outputs_ops.md b/docs/30_registry/resources/http_outputs_ops.md deleted file mode 100644 index 0177f62..0000000 --- a/docs/30_registry/resources/http_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_outputs.md) | [Parameters](http_outputs_params.md) | [Operations](http_outputs_ops.md) diff --git a/docs/30_registry/resources/http_outputs_params.md b/docs/30_registry/resources/http_outputs_params.md deleted file mode 100644 index 0177f62..0000000 --- a/docs/30_registry/resources/http_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_outputs.md) | [Parameters](http_outputs_params.md) | [Operations](http_outputs_ops.md) diff --git a/docs/30_registry/resources/http_params.md b/docs/30_registry/resources/http_params.md deleted file mode 100644 index 07aa372..0000000 --- a/docs/30_registry/resources/http_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Parameters - -- [Create params](http_params_create.md) -- [Modify params](http_params_modify.md) diff --git a/docs/30_registry/resources/http_params_create.md b/docs/30_registry/resources/http_params_create.md deleted file mode 100644 index aa7d336..0000000 --- a/docs/30_registry/resources/http_params_create.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
216resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
212domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
213resource_cpuinteger100Квота ядра пода (Указывается в mili)minvalue=100; maxvalue=4000
214resource_memoryinteger200Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
215resource_instancesinteger1Количество реплик приложения. Трафик будет распределяться между подами в режиме Round-Robinminvalue=1; maxvalue=7
217registry_pathstringnexus-sa.tst.nubes.ru/docker-nubes/joltПуть до image, который будет установлен как deployment
241json_envjson{&quot;param&quot;: &quot;value&quot;}Массив переменных, будут переданы в env приложения
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/http_params_create_ops.md b/docs/30_registry/resources/http_params_create_ops.md deleted file mode 100644 index f50ae0f..0000000 --- a/docs/30_registry/resources/http_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_params_create.md) | [Parameters](http_params_create_params.md) | [Operations](http_params_create_ops.md) diff --git a/docs/30_registry/resources/http_params_create_params.md b/docs/30_registry/resources/http_params_create_params.md deleted file mode 100644 index f50ae0f..0000000 --- a/docs/30_registry/resources/http_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_params_create.md) | [Parameters](http_params_create_params.md) | [Operations](http_params_create_ops.md) diff --git a/docs/30_registry/resources/http_params_modify.md b/docs/30_registry/resources/http_params_modify.md deleted file mode 100644 index 75a69ec..0000000 --- a/docs/30_registry/resources/http_params_modify.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -## Modify params - - - - - - - -
IDCodeTypeDescriptionConstraints
218resource_cpuintegerminvalue=100; maxvalue=4000
219resource_memoryintegerminvalue=128; maxvalue=8192
220resource_instancesintegerКоличество узловminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/http_params_modify_ops.md b/docs/30_registry/resources/http_params_modify_ops.md deleted file mode 100644 index 2b99474..0000000 --- a/docs/30_registry/resources/http_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_params_modify.md) | [Parameters](http_params_modify_params.md) | [Operations](http_params_modify_ops.md) diff --git a/docs/30_registry/resources/http_params_modify_params.md b/docs/30_registry/resources/http_params_modify_params.md deleted file mode 100644 index 2b99474..0000000 --- a/docs/30_registry/resources/http_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_http - -Service ID: `98` - -Service Name: Простой HTTP контейнер - -[Manual](http.md) | [Create params](http_params_create.md) | [Modify params](http_params_modify.md) | [Output params](http_outputs.md) | [Operations](http_ops.md) | [Example](http_example.md) - -[Overview](http_params_modify.md) | [Parameters](http_params_modify_params.md) | [Operations](http_params_modify_ops.md) diff --git a/docs/30_registry/resources/http_redeploy.md b/docs/30_registry/resources/http_redeploy.md deleted file mode 100644 index 135d3ec..0000000 --- a/docs/30_registry/resources/http_redeploy.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_http_redeploy - -Service: nubes_http - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_http_redeploy" "example" { - http_id = nubes_http.example.id - run_id = "change-me" - resource_realm = "TODO" -} -``` diff --git a/docs/30_registry/resources/http_redeploy_ops.md b/docs/30_registry/resources/http_redeploy_ops.md deleted file mode 100644 index efff663..0000000 --- a/docs/30_registry/resources/http_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_http_redeploy - -Service: nubes_http - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) diff --git a/docs/30_registry/resources/http_redeploy_params.md b/docs/30_registry/resources/http_redeploy_params.md deleted file mode 100644 index efff663..0000000 --- a/docs/30_registry/resources/http_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_http_redeploy - -Service: nubes_http - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) - -[Overview](http_redeploy.md) | [Parameters](http_redeploy_params.md) | [Operations](http_redeploy_ops.md) diff --git a/docs/30_registry/resources/index.md b/docs/30_registry/resources/index.md deleted file mode 100644 index 620301c..0000000 --- a/docs/30_registry/resources/index.md +++ /dev/null @@ -1,47 +0,0 @@ -# Resources - -Full list of provider resources. - -- 1 - [nubes_dummy](dummy.md) - Болванка для тестов -- 2 - [nubes_template](template.md) - Болванка для тестирования -- 12 - [nubes_s3](s3.md) - Масштабируемое хранилище данных -- 13 - [nubes_s3bucket](s3bucket.md) - Бакет в сервисе S3 -- 19 - [nubes_vc_org](vc_org.md) - Организация в Cloud Director -- 20 - [nubes_vc_org_saas](vc_org_saas.md) - Без интеграции Keycloak -- 21 - [nubes_vc_vdc](vc_vdc.md) - Выделение вычислительных ресурсов -- 22 - [nubes_vc_nsxt](vc_nsxt.md) - Обеспечение сетевой доступности в тенанте -- 23 - [nubes_vc_vm](vc_vm.md) - Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ -- 25 - [nubes_vcexternalip](vcexternalip.md) - Резервирование IP адреса -- 26 - [nubes_vapp](vapp.md) - Группировка виртуальных машин -- 27 - [nubes_vc_vm_v2](vc_vm_v2.md) - Виртуальная машина с возможностью настройки Cloud Init
Можно развернуть в услуге несколько ВМ
В зависимости от настроек можно выдавать на ВМ vip + dns -- 28 - [nubes_vc_vm_v3](vc_vm_v3.md) - Создание виртуальной машины -- 29 - [nubes_vc_vdc_group](vc_vdc_group.md) - Обеспечение сетевой доступности между датацентрами -- 32 - [nubes_vmpostgre](vmpostgre.md) - Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ -- 50 - [nubes_nextcloud](nextcloud.md) - Платформа совместной работы -- 81 - [nubes_superset](superset.md) - Сервер отчетов -- 82 - [nubes_harbor](harbor.md) - Реестр для хранения образов контейнеров -- 88 - [nubes_k8s_ziti_controller](k8s_ziti_controller.md) - Контроллер управления Client to service & service to service Zero trust network
-- 89 - [nubes_flask](flask.md) - Flask -- 90 - [nubes_postgres](postgres.md) - Управляемая база данных PostgreSQL -- 91 - [nubes_redis](redis.md) - Управляемая база данных Redis -- 92 - [nubes_mongodb](mongodb.md) - Управляемая база данных MongoDB -- 93 - [nubes_rabbitmq](rabbitmq.md) - Сервер очередей -- 94 - [nubes_lucee](lucee.md) - Cервер приложений -- 95 - [nubes_nodejs](nodejs.md) - Cервер приложений -- 96 - [nubes_pgadmin](pgadmin.md) - Административный интерфейс для PostgreSQL -- 97 - [nubes_nodered](nodered.md) - Low-code платформа для IoT -- 98 - [nubes_http](http.md) - Простой HTTP контейнер -- 99 - [nubes_gitea](gitea.md) - Сервис контроля версий -- 100 - [nubes_openwhisk](openwhisk.md) - Добавление и удаления пользователя (учетной записи, тенанта) для работы с Openwhisk -- 110 - [nubes_dnszone](dnszone.md) - Хостинг DNS зоны -- 111 - [nubes_dnsrecord](dnsrecord.md) - DNS запись в созданной зоне -- 112 - [nubes_tenant](tenant.md) - Организация доступов к мониторингу -- 113 - [nubes_vc_complex](vc_complex.md) - Создание готовой иерархии ресурсов -- 114 - [nubes_gitea_complex](gitea_complex.md) - Комплексная услуга из ["gittea", "postgres"] -- 115 - [nubes_mariadb](mariadb.md) - Управляемая база данных MySQL -- 116 - [nubes_kafka](kafka.md) - Сервис создания кластера Apache Kafka -- 117 - [nubes_nifi](nifi.md) - ETL-система -- 119 - [nubes_akhq](akhq.md) - Web интерфейс Akhq для работы с Apache Kafka -- 120 - [nubes_clickhouse](clickhouse.md) - Управляемая база данных ClickHouse -- 149 - [nubes_valo_tenant](valo_tenant.md) - Корпоративная система обмена и синхронизации файлов -- 150 - [nubes_k8s_sthutrval_cluster](k8s_sthutrval_cluster.md) - Платформа управления K8s
diff --git a/docs/30_registry/resources/k8sSthutrvalCluster.md b/docs/30_registry/resources/k8sSthutrvalCluster.md deleted file mode 100644 index 9b2696d..0000000 --- a/docs/30_registry/resources/k8sSthutrvalCluster.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_k8sSthutrvalCluster - -Service ID: `150` - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -## Example - -```hcl -resource "nubes_k8s_sthutrval_cluster" "example" { - # required params ... - suspend_on_destroy = "suspend" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/k8sSthutrvalCluster_instruction.md b/docs/30_registry/resources/k8sSthutrvalCluster_instruction.md deleted file mode 100644 index 36a8518..0000000 --- a/docs/30_registry/resources/k8sSthutrvalCluster_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для k8sSthutrvalCluster - -Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле diff --git a/docs/30_registry/resources/k8sSthutrvalCluster_ops.md b/docs/30_registry/resources/k8sSthutrvalCluster_ops.md deleted file mode 100644 index d09c49b..0000000 --- a/docs/30_registry/resources/k8sSthutrvalCluster_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8sSthutrvalCluster - -Service ID: `150` - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) diff --git a/docs/30_registry/resources/k8sSthutrvalCluster_params.md b/docs/30_registry/resources/k8sSthutrvalCluster_params.md deleted file mode 100644 index d09c49b..0000000 --- a/docs/30_registry/resources/k8sSthutrvalCluster_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8sSthutrvalCluster - -Service ID: `150` - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) - -[Overview](k8sSthutrvalCluster.md) | [Parameters](k8sSthutrvalCluster_params.md) | [Operations](k8sSthutrvalCluster_ops.md) diff --git a/docs/30_registry/resources/k8sZitiController.md b/docs/30_registry/resources/k8sZitiController.md deleted file mode 100644 index b6e4bdc..0000000 --- a/docs/30_registry/resources/k8sZitiController.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_k8sZitiController - -Service ID: `88` - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -## Example - -```hcl -resource "nubes_k8s_ziti_controller" "example" { - # required params ... - suspend_on_destroy = "state_only" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/k8sZitiController_ops.md b/docs/30_registry/resources/k8sZitiController_ops.md deleted file mode 100644 index ae0e9d7..0000000 --- a/docs/30_registry/resources/k8sZitiController_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8sZitiController - -Service ID: `88` - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) diff --git a/docs/30_registry/resources/k8sZitiController_params.md b/docs/30_registry/resources/k8sZitiController_params.md deleted file mode 100644 index ae0e9d7..0000000 --- a/docs/30_registry/resources/k8sZitiController_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8sZitiController - -Service ID: `88` - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) - -[Overview](k8sZitiController.md) | [Parameters](k8sZitiController_params.md) | [Operations](k8sZitiController_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster.md b/docs/30_registry/resources/k8s_sthutrval_cluster.md deleted file mode 100644 index b3b0523..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## MAN - -
-Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле -
diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_example.md b/docs/30_registry/resources/k8s_sthutrval_cluster_example.md deleted file mode 100644 index ae04139..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_example.md +++ /dev/null @@ -1,58 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Copy-ready manifest (`k8s_sthutrval_cluster_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_k8s_sthutrval_cluster" "baza" { - nsxt_uid = "TODO" # InstanceUid nsxt. Nsxt должен быть создан - control_plane_sizing_policy = "TODO" # Настройка Control Plane. CPU (шт) / MEM (gb). Наверное, должна подтягиваться из свойств ресурсной платформы - workers_sizing_policy = "TODO" # Настройка workers. CPU (шт) / MEM (gb) - vdc_uid = "TODO" - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - cluster_name = "example1" # Наименование кластера Kubernetes. Имя будет использоваться в fqdn (svc.$CLUSTER_NAME) - control_plane_sizing_disk = 30 # Настройка Control Plane. Disk (Gb) - control_plane_count = 1 - workers_sizing_disk = 40 # Настройка workers. Disk (Gb) - workers_count = 2 # Настройка workers. Кол-во нод - app_version = 2.12.1 # Версия Штурвал (не является версией Kubernetes) - need_external_address_a_p_i = true # Выделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить false - access_ip_list_a_p_i = [] # Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем - need_external_address_ingress = true # Выделяет внешний IP для доступа к Ingress - access_ip_list_ingress = [] # Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_k8s_sthutrval_cluster.baza.state_params["имя_ключа"] -nubes_k8s_sthutrval_cluster.baza.state_out["имя_ключа"] -nubes_k8s_sthutrval_cluster.baza.state_params_flat["имя_ключа"] -nubes_k8s_sthutrval_cluster.baza.state_out_flat["имя_ключа"] -nubes_k8s_sthutrval_cluster.baza.vault_secrets["имя_ключа"] -nubes_k8s_sthutrval_cluster.baza.vault_url -nubes_k8s_sthutrval_cluster.baza.vault_user_path -nubes_k8s_sthutrval_cluster.baza.vault_fields -``` diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_example_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_example_ops.md deleted file mode 100644 index 7248ce5..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_example.md) | [Parameters](k8s_sthutrval_cluster_example_params.md) | [Operations](k8s_sthutrval_cluster_example_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_example_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_example_params.md deleted file mode 100644 index 7248ce5..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_example.md) | [Parameters](k8s_sthutrval_cluster_example_params.md) | [Operations](k8s_sthutrval_cluster_example_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_man.md b/docs/30_registry/resources/k8s_sthutrval_cluster_man.md deleted file mode 100644 index ed1f482..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: k8s_sthutrval_cluster - -Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_ops.md deleted file mode 100644 index afb94fd..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](k8s_sthutrval_cluster_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](k8s_sthutrval_cluster_params_modify.md) -- `reconcile` -- `resume` -- `suspend` -- `update_secrets` diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs.md b/docs/30_registry/resources/k8s_sthutrval_cluster_outputs.md deleted file mode 100644 index 12bc8f4..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs.md +++ /dev/null @@ -1,44 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / naeel-wheel / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["access"]` -- `state_params["accessConfiguration"]` -- `state_params["workerConfiguration"]` -- `state_params["clusterConfiguration"]` -- `state_params["startupConfiguration"]` -- `state_params["controlPlaneConfiguration"]` - -### `state_out_flat` ключи - -- `state_out_flat["webUrl"]` -- `state_out_flat["ingressAddress"]` -- `state_out_flat["kubernetesApiAddress"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_ops.md deleted file mode 100644 index adbf90c..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_outputs.md) | [Parameters](k8s_sthutrval_cluster_outputs_params.md) | [Operations](k8s_sthutrval_cluster_outputs_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_params.md deleted file mode 100644 index adbf90c..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_outputs.md) | [Parameters](k8s_sthutrval_cluster_outputs_params.md) | [Operations](k8s_sthutrval_cluster_outputs_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params.md deleted file mode 100644 index 641f838..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Parameters - -- [Create params](k8s_sthutrval_cluster_params_create.md) -- [Modify params](k8s_sthutrval_cluster_params_modify.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_create.md deleted file mode 100644 index 6e21a3c..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create.md +++ /dev/null @@ -1,48 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
344nsxt_uiduuidInstanceUid nsxt. Nsxt должен быть созданref_svc_id=22
346control_plane_sizing_policystringНастройка Control Plane. CPU (шт) / MEM (gb).
Наверное, должна подтягиваться из свойств ресурсной платформы
349workers_sizing_policystringНастройка workers. CPU (шт) / MEM (gb)
747vdc_uiduuidref_svc_id=21
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
345cluster_namestringexample1Наименование кластера Kubernetes. Имя будет использоваться в fqdn (svc.$CLUSTER_NAME)regex=(?=^.{1,63}$)^[a-z0-9]([a-z0-9-]*[a-z0-9])?$; unique_scope=provider
347control_plane_sizing_diskinteger30Настройка Control Plane. Disk (Gb)minvalue=20; maxvalue=999
348control_plane_countinteger1minvalue=1; maxvalue=9
350workers_sizing_diskinteger40Настройка workers. Disk (Gb)minvalue=20; maxvalue=999
351workers_countinteger2Настройка workers. Кол-во нодminvalue=1; maxvalue=99
352app_versionstring2.12.1Версия Штурвал (не является версией Kubernetes)value_list=2.12.1, 2.11.0
353need_external_address_apibooleantrueВыделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить falsevalue_list=true
354access_ip_list_apijson[]Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем
355need_external_address_ingressbooleantrueВыделяет внешний IP для доступа к Ingressvalue_list=true
356access_ip_list_ingressjson[]Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_ops.md deleted file mode 100644 index 321247f..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_params_create.md) | [Parameters](k8s_sthutrval_cluster_params_create_params.md) | [Operations](k8s_sthutrval_cluster_params_create_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_params.md deleted file mode 100644 index 321247f..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_params_create.md) | [Parameters](k8s_sthutrval_cluster_params_create_params.md) | [Operations](k8s_sthutrval_cluster_params_create_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify.md deleted file mode 100644 index 21776a5..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -## Modify params - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
362control_plane_countintegerКол-во нод Control Planeminvalue=1; maxvalue=9
363workers_countintegerКол-во нод Workersminvalue=1; maxvalue=99
364access_ip_list_apijsonAccess IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем
365access_ip_list_ingressjsonAccess IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем
563app_versionstringВерсия Штурвал (не является версией Kubernetes)
Понижать версию нельзя
Обновиться на несколько минорных нельзя
Невозможно перепрыгнуть не с последней минорной на мажорную
Можно обновиться на несколько патчей
value_list=2.11.0, 2.12.1
637control_plane_sizing_diskinteger
638workers_sizing_diskinteger
diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_ops.md deleted file mode 100644 index e970fcf..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_params_modify.md) | [Parameters](k8s_sthutrval_cluster_params_modify_params.md) | [Operations](k8s_sthutrval_cluster_params_modify_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_params.md deleted file mode 100644 index e970fcf..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster - -Service ID: `150` - -Service Name: Kubernetes кластер Штурвал - -[Manual](k8s_sthutrval_cluster.md) | [Create params](k8s_sthutrval_cluster_params_create.md) | [Modify params](k8s_sthutrval_cluster_params_modify.md) | [Output params](k8s_sthutrval_cluster_outputs.md) | [Operations](k8s_sthutrval_cluster_ops.md) | [Example](k8s_sthutrval_cluster_example.md) - -[Overview](k8s_sthutrval_cluster_params_modify.md) | [Parameters](k8s_sthutrval_cluster_params_modify_params.md) | [Operations](k8s_sthutrval_cluster_params_modify_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile.md b/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile.md deleted file mode 100644 index e3eaa40..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_reconcile - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -## Example - -```hcl -resource "nubes_k8s_sthutrval_cluster_reconcile" "example" { - k8s_sthutrval_cluster_id = nubes_k8s_sthutrval_cluster.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_ops.md deleted file mode 100644 index d9327b0..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_reconcile - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_params.md deleted file mode 100644 index d9327b0..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_reconcile_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_reconcile - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) - -[Overview](k8s_sthutrval_cluster_reconcile.md) | [Parameters](k8s_sthutrval_cluster_reconcile_params.md) | [Operations](k8s_sthutrval_cluster_reconcile_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets.md b/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets.md deleted file mode 100644 index 5d73433..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_update_secrets - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -## Example - -```hcl -resource "nubes_k8s_sthutrval_cluster_update_secrets" "example" { - k8s_sthutrval_cluster_id = nubes_k8s_sthutrval_cluster.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_ops.md b/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_ops.md deleted file mode 100644 index 025a453..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_update_secrets - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) diff --git a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_params.md b/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_params.md deleted file mode 100644 index 025a453..0000000 --- a/docs/30_registry/resources/k8s_sthutrval_cluster_update_secrets_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_k8s_sthutrval_cluster_update_secrets - -Service: nubes_k8s_sthutrval_cluster - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) - -[Overview](k8s_sthutrval_cluster_update_secrets.md) | [Parameters](k8s_sthutrval_cluster_update_secrets_params.md) | [Operations](k8s_sthutrval_cluster_update_secrets_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller.md b/docs/30_registry/resources/k8s_ziti_controller.md deleted file mode 100644 index 5c8b8f3..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/k8s_ziti_controller_example.md b/docs/30_registry/resources/k8s_ziti_controller_example.md deleted file mode 100644 index a55d0ed..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Copy-ready manifest (`k8s_ziti_controller_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_k8s_ziti_controller" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 300 # Квота ядра пода (milicores) - resource_memory = 512 # Квота памяти пода (MBytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_k8s_ziti_controller.baza.state_params["имя_ключа"] -nubes_k8s_ziti_controller.baza.state_out["имя_ключа"] -nubes_k8s_ziti_controller.baza.state_params_flat["имя_ключа"] -nubes_k8s_ziti_controller.baza.state_out_flat["имя_ключа"] -nubes_k8s_ziti_controller.baza.vault_secrets["имя_ключа"] -nubes_k8s_ziti_controller.baza.vault_url -nubes_k8s_ziti_controller.baza.vault_user_path -nubes_k8s_ziti_controller.baza.vault_fields -``` diff --git a/docs/30_registry/resources/k8s_ziti_controller_example_ops.md b/docs/30_registry/resources/k8s_ziti_controller_example_ops.md deleted file mode 100644 index 5603e71..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_example.md) | [Parameters](k8s_ziti_controller_example_params.md) | [Operations](k8s_ziti_controller_example_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_example_params.md b/docs/30_registry/resources/k8s_ziti_controller_example_params.md deleted file mode 100644 index 5603e71..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_example.md) | [Parameters](k8s_ziti_controller_example_params.md) | [Operations](k8s_ziti_controller_example_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_man.md b/docs/30_registry/resources/k8s_ziti_controller_man.md deleted file mode 100644 index 600d40b..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: k8s_ziti_controller - -Manual not available. diff --git a/docs/30_registry/resources/k8s_ziti_controller_ops.md b/docs/30_registry/resources/k8s_ziti_controller_ops.md deleted file mode 100644 index 8da7234..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](k8s_ziti_controller_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/k8s_ziti_controller_outputs.md b/docs/30_registry/resources/k8s_ziti_controller_outputs.md deleted file mode 100644 index 6fc1fdd..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/k8s_ziti_controller_outputs_ops.md b/docs/30_registry/resources/k8s_ziti_controller_outputs_ops.md deleted file mode 100644 index a0da376..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_outputs.md) | [Parameters](k8s_ziti_controller_outputs_params.md) | [Operations](k8s_ziti_controller_outputs_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_outputs_params.md b/docs/30_registry/resources/k8s_ziti_controller_outputs_params.md deleted file mode 100644 index a0da376..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_outputs.md) | [Parameters](k8s_ziti_controller_outputs_params.md) | [Operations](k8s_ziti_controller_outputs_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_params.md b/docs/30_registry/resources/k8s_ziti_controller_params.md deleted file mode 100644 index 343d93e..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Parameters - -- [Create params](k8s_ziti_controller_params_create.md) -- [Modify params](k8s_ziti_controller_params_modify.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_create.md b/docs/30_registry/resources/k8s_ziti_controller_params_create.md deleted file mode 100644 index dac54da..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_create.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
298resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
294resource_cpuinteger300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
295resource_memoryinteger512Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
296resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
297resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
299domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_create_ops.md b/docs/30_registry/resources/k8s_ziti_controller_params_create_ops.md deleted file mode 100644 index 6f50993..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_params_create.md) | [Parameters](k8s_ziti_controller_params_create_params.md) | [Operations](k8s_ziti_controller_params_create_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_create_params.md b/docs/30_registry/resources/k8s_ziti_controller_params_create_params.md deleted file mode 100644 index 6f50993..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_params_create.md) | [Parameters](k8s_ziti_controller_params_create_params.md) | [Operations](k8s_ziti_controller_params_create_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_modify.md b/docs/30_registry/resources/k8s_ziti_controller_params_modify.md deleted file mode 100644 index 1998e6a..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_modify_ops.md b/docs/30_registry/resources/k8s_ziti_controller_params_modify_ops.md deleted file mode 100644 index dab9e2e..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_params_modify.md) | [Parameters](k8s_ziti_controller_params_modify_params.md) | [Operations](k8s_ziti_controller_params_modify_ops.md) diff --git a/docs/30_registry/resources/k8s_ziti_controller_params_modify_params.md b/docs/30_registry/resources/k8s_ziti_controller_params_modify_params.md deleted file mode 100644 index dab9e2e..0000000 --- a/docs/30_registry/resources/k8s_ziti_controller_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_k8s_ziti_controller - -Service ID: `88` - -Service Name: k8sZitiController - -[Manual](k8s_ziti_controller.md) | [Create params](k8s_ziti_controller_params_create.md) | [Modify params](k8s_ziti_controller_params_modify.md) | [Output params](k8s_ziti_controller_outputs.md) | [Operations](k8s_ziti_controller_ops.md) | [Example](k8s_ziti_controller_example.md) - -[Overview](k8s_ziti_controller_params_modify.md) | [Parameters](k8s_ziti_controller_params_modify_params.md) | [Operations](k8s_ziti_controller_params_modify_ops.md) diff --git a/docs/30_registry/resources/kafka.md b/docs/30_registry/resources/kafka.md deleted file mode 100644 index 1c4e5e5..0000000 --- a/docs/30_registry/resources/kafka.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## MAN - -
-# Инструкция по развертыванию Apache Kafka через платформу

---
## 1. Общая информация
Брокер сообщений Apache Kafka — это отказоустойчивая распределённая платформа для обмена сообщениями и потоковой обработки данных в реальном времени.
Позволяет надёжно передавать события между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние, так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.

## Доступные операции
- **create** — Создание кластера
- **delete** — Удаление кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя


---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: ` k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество узлов (брокеров) в кластере Kafka

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore ) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных в гигабайтах. Пример: `20`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`

---
## 4. Выходные параметры
После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.
Ключевым из них является:

**internalConnect**
Это внутренний эндпоинт, который используется для подключения к кластеру Kafka из других сервисов, развернутых внутри той же сети.
Эндпоинт предоставляет доступ к брокерам Kafka по внутренним портам, указанным в конфигурации слушателей.

**externalConnect**
Это внешний эндпоинт (fqdn), который используется для подключения к кластеру Kafka. Для подключения используеться 9093 порт.

Для подключения используются следующие порты:

* 9092 — внутренний нешифрованный доступ (plain).
* 9093 — внутренний и внешний доступ по TLS, с обязательной TLS-аутентификацией.

---
## 5. Дополнительная информация
Для создания топиков, пользователей и управления ими, а также для интеграции с кластерами Kafka используйте соответствующие сервисы и раздел "Облачные сервисы".
--- -
diff --git a/docs/30_registry/resources/kafka_example.md b/docs/30_registry/resources/kafka_example.md deleted file mode 100644 index 69688ff..0000000 --- a/docs/30_registry/resources/kafka_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Copy-ready manifest (`kafka_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_kafka" "baza" { - resource_instances = 1 # Пример: `2` - resource_memory = 1 # Пример: `2048` - resource_c_p_u = 1 # Пример: `2000` - resource_disk = 1 # Пример: `20` - resource_realm = "TODO" # Выбрать платформу из списка - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - need_external_address_master = false # Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_kafka.baza.state_params["имя_ключа"] -nubes_kafka.baza.state_out["имя_ключа"] -nubes_kafka.baza.state_params_flat["имя_ключа"] -nubes_kafka.baza.state_out_flat["имя_ключа"] -nubes_kafka.baza.vault_secrets["имя_ключа"] -nubes_kafka.baza.vault_url -nubes_kafka.baza.vault_user_path -nubes_kafka.baza.vault_fields -``` diff --git a/docs/30_registry/resources/kafka_example_ops.md b/docs/30_registry/resources/kafka_example_ops.md deleted file mode 100644 index a6189a2..0000000 --- a/docs/30_registry/resources/kafka_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_example.md) | [Parameters](kafka_example_params.md) | [Operations](kafka_example_ops.md) diff --git a/docs/30_registry/resources/kafka_example_params.md b/docs/30_registry/resources/kafka_example_params.md deleted file mode 100644 index a6189a2..0000000 --- a/docs/30_registry/resources/kafka_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_example.md) | [Parameters](kafka_example_params.md) | [Operations](kafka_example_ops.md) diff --git a/docs/30_registry/resources/kafka_instruction.md b/docs/30_registry/resources/kafka_instruction.md deleted file mode 100644 index e5ea440..0000000 --- a/docs/30_registry/resources/kafka_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для kafka - -# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.
**modify** — Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).
**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.
**resume** — Разморозка организации, восстановление функций управления.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создана организация.
Пример значения: `ngcloud.ru`.

### Тип организации
Описание: тип создаваемой организации.
Варианты:
- `iaas` — организация с прямым доступом к облаку и авторизацией через Keycloak.
- `saas` — организация под управлением Nubes, без прямого доступа к облаку.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.

### Промышленное окружение
- Тип организации: `saas` (упрощённая модель использования).

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Идентификатор организации
Уникальный идентификатор созданной организации. Используется для всех дальнейших API-операций.

### Статус организации
Отражает текущее состояние: active, suspended, modifying, deleting.

### Параметры сети
Выходные данные при наличии ipSpaces: список выделенных внешних IP, имя ip_space, количество IP.

---

## 5. Дополнительная информация

- Для конфигурации внешних IP внутри организации необходимо предварительно создать:
-- хотя бы один **Виртуальный датацентр (VDC)**;
-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к этой организации.
- Удаление организации возможно только через 14 дней после перевода в состояние suspend.
- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок и иных объектов.
- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.
- Для iaas-организаций доступ осуществляется через Keycloak.

diff --git a/docs/30_registry/resources/kafka_man.md b/docs/30_registry/resources/kafka_man.md deleted file mode 100644 index 8e9c9e6..0000000 --- a/docs/30_registry/resources/kafka_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: kafka - -# Инструкция по развертыванию Apache Kafka через платформу

---
## 1. Общая информация
Брокер сообщений Apache Kafka — это отказоустойчивая распределённая платформа для обмена сообщениями и потоковой обработки данных в реальном времени.
Позволяет надёжно передавать события между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние, так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.

## Доступные операции
- **create** — Создание кластера
- **delete** — Удаление кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя


---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: ` k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество узлов (брокеров) в кластере Kafka

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore ) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных в гигабайтах. Пример: `20`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`

---
## 4. Выходные параметры
После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.
Ключевым из них является:

**internalConnect**
Это внутренний эндпоинт, который используется для подключения к кластеру Kafka из других сервисов, развернутых внутри той же сети.
Эндпоинт предоставляет доступ к брокерам Kafka по внутренним портам, указанным в конфигурации слушателей.

**externalConnect**
Это внешний эндпоинт (fqdn), который используется для подключения к кластеру Kafka. Для подключения используеться 9093 порт.

Для подключения используются следующие порты:

* 9092 — внутренний нешифрованный доступ (plain).
* 9093 — внутренний и внешний доступ по TLS, с обязательной TLS-аутентификацией.

---
## 5. Дополнительная информация
Для создания топиков, пользователей и управления ими, а также для интеграции с кластерами Kafka используйте соответствующие сервисы и раздел "Облачные сервисы".
--- diff --git a/docs/30_registry/resources/kafka_ops.md b/docs/30_registry/resources/kafka_ops.md deleted file mode 100644 index c0c6627..0000000 --- a/docs/30_registry/resources/kafka_ops.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](kafka_params_create.md) -- `create_topic` — Создание кластера. Параметры: [Create params](kafka_params_create.md) -- `create_user` — Создание кластера. Параметры: [Create params](kafka_params_create.md) -- `delete` -- `delete_topic` — . См. [nubes_kafka_topic](kafka_topic.md) -- `delete_user` — # Инструкция по управлению пользователями Apache Kafka. --- ## 1. Общая информация Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру. Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам. Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka. --- ## Доступные операции - **create_user** — Создание пользователя - **modify_user** — Модификация пользователя - **delete_user** — Удаление пользователя --- ## 2. Параметры создания пользователя Ниже перечислены параметры, которые необходимо указать при создании нового пользователя: * **Имя пользователя** Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав. Пример: `username-admin` * **Топик** Название топика, к которому будут назначены права для данного пользователя. Пример: `orders-events`. Использовать маску нельзя (`orders*`), только полное название или `*`. * **Операции** Список разрешённых операций на указанном топике. Пример: `Describe, Read, Write` * **Группа** Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп. Пример: `order-consumers`. * **Разрешённые хосты** Список хостов или подсетей, с которых разрешено подключение пользователя. Пример: `192.168.1.0/24` или `*`. --- ## 3. Параметры модификации пользователя Ниже перечислены параметры, которые необходимо указать при модификации пользователя: * **Имя пользователя** Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав. Пример: `username-admin` * **Топик** Название топика, к которому будут назначены права для данного пользователя. Пример: `orders-events`. Использовать маску нельзя (`orders*`), только полное название или `*`. * **Операции** Список разрешённых операций на указанном топике. Пример: `Describe, Read, Write` * **Группа** Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп. Пример: `order-consumers`. * **Разрешённые хосты** Список хостов или подсетей, с которых разрешено подключение пользователя. Пример: `192.168.1.0/24` или `*`. --- ## 4. Параметры удалении пользователя Ниже перечислены параметры, которые необходимо указать при удалении пользователя: * **Имя пользователя** Имя удаляемого пользователя. Пример: `username-admin` ## 5. Выходные параметры После успешного создания пользователя платформа возвращает параметры, необходимые для подключения: * **ca.crt** Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении. Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду ```bash echo '<содержание поля>' | base64 -d > <название>.crt ``` * **ca.p12** PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении. Выдаеться в формате base64 для получения файла сертификата использовать команду ```bash echo '<содержание поля>' | base64 -d > <название>.p12 ``` * **ca.password** Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно. * **user.crt** Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka. Используется совместно с приватным ключом `user.key` для аутентификации. Выдаеться в формате base64 для получения файла сертификата использовать команду ```bash echo '<содержание поля>' | base64 -d > <название>.crt ``` * **user.key** Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности. Выдаеться в формате base64 для получения файла сертификата использовать команду ```bash echo '<содержание поля>' | base64 -d > <название>.key ``` * **user.p12** PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka. Выдаеться в формате base64 для получения файла сертификата использовать команду ```bash echo "<содержание поля>" | base64 -d > <название>.p12 ``` * **user.password** Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно. Эти параметры используются для настройки TLS-подключения. --- ## 6. Пример конфигурации клиента внутри кластера Пример пода: ```yaml apiVersion: v1 kind: Pod metadata: name: kafka-4 spec: volumes: - name: work emptyDir: {} containers: - name: kcat image: quay.io/strimzi/kafka:latest-kafka-4.0.0 command: ["sleep", "5600"] volumeMounts: - name: work mountPath: /work restartPolicy: Never ``` Создаём под и сохраняем сертификаты: ```bash kubectl cp user.p12 kafka-4:/work/ kubectl cp ca.p12 kafka-4:/work/ ``` Создаём файлы конфигурации: ```bash cat > /work/user-read.properties <<'EOF' security.protocol=SSL ssl.keystore.type=PKCS12 ssl.keystore.location=/work/user.p12 ssl.keystore.password= ssl.truststore.type=PKCS12 ssl.truststore.location=/work/ca.p12 ssl.truststore.password= EOF ``` ```bash cat > /work/user-write.properties <<'EOF' security.protocol=SSL ssl.keystore.type=PKCS12 ssl.keystore.location=/work/user-write.p12 ssl.keystore.password= ssl.truststore.type=PKCS12 ssl.truststore.location=/work/ca.p12 ssl.truststore.password= EOF ``` Листинг доступных топиков: ```bash /opt/kafka/bin/kafka-topics.sh \ --bootstrap-server kafkak8s-bootstrap-external:9093 \ --command-config /work/user-read.properties \ --list ``` Запись сообщений: ```bash /opt/kafka/bin/kafka-console-producer.sh \ --bootstrap-server <адрес сервис брокера>:9093 \ --topic \ --producer.config /work/user-write.properties ``` Чтение сообщений: ```bash /opt/kafka/bin/kafka-console-consumer.sh \ --bootstrap-server <адрес сервис брокера>:9093 \ --topic \ --from-beginning \ --group \ --consumer.config /work/user-read.properties \ --max-messages 50 ``` --- ## 7. Пример внешнего подключения с использованием **kcat** **Листинг топиков** ```bash kcat -b :9093 \ -L \ -X security.protocol=SSL \ -X ssl.ca.location=./ca.crt \ -X ssl.certificate.location=./user-read.crt \ -X ssl.key.location=./user-read.key \ -X ssl.endpoint.identification.algorithm=none ``` **Запись сообщения** ```bash echo "hello from kcat" | kcat -P \ -b :9093 \ -t write-test \ -X security.protocol=SSL \ -X ssl.ca.location=./ca.crt \ -X ssl.certificate.location=./user-write.crt \ -X ssl.key.location=./user-write.key \ -X ssl.endpoint.identification.algorithm=none ``` **Чтение сообщений** ```bash kcat -C \ -b :9093 \ -t write-test \ -o beginning \ -q \ -X security.protocol=SSL \ -X ssl.ca.location=./ca.crt \ -X ssl.certificate.location=./user-read.crt \ -X ssl.key.location=./user-read.key \ -X ssl.endpoint.identification.algorithm=none ``` --- ## 9. Рекомендации * Минимизируйте набор разрешённых операций для повышения безопасности. * Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов. * Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**. * После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам. ---. См. [nubes_kafka_user](kafka_user.md) -- `modify` — Изменение кластера. Параметры: [Modify params](kafka_params_modify.md) -- `modify_topic` — Изменение кластера. Параметры: [Modify params](kafka_params_modify.md) -- `modify_user` — Изменение кластера. Параметры: [Modify params](kafka_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/kafka_outputs.md b/docs/30_registry/resources/kafka_outputs.md deleted file mode 100644 index 3d26659..0000000 --- a/docs/30_registry/resources/kafka_outputs.md +++ /dev/null @@ -1,49 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (prod / tf-kafka-20260203-01 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["ipSpaceNameMaster"]` -- `state_params["resourceInstances"]` -- `state_params["needExternalAddressMaster"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["externalConnect"]` -- `state_out_flat["externalConnect.bootstrap"]` -- `state_out_flat["externalConnect.bootstrap.ip"]` -- `state_out_flat["externalConnect.bootstrap.fqdn"]` -- `state_out_flat["externalConnect.bootstrap.uuid"]` -- `state_out_flat["externalConnect.bootstrap.isExternal"]` -- `state_out_flat["internalConnect"]` diff --git a/docs/30_registry/resources/kafka_outputs_ops.md b/docs/30_registry/resources/kafka_outputs_ops.md deleted file mode 100644 index d711f9d..0000000 --- a/docs/30_registry/resources/kafka_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_outputs.md) | [Parameters](kafka_outputs_params.md) | [Operations](kafka_outputs_ops.md) diff --git a/docs/30_registry/resources/kafka_outputs_params.md b/docs/30_registry/resources/kafka_outputs_params.md deleted file mode 100644 index d711f9d..0000000 --- a/docs/30_registry/resources/kafka_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_outputs.md) | [Parameters](kafka_outputs_params.md) | [Operations](kafka_outputs_ops.md) diff --git a/docs/30_registry/resources/kafka_params.md b/docs/30_registry/resources/kafka_params.md deleted file mode 100644 index 25cb573..0000000 --- a/docs/30_registry/resources/kafka_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Parameters - -- [Create params](kafka_params_create.md) -- [Modify params](kafka_params_modify.md) diff --git a/docs/30_registry/resources/kafka_params_create.md b/docs/30_registry/resources/kafka_params_create.md deleted file mode 100644 index 1a43a4e..0000000 --- a/docs/30_registry/resources/kafka_params_create.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
461resource_instancesintegerПример: `2`minvalue=1; value_list=1, 2, 3, 4, 5
462resource_memoryintegerПример: `2048`minvalue=1000
463resource_cpuintegerПример: `2000`minvalue=1000
464resource_diskintegerПример: `20`
466ip_space_name_masterstringЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
469resource_realmstringВыбрать платформу из спискаfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - -
IDCodeTypeDefaultDescriptionConstraints
465need_external_address_masterbooleanfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/kafka_params_create_ops.md b/docs/30_registry/resources/kafka_params_create_ops.md deleted file mode 100644 index d321ec7..0000000 --- a/docs/30_registry/resources/kafka_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_params_create.md) | [Parameters](kafka_params_create_params.md) | [Operations](kafka_params_create_ops.md) diff --git a/docs/30_registry/resources/kafka_params_create_params.md b/docs/30_registry/resources/kafka_params_create_params.md deleted file mode 100644 index d321ec7..0000000 --- a/docs/30_registry/resources/kafka_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_params_create.md) | [Parameters](kafka_params_create_params.md) | [Operations](kafka_params_create_ops.md) diff --git a/docs/30_registry/resources/kafka_params_modify.md b/docs/30_registry/resources/kafka_params_modify.md deleted file mode 100644 index e6ff431..0000000 --- a/docs/30_registry/resources/kafka_params_modify.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -## Modify params - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
501resource_instancesintegerПример: `2`value_list=1, 2, 3, 4, 5
502resource_memoryintegerПример: `2048`minvalue=1000
503resource_cpuПример: `2000`minvalue=1000
504resource_diskintegerПример: `20`
505need_external_address_masterbooleanФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
506ip_space_name_masterstringЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
diff --git a/docs/30_registry/resources/kafka_params_modify_ops.md b/docs/30_registry/resources/kafka_params_modify_ops.md deleted file mode 100644 index f836567..0000000 --- a/docs/30_registry/resources/kafka_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_params_modify.md) | [Parameters](kafka_params_modify_params.md) | [Operations](kafka_params_modify_ops.md) diff --git a/docs/30_registry/resources/kafka_params_modify_params.md b/docs/30_registry/resources/kafka_params_modify_params.md deleted file mode 100644 index f836567..0000000 --- a/docs/30_registry/resources/kafka_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_kafka - -Service ID: `116` - -Service Name: ApacheKafka - -[Manual](kafka.md) | [Create params](kafka_params_create.md) | [Modify params](kafka_params_modify.md) | [Output params](kafka_outputs.md) | [Operations](kafka_ops.md) | [Example](kafka_example.md) - -[Overview](kafka_params_modify.md) | [Parameters](kafka_params_modify_params.md) | [Operations](kafka_params_modify_ops.md) diff --git a/docs/30_registry/resources/kafka_topic.md b/docs/30_registry/resources/kafka_topic.md deleted file mode 100644 index c47a0e5..0000000 --- a/docs/30_registry/resources/kafka_topic.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_kafka_topic - -Service: nubes_kafka - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -## Example - -```hcl -resource "nubes_kafka_topic" "example" { - kafka_id = nubes_kafka.example.id - name_topic = "TODO" - partitions = 1 - replicas = 1 -} -``` diff --git a/docs/30_registry/resources/kafka_topic_ops.md b/docs/30_registry/resources/kafka_topic_ops.md deleted file mode 100644 index afd061f..0000000 --- a/docs/30_registry/resources/kafka_topic_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_kafka_topic - -Service: nubes_kafka - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) diff --git a/docs/30_registry/resources/kafka_topic_params.md b/docs/30_registry/resources/kafka_topic_params.md deleted file mode 100644 index afd061f..0000000 --- a/docs/30_registry/resources/kafka_topic_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_kafka_topic - -Service: nubes_kafka - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) - -[Overview](kafka_topic.md) | [Parameters](kafka_topic_params.md) | [Operations](kafka_topic_ops.md) diff --git a/docs/30_registry/resources/kafka_user.md b/docs/30_registry/resources/kafka_user.md deleted file mode 100644 index 6595600..0000000 --- a/docs/30_registry/resources/kafka_user.md +++ /dev/null @@ -1,30 +0,0 @@ -# Resource nubes_kafka_user - -Service: nubes_kafka - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -## Example - -```hcl -resource "nubes_kafka_user" "example" { - kafka_id = nubes_kafka.example.id - username = "TODO" - name_topic = "TODO" - operations = "TODO" - group = "TODO" - access_hosts = "TODO" -} -``` diff --git a/docs/30_registry/resources/kafka_user_ops.md b/docs/30_registry/resources/kafka_user_ops.md deleted file mode 100644 index f04a44b..0000000 --- a/docs/30_registry/resources/kafka_user_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_kafka_user - -Service: nubes_kafka - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) diff --git a/docs/30_registry/resources/kafka_user_params.md b/docs/30_registry/resources/kafka_user_params.md deleted file mode 100644 index f04a44b..0000000 --- a/docs/30_registry/resources/kafka_user_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_kafka_user - -Service: nubes_kafka - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) - -[Overview](kafka_user.md) | [Parameters](kafka_user_params.md) | [Operations](kafka_user_ops.md) diff --git a/docs/30_registry/resources/lucee.md b/docs/30_registry/resources/lucee.md deleted file mode 100644 index ca3542d..0000000 --- a/docs/30_registry/resources/lucee.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/lucee_example.md b/docs/30_registry/resources/lucee_example.md deleted file mode 100644 index fcd5b5f..0000000 --- a/docs/30_registry/resources/lucee_example.md +++ /dev/null @@ -1,52 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Copy-ready manifest (`lucee_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_lucee" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - git_path = "https://github.com/xahys/testlucee" # Путь до Git, который будет webroot для сайта - json_env = { "param": "value" } # Здесь вы можете задать переменные среды в формате KEY=VALUE. Они будут доступны внутри вашего приложения. - resource_c_p_u = 300 # Квота ядра пода (milicores) - resource_memory = 512 # Квота памяти пода (MBytes) - resource_instances = 1 # Количество узлов - app_version = 5.4 # Версия Lucee -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_lucee.baza.state_params["имя_ключа"] -nubes_lucee.baza.state_out["имя_ключа"] -nubes_lucee.baza.state_params_flat["имя_ключа"] -nubes_lucee.baza.state_out_flat["имя_ключа"] -nubes_lucee.baza.vault_secrets["имя_ключа"] -nubes_lucee.baza.vault_url -nubes_lucee.baza.vault_user_path -nubes_lucee.baza.vault_fields -``` diff --git a/docs/30_registry/resources/lucee_example_ops.md b/docs/30_registry/resources/lucee_example_ops.md deleted file mode 100644 index 70e0537..0000000 --- a/docs/30_registry/resources/lucee_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_example.md) | [Parameters](lucee_example_params.md) | [Operations](lucee_example_ops.md) diff --git a/docs/30_registry/resources/lucee_example_params.md b/docs/30_registry/resources/lucee_example_params.md deleted file mode 100644 index 70e0537..0000000 --- a/docs/30_registry/resources/lucee_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_example.md) | [Parameters](lucee_example_params.md) | [Operations](lucee_example_ops.md) diff --git a/docs/30_registry/resources/lucee_instruction.md b/docs/30_registry/resources/lucee_instruction.md deleted file mode 100644 index 057ecca..0000000 --- a/docs/30_registry/resources/lucee_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для lucee - -_Пока не заполнено. Инструкция будет добавлена разработчиками облака._ diff --git a/docs/30_registry/resources/lucee_man.md b/docs/30_registry/resources/lucee_man.md deleted file mode 100644 index f5719bd..0000000 --- a/docs/30_registry/resources/lucee_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: lucee - -Manual not available. diff --git a/docs/30_registry/resources/lucee_ops.md b/docs/30_registry/resources/lucee_ops.md deleted file mode 100644 index 3294ee8..0000000 --- a/docs/30_registry/resources/lucee_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](lucee_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](lucee_params_modify.md) -- `redeploy` -- `restart` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/lucee_outputs.md b/docs/30_registry/resources/lucee_outputs.md deleted file mode 100644 index 9b6e331..0000000 --- a/docs/30_registry/resources/lucee_outputs.md +++ /dev/null @@ -1,47 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / lucy_teststand_0 / suspended) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["gitPath"]` -- `state_params["jsonEnv"]` -- `state_params["appVersion"]` -- `state_params["healthPath"]` -- `state_params["resourceCPU"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/lucee_outputs_ops.md b/docs/30_registry/resources/lucee_outputs_ops.md deleted file mode 100644 index ec727b8..0000000 --- a/docs/30_registry/resources/lucee_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_outputs.md) | [Parameters](lucee_outputs_params.md) | [Operations](lucee_outputs_ops.md) diff --git a/docs/30_registry/resources/lucee_outputs_params.md b/docs/30_registry/resources/lucee_outputs_params.md deleted file mode 100644 index ec727b8..0000000 --- a/docs/30_registry/resources/lucee_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_outputs.md) | [Parameters](lucee_outputs_params.md) | [Operations](lucee_outputs_ops.md) diff --git a/docs/30_registry/resources/lucee_params.md b/docs/30_registry/resources/lucee_params.md deleted file mode 100644 index 730e3b2..0000000 --- a/docs/30_registry/resources/lucee_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Parameters - -- [Create params](lucee_params_create.md) -- [Modify params](lucee_params_modify.md) diff --git a/docs/30_registry/resources/lucee_params_create.md b/docs/30_registry/resources/lucee_params_create.md deleted file mode 100644 index f63e87a..0000000 --- a/docs/30_registry/resources/lucee_params_create.md +++ /dev/null @@ -1,43 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
108resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
132health_pathstringПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
103domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
104git_pathstringhttps://github.com/xahys/testluceeПуть до Git, который будет webroot для сайта
105json_envjson{ "param": "value" }Здесь вы можете задать переменные среды в формате KEY=VALUE. Они будут доступны внутри вашего приложения.maxlength=2048
106resource_cpuinteger300Квота ядра пода (milicores)minvalue=100; maxvalue=4000
107resource_memoryinteger512Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
139resource_instancesinteger1Количество узлов в сетиminvalue=1; maxvalue=7
263app_versionstring5.4Версия Luceeregex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/lucee_params_create_ops.md b/docs/30_registry/resources/lucee_params_create_ops.md deleted file mode 100644 index adb0cd4..0000000 --- a/docs/30_registry/resources/lucee_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_params_create.md) | [Parameters](lucee_params_create_params.md) | [Operations](lucee_params_create_ops.md) diff --git a/docs/30_registry/resources/lucee_params_create_params.md b/docs/30_registry/resources/lucee_params_create_params.md deleted file mode 100644 index adb0cd4..0000000 --- a/docs/30_registry/resources/lucee_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_params_create.md) | [Parameters](lucee_params_create_params.md) | [Operations](lucee_params_create_ops.md) diff --git a/docs/30_registry/resources/lucee_params_modify.md b/docs/30_registry/resources/lucee_params_modify.md deleted file mode 100644 index 087ab68..0000000 --- a/docs/30_registry/resources/lucee_params_modify.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -## Modify params - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
133git_pathstringПуть до Git, который будет webroot для сайта
134health_pathstringПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код.
135json_envjsonМассив переменных, будут переданы в env приложенияmaxlength=2048
136resource_cpuintegerКвота ядра пода (Указывается в mili)minvalue=100; maxvalue=4000
137resource_memoryintegerКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
138resource_instancesintegerКоличество узлов в сетиminvalue=1; maxvalue=7
264app_versionstringregex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0
diff --git a/docs/30_registry/resources/lucee_params_modify_ops.md b/docs/30_registry/resources/lucee_params_modify_ops.md deleted file mode 100644 index 9d2d33b..0000000 --- a/docs/30_registry/resources/lucee_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_params_modify.md) | [Parameters](lucee_params_modify_params.md) | [Operations](lucee_params_modify_ops.md) diff --git a/docs/30_registry/resources/lucee_params_modify_params.md b/docs/30_registry/resources/lucee_params_modify_params.md deleted file mode 100644 index 9d2d33b..0000000 --- a/docs/30_registry/resources/lucee_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_lucee - -Service ID: `94` - -Service Name: Lucee - -[Manual](lucee.md) | [Create params](lucee_params_create.md) | [Modify params](lucee_params_modify.md) | [Output params](lucee_outputs.md) | [Operations](lucee_ops.md) | [Example](lucee_example.md) - -[Overview](lucee_params_modify.md) | [Parameters](lucee_params_modify_params.md) | [Operations](lucee_params_modify_ops.md) diff --git a/docs/30_registry/resources/lucee_redeploy.md b/docs/30_registry/resources/lucee_redeploy.md deleted file mode 100644 index 042089a..0000000 --- a/docs/30_registry/resources/lucee_redeploy.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_lucee_redeploy - -Service: nubes_lucee - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_lucee_redeploy" "example" { - lucee_id = nubes_lucee.example.id - run_id = "change-me" - resource_realm = "TODO" -} -``` diff --git a/docs/30_registry/resources/lucee_redeploy_ops.md b/docs/30_registry/resources/lucee_redeploy_ops.md deleted file mode 100644 index 38d0c2d..0000000 --- a/docs/30_registry/resources/lucee_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_lucee_redeploy - -Service: nubes_lucee - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) diff --git a/docs/30_registry/resources/lucee_redeploy_params.md b/docs/30_registry/resources/lucee_redeploy_params.md deleted file mode 100644 index 38d0c2d..0000000 --- a/docs/30_registry/resources/lucee_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_lucee_redeploy - -Service: nubes_lucee - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) - -[Overview](lucee_redeploy.md) | [Parameters](lucee_redeploy_params.md) | [Operations](lucee_redeploy_ops.md) diff --git a/docs/30_registry/resources/lucee_restart.md b/docs/30_registry/resources/lucee_restart.md deleted file mode 100644 index 748a338..0000000 --- a/docs/30_registry/resources/lucee_restart.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_lucee_restart - -Service: nubes_lucee - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -## Example - -```hcl -resource "nubes_lucee_restart" "example" { - lucee_id = nubes_lucee.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/lucee_restart_ops.md b/docs/30_registry/resources/lucee_restart_ops.md deleted file mode 100644 index 54478be..0000000 --- a/docs/30_registry/resources/lucee_restart_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_lucee_restart - -Service: nubes_lucee - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) diff --git a/docs/30_registry/resources/lucee_restart_params.md b/docs/30_registry/resources/lucee_restart_params.md deleted file mode 100644 index 54478be..0000000 --- a/docs/30_registry/resources/lucee_restart_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_lucee_restart - -Service: nubes_lucee - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) - -[Overview](lucee_restart.md) | [Parameters](lucee_restart_params.md) | [Operations](lucee_restart_ops.md) diff --git a/docs/30_registry/resources/mariadb.md b/docs/30_registry/resources/mariadb.md deleted file mode 100644 index 9161094..0000000 --- a/docs/30_registry/resources/mariadb.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## MAN - -
-Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. -
diff --git a/docs/30_registry/resources/mariadb_example.md b/docs/30_registry/resources/mariadb_example.md deleted file mode 100644 index 8c1437c..0000000 --- a/docs/30_registry/resources/mariadb_example.md +++ /dev/null @@ -1,57 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Copy-ready manifest (`mariadb_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_mariadb" "baza" { - resource_realm = "TODO" # Платформа для развертывания - s3_uid = "235e0546-..." # Экземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательно - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 500 # Квота ядра пода (milicores) - resource_memory = 1024 # Квота памяти пода (MBytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов - need_external_address_master = false # Выделяет внешний (белый) IP для доступа к master - ext__b_a_c_k_u_p__s_c_h_e_d_u_l_e = "0 * * * *" # Не обязательный. Время запуска бекапа - app_version = 9.4.0 # Версия MySQL - auto_scale = false # Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги - auto_scale_percentage = 10 # Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема - auto_scale_tech_window = 0 # Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23) - auto_scale_quota_gb = 1 # Квота для autoScale -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_mariadb.baza.state_params["имя_ключа"] -nubes_mariadb.baza.state_out["имя_ключа"] -nubes_mariadb.baza.state_params_flat["имя_ключа"] -nubes_mariadb.baza.state_out_flat["имя_ключа"] -nubes_mariadb.baza.vault_secrets["имя_ключа"] -nubes_mariadb.baza.vault_url -nubes_mariadb.baza.vault_user_path -nubes_mariadb.baza.vault_fields -``` diff --git a/docs/30_registry/resources/mariadb_example_ops.md b/docs/30_registry/resources/mariadb_example_ops.md deleted file mode 100644 index ab4fbef..0000000 --- a/docs/30_registry/resources/mariadb_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_example.md) | [Parameters](mariadb_example_params.md) | [Operations](mariadb_example_ops.md) diff --git a/docs/30_registry/resources/mariadb_example_params.md b/docs/30_registry/resources/mariadb_example_params.md deleted file mode 100644 index ab4fbef..0000000 --- a/docs/30_registry/resources/mariadb_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_example.md) | [Parameters](mariadb_example_params.md) | [Operations](mariadb_example_ops.md) diff --git a/docs/30_registry/resources/mariadb_instruction.md b/docs/30_registry/resources/mariadb_instruction.md deleted file mode 100644 index 73c4cc5..0000000 --- a/docs/30_registry/resources/mariadb_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для mariadb - -Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. diff --git a/docs/30_registry/resources/mariadb_man.md b/docs/30_registry/resources/mariadb_man.md deleted file mode 100644 index 98efa99..0000000 --- a/docs/30_registry/resources/mariadb_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: mariadb - -Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. diff --git a/docs/30_registry/resources/mariadb_ops.md b/docs/30_registry/resources/mariadb_ops.md deleted file mode 100644 index 32042ca..0000000 --- a/docs/30_registry/resources/mariadb_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](mariadb_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](mariadb_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/mariadb_outputs.md b/docs/30_registry/resources/mariadb_outputs.md deleted file mode 100644 index 38f0606..0000000 --- a/docs/30_registry/resources/mariadb_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/mariadb_outputs_ops.md b/docs/30_registry/resources/mariadb_outputs_ops.md deleted file mode 100644 index 1c65fb5..0000000 --- a/docs/30_registry/resources/mariadb_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_outputs.md) | [Parameters](mariadb_outputs_params.md) | [Operations](mariadb_outputs_ops.md) diff --git a/docs/30_registry/resources/mariadb_outputs_params.md b/docs/30_registry/resources/mariadb_outputs_params.md deleted file mode 100644 index 1c65fb5..0000000 --- a/docs/30_registry/resources/mariadb_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_outputs.md) | [Parameters](mariadb_outputs_params.md) | [Operations](mariadb_outputs_ops.md) diff --git a/docs/30_registry/resources/mariadb_params.md b/docs/30_registry/resources/mariadb_params.md deleted file mode 100644 index 1d0477b..0000000 --- a/docs/30_registry/resources/mariadb_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Parameters - -- [Create params](mariadb_params_create.md) -- [Modify params](mariadb_params_modify.md) diff --git a/docs/30_registry/resources/mariadb_params_create.md b/docs/30_registry/resources/mariadb_params_create.md deleted file mode 100644 index 4f6f74c..0000000 --- a/docs/30_registry/resources/mariadb_params_create.md +++ /dev/null @@ -1,48 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
422resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
429ip_space_name_masterstringИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster
459s3_uiduuidЭкземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательноref_svc_id=12
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
424resource_cpuinteger500Квота ядра пода (milicores)minvalue=500; maxvalue=4000
425resource_memoryinteger1024Квота памяти пода (MBytes)minvalue=1024; maxvalue=8192
426resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
427resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
428need_external_address_masterbooleanfalseВыделяет внешний (белый) IP для доступа к mastervalue_list=false, true
430ext_backup_schedulestring0 * * * *Не обязательный. Время запуска бекапаregex=^(\*|(\d+|\*\/\d+|\d+(,\d+)*))\s\*\s\*\s\*\s\*$
431app_versionstring9.4.0Версия MySQLvalue_list=8.4.0, 9.4.0
432auto_scalebooleanfalseВключает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услугиvalue_list=false, true
433auto_scale_percentageinteger10Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объемаvalue_list=10, 15, 20
434auto_scale_tech_windowinteger0Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23)value_list=0, 5, 12, 23
435auto_scale_quota_gbinteger1Квота для autoScale
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/mariadb_params_create_ops.md b/docs/30_registry/resources/mariadb_params_create_ops.md deleted file mode 100644 index 83a4fa4..0000000 --- a/docs/30_registry/resources/mariadb_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_params_create.md) | [Parameters](mariadb_params_create_params.md) | [Operations](mariadb_params_create_ops.md) diff --git a/docs/30_registry/resources/mariadb_params_create_params.md b/docs/30_registry/resources/mariadb_params_create_params.md deleted file mode 100644 index 83a4fa4..0000000 --- a/docs/30_registry/resources/mariadb_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_params_create.md) | [Parameters](mariadb_params_create_params.md) | [Operations](mariadb_params_create_ops.md) diff --git a/docs/30_registry/resources/mariadb_params_modify.md b/docs/30_registry/resources/mariadb_params_modify.md deleted file mode 100644 index c17f0d8..0000000 --- a/docs/30_registry/resources/mariadb_params_modify.md +++ /dev/null @@ -1,25 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -## Modify params - - - - - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
436resource_cpuinteger
437resource_memoryinteger
438resource_instancesinteger
439resource_diskinteger
440need_external_address_masterbooleanvalue_list=false, true
441ip_space_name_master
442ext_backup_schedulestring
443auto_scalebooleanvalue_list=false, true
444auto_scale_percentageinteger
445auto_scale_tech_windowinteger
446auto_scale_quota_gbinteger
diff --git a/docs/30_registry/resources/mariadb_params_modify_ops.md b/docs/30_registry/resources/mariadb_params_modify_ops.md deleted file mode 100644 index 09f9a12..0000000 --- a/docs/30_registry/resources/mariadb_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_params_modify.md) | [Parameters](mariadb_params_modify_params.md) | [Operations](mariadb_params_modify_ops.md) diff --git a/docs/30_registry/resources/mariadb_params_modify_params.md b/docs/30_registry/resources/mariadb_params_modify_params.md deleted file mode 100644 index 09f9a12..0000000 --- a/docs/30_registry/resources/mariadb_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mariadb - -Service ID: `115` - -Service Name: Mariadb - -[Manual](mariadb.md) | [Create params](mariadb_params_create.md) | [Modify params](mariadb_params_modify.md) | [Output params](mariadb_outputs.md) | [Operations](mariadb_ops.md) | [Example](mariadb_example.md) - -[Overview](mariadb_params_modify.md) | [Parameters](mariadb_params_modify_params.md) | [Operations](mariadb_params_modify_ops.md) diff --git a/docs/30_registry/resources/mongodb.md b/docs/30_registry/resources/mongodb.md deleted file mode 100644 index fb0375a..0000000 --- a/docs/30_registry/resources/mongodb.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## MAN - -
-# Инструкция по развертыванию MongoDB через платформу

## 1. Общая информация

MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность, горизонтальное масштабирование и гибкую модель хранения.

### Доступные операции с кластером

* **create** — создание кластера
* **delete** — удаление кластера
* **suspend** — остановка кластера
* **resume** — запуск кластера

### Доступные операции с пользователями

* **create_user** — создание пользователя
* **modify_user** — модификация пользователя
* **delete_user** — удаление пользователя

---

## 2. Параметры развертывания кластера

Эти параметры необходимо указать при создании кластера.

### Платформа для развертывания

Среда, в которой будет развернут кластер. Выбирается из предложенного списка.

### Количество узлов

Оптимально выбирать нечётное количество узлов в кластере MongoDB, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность кластера даже при отказе одной из нод.

### Квота памяти пода (MB)

Объём памяти для одного пода в мегабайтах.
Пример: `2048`

### Квота CPU пода (mCPU)

CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).
Пример: `1000`

### Размер диска для базы данных (GB)

Объём диска для хранения данных в гигабайтах.
Пример: `20`

### Выделение внешнего IP для доступа к master

Флаг, определяющий необходимость выделения внешнего IP.
Допустимые значения: `true` или `false`

### Имя ipSpace для публикации внешнего IP

Указывается только если включено выделение внешнего IP.
Пример: `internet-no-antiddos-v1`

---

## 3. Параметры создания пользователя

### Имя пользователя

Указывается имя пользователя (любой регистр).
Пример: `readApp`

### Имя базы данных

Название базы, в которой будет создан пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read** — доступ только на чтение
* **readWrite** — чтение и изменение данных
* **dbOwner** — полный контроль над базой данных

---

## 4. Параметры модификации пользователя

### Имя пользователя

Необходимо выбрать существующего пользователя.
Если список пуст, требуется предварительно создать пользователя.

### Имя базы данных

База данных, к которой относится пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read**
* **readWrite**
* **dbOwner**

---

## 5. Параметры удаления пользователя

### Имя пользователя

Выберите пользователя из списка для удаления.

---

## 6. Выходные параметры

После успешного развертывания кластера платформа возвращает ключевые параметры.

### internalConnect

Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.
Используется для внутренних интеграций и системных сервисов.

### externalConnect

Внешний FQDN для подключения к кластеру извне.
Порт подключения — **27017**.

---

## 7. Пример подключения

Перед подключением необходимо установить **mongosh**.

Команда подключения к базе данных:

```
mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"
```

Где:

* `<username>` — имя пользователя
* `<password>` — пароль
* `<endpoint_db>` — internalConnect или externalConnect
* `<dbName>` — имя базы данных

## 8. Дополнительная информация

Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину и паролю. -
diff --git a/docs/30_registry/resources/mongodb_example.md b/docs/30_registry/resources/mongodb_example.md deleted file mode 100644 index b6d6ee7..0000000 --- a/docs/30_registry/resources/mongodb_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Copy-ready manifest (`mongodb_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_mongodb" "baza" { - resource_instances = 1 # Пример: `2` - resource_memory = 1 # Пример: `2048` - resource_c_p_u = 1 # Пример: `1000` - resource_disk = 1 # Пример: `20` - resource_realm = "TODO" # Выбрать платформу из списка - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - need_external_address_master = false # Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_mongodb.baza.state_params["имя_ключа"] -nubes_mongodb.baza.state_out["имя_ключа"] -nubes_mongodb.baza.state_params_flat["имя_ключа"] -nubes_mongodb.baza.state_out_flat["имя_ключа"] -nubes_mongodb.baza.vault_secrets["имя_ключа"] -nubes_mongodb.baza.vault_url -nubes_mongodb.baza.vault_user_path -nubes_mongodb.baza.vault_fields -``` diff --git a/docs/30_registry/resources/mongodb_example_ops.md b/docs/30_registry/resources/mongodb_example_ops.md deleted file mode 100644 index ca4ff9b..0000000 --- a/docs/30_registry/resources/mongodb_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_example.md) | [Parameters](mongodb_example_params.md) | [Operations](mongodb_example_ops.md) diff --git a/docs/30_registry/resources/mongodb_example_params.md b/docs/30_registry/resources/mongodb_example_params.md deleted file mode 100644 index ca4ff9b..0000000 --- a/docs/30_registry/resources/mongodb_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_example.md) | [Parameters](mongodb_example_params.md) | [Operations](mongodb_example_ops.md) diff --git a/docs/30_registry/resources/mongodb_instruction.md b/docs/30_registry/resources/mongodb_instruction.md deleted file mode 100644 index 27fef14..0000000 --- a/docs/30_registry/resources/mongodb_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для mongodb - -# Инструкция по развертыванию MongoDB через платформу

## 1. Общая информация

MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность, горизонтальное масштабирование и гибкую модель хранения.

### Доступные операции с кластером

* **create** — создание кластера
* **delete** — удаление кластера
* **suspend** — остановка кластера
* **resume** — запуск кластера

### Доступные операции с пользователями

* **create_user** — создание пользователя
* **modify_user** — модификация пользователя
* **delete_user** — удаление пользователя

---

## 2. Параметры развертывания кластера

Эти параметры необходимо указать при создании кластера.

### Платформа для развертывания

Среда, в которой будет развернут кластер. Выбирается из предложенного списка.

### Количество узлов

Оптимально выбирать нечётное количество узлов в кластере MongoDB, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность кластера даже при отказе одной из нод.

### Квота памяти пода (MB)

Объём памяти для одного пода в мегабайтах.
Пример: `2048`

### Квота CPU пода (mCPU)

CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).
Пример: `1000`

### Размер диска для базы данных (GB)

Объём диска для хранения данных в гигабайтах.
Пример: `20`

### Выделение внешнего IP для доступа к master

Флаг, определяющий необходимость выделения внешнего IP.
Допустимые значения: `true` или `false`

### Имя ipSpace для публикации внешнего IP

Указывается только если включено выделение внешнего IP.
Пример: `internet-no-antiddos-v1`

---

## 3. Параметры создания пользователя

### Имя пользователя

Указывается имя пользователя (любой регистр).
Пример: `readApp`

### Имя базы данных

Название базы, в которой будет создан пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read** — доступ только на чтение
* **readWrite** — чтение и изменение данных
* **dbOwner** — полный контроль над базой данных

---

## 4. Параметры модификации пользователя

### Имя пользователя

Необходимо выбрать существующего пользователя.
Если список пуст, требуется предварительно создать пользователя.

### Имя базы данных

База данных, к которой относится пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read**
* **readWrite**
* **dbOwner**

---

## 5. Параметры удаления пользователя

### Имя пользователя

Выберите пользователя из списка для удаления.

---

## 6. Выходные параметры

После успешного развертывания кластера платформа возвращает ключевые параметры.

### internalConnect

Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.
Используется для внутренних интеграций и системных сервисов.

### externalConnect

Внешний FQDN для подключения к кластеру извне.
Порт подключения — **27017**.

---

## 7. Пример подключения

Перед подключением необходимо установить **mongosh**.

Команда подключения к базе данных:

```
mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"
```

Где:

* `<username>` — имя пользователя
* `<password>` — пароль
* `<endpoint_db>` — internalConnect или externalConnect
* `<dbName>` — имя базы данных

## 8. Дополнительная информация

Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину и паролю. diff --git a/docs/30_registry/resources/mongodb_man.md b/docs/30_registry/resources/mongodb_man.md deleted file mode 100644 index 6fac6ef..0000000 --- a/docs/30_registry/resources/mongodb_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: mongodb - -# Инструкция по развертыванию MongoDB через платформу

## 1. Общая информация

MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность, горизонтальное масштабирование и гибкую модель хранения.

### Доступные операции с кластером

* **create** — создание кластера
* **delete** — удаление кластера
* **suspend** — остановка кластера
* **resume** — запуск кластера

### Доступные операции с пользователями

* **create_user** — создание пользователя
* **modify_user** — модификация пользователя
* **delete_user** — удаление пользователя

---

## 2. Параметры развертывания кластера

Эти параметры необходимо указать при создании кластера.

### Платформа для развертывания

Среда, в которой будет развернут кластер. Выбирается из предложенного списка.

### Количество узлов

Оптимально выбирать нечётное количество узлов в кластере MongoDB, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность кластера даже при отказе одной из нод.

### Квота памяти пода (MB)

Объём памяти для одного пода в мегабайтах.
Пример: `2048`

### Квота CPU пода (mCPU)

CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).
Пример: `1000`

### Размер диска для базы данных (GB)

Объём диска для хранения данных в гигабайтах.
Пример: `20`

### Выделение внешнего IP для доступа к master

Флаг, определяющий необходимость выделения внешнего IP.
Допустимые значения: `true` или `false`

### Имя ipSpace для публикации внешнего IP

Указывается только если включено выделение внешнего IP.
Пример: `internet-no-antiddos-v1`

---

## 3. Параметры создания пользователя

### Имя пользователя

Указывается имя пользователя (любой регистр).
Пример: `readApp`

### Имя базы данных

Название базы, в которой будет создан пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read** — доступ только на чтение
* **readWrite** — чтение и изменение данных
* **dbOwner** — полный контроль над базой данных

---

## 4. Параметры модификации пользователя

### Имя пользователя

Необходимо выбрать существующего пользователя.
Если список пуст, требуется предварительно создать пользователя.

### Имя базы данных

База данных, к которой относится пользователь.
Если база отсутствует, она будет создана автоматически.
Пример: `Apps_9392`

### Имя роли

* **read**
* **readWrite**
* **dbOwner**

---

## 5. Параметры удаления пользователя

### Имя пользователя

Выберите пользователя из списка для удаления.

---

## 6. Выходные параметры

После успешного развертывания кластера платформа возвращает ключевые параметры.

### internalConnect

Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.
Используется для внутренних интеграций и системных сервисов.

### externalConnect

Внешний FQDN для подключения к кластеру извне.
Порт подключения — **27017**.

---

## 7. Пример подключения

Перед подключением необходимо установить **mongosh**.

Команда подключения к базе данных:

```
mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"
```

Где:

* `<username>` — имя пользователя
* `<password>` — пароль
* `<endpoint_db>` — internalConnect или externalConnect
* `<dbName>` — имя базы данных

## 8. Дополнительная информация

Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину и паролю. diff --git a/docs/30_registry/resources/mongodb_ops.md b/docs/30_registry/resources/mongodb_ops.md deleted file mode 100644 index 7b007c1..0000000 --- a/docs/30_registry/resources/mongodb_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](mongodb_params_create.md) -- `create_user` — Создание кластера. Параметры: [Create params](mongodb_params_create.md) -- `delete` -- `delete_user` — . См. [nubes_mongodb_user](mongodb_user.md) -- `modify_user` — Изменение кластера. Параметры: [Modify params](mongodb_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/mongodb_outputs.md b/docs/30_registry/resources/mongodb_outputs.md deleted file mode 100644 index 441dee6..0000000 --- a/docs/30_registry/resources/mongodb_outputs.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-svc-92-r3 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` -- `state_params["needExternalAddressMaster"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["internalConnect"]` diff --git a/docs/30_registry/resources/mongodb_outputs_ops.md b/docs/30_registry/resources/mongodb_outputs_ops.md deleted file mode 100644 index d52ba5e..0000000 --- a/docs/30_registry/resources/mongodb_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_outputs.md) | [Parameters](mongodb_outputs_params.md) | [Operations](mongodb_outputs_ops.md) diff --git a/docs/30_registry/resources/mongodb_outputs_params.md b/docs/30_registry/resources/mongodb_outputs_params.md deleted file mode 100644 index d52ba5e..0000000 --- a/docs/30_registry/resources/mongodb_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_outputs.md) | [Parameters](mongodb_outputs_params.md) | [Operations](mongodb_outputs_ops.md) diff --git a/docs/30_registry/resources/mongodb_params.md b/docs/30_registry/resources/mongodb_params.md deleted file mode 100644 index b595ec1..0000000 --- a/docs/30_registry/resources/mongodb_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Parameters - -- [Create params](mongodb_params_create.md) -- [Modify params](mongodb_params_modify.md) diff --git a/docs/30_registry/resources/mongodb_params_create.md b/docs/30_registry/resources/mongodb_params_create.md deleted file mode 100644 index ce9ff39..0000000 --- a/docs/30_registry/resources/mongodb_params_create.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
487resource_instancesintegerПример: `2`minvalue=1; maxvalue=7
588resource_memoryintegerПример: `2048`minvalue=1000
589resource_cpuintegerПример: `1000`
590resource_diskintegerПример: `20`
595resource_realmstringВыбрать платформу из спискаfunc=getAvailableResourceRealms
646ip_space_name_masterstringЕсли включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - -
IDCodeTypeDefaultDescriptionConstraints
645need_external_address_masterstringfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false`value_list=false, true
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/mongodb_params_create_ops.md b/docs/30_registry/resources/mongodb_params_create_ops.md deleted file mode 100644 index eb1bcbc..0000000 --- a/docs/30_registry/resources/mongodb_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_params_create.md) | [Parameters](mongodb_params_create_params.md) | [Operations](mongodb_params_create_ops.md) diff --git a/docs/30_registry/resources/mongodb_params_create_params.md b/docs/30_registry/resources/mongodb_params_create_params.md deleted file mode 100644 index eb1bcbc..0000000 --- a/docs/30_registry/resources/mongodb_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_params_create.md) | [Parameters](mongodb_params_create_params.md) | [Operations](mongodb_params_create_ops.md) diff --git a/docs/30_registry/resources/mongodb_params_modify.md b/docs/30_registry/resources/mongodb_params_modify.md deleted file mode 100644 index 369e9ef..0000000 --- a/docs/30_registry/resources/mongodb_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/mongodb_params_modify_ops.md b/docs/30_registry/resources/mongodb_params_modify_ops.md deleted file mode 100644 index 716c85c..0000000 --- a/docs/30_registry/resources/mongodb_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_params_modify.md) | [Parameters](mongodb_params_modify_params.md) | [Operations](mongodb_params_modify_ops.md) diff --git a/docs/30_registry/resources/mongodb_params_modify_params.md b/docs/30_registry/resources/mongodb_params_modify_params.md deleted file mode 100644 index 716c85c..0000000 --- a/docs/30_registry/resources/mongodb_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_mongodb - -Service ID: `92` - -Service Name: MongoDB - -[Manual](mongodb.md) | [Create params](mongodb_params_create.md) | [Modify params](mongodb_params_modify.md) | [Output params](mongodb_outputs.md) | [Operations](mongodb_ops.md) | [Example](mongodb_example.md) - -[Overview](mongodb_params_modify.md) | [Parameters](mongodb_params_modify_params.md) | [Operations](mongodb_params_modify_ops.md) diff --git a/docs/30_registry/resources/mongodb_user.md b/docs/30_registry/resources/mongodb_user.md deleted file mode 100644 index 3da96bb..0000000 --- a/docs/30_registry/resources/mongodb_user.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_mongodb_user - -Service: nubes_mongodb - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -## Example - -```hcl -resource "nubes_mongodb_user" "example" { - mongodb_id = nubes_mongodb.example.id - username = "TODO" - db_name = "TODO" - role = dbOwner -} -``` diff --git a/docs/30_registry/resources/mongodb_user_ops.md b/docs/30_registry/resources/mongodb_user_ops.md deleted file mode 100644 index e3b3da2..0000000 --- a/docs/30_registry/resources/mongodb_user_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_mongodb_user - -Service: nubes_mongodb - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) diff --git a/docs/30_registry/resources/mongodb_user_params.md b/docs/30_registry/resources/mongodb_user_params.md deleted file mode 100644 index e3b3da2..0000000 --- a/docs/30_registry/resources/mongodb_user_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_mongodb_user - -Service: nubes_mongodb - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) - -[Overview](mongodb_user.md) | [Parameters](mongodb_user_params.md) | [Operations](mongodb_user_ops.md) diff --git a/docs/30_registry/resources/nextcloud.md b/docs/30_registry/resources/nextcloud.md deleted file mode 100644 index a494623..0000000 --- a/docs/30_registry/resources/nextcloud.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## MAN - -
-Ресурсная платформа: k8s. Автоматизация: helm chart -
diff --git a/docs/30_registry/resources/nextcloud_example.md b/docs/30_registry/resources/nextcloud_example.md deleted file mode 100644 index 0b43662..0000000 --- a/docs/30_registry/resources/nextcloud_example.md +++ /dev/null @@ -1,53 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Copy-ready manifest (`nextcloud_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_nextcloud" "baza" { - psql_uid = "TODO" - redis_uid = "TODO" - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - resource_c_p_u = 1000 # Квота ядра пода (Указывается в mili). 1 ядро = 1000 Mili - resource_memory = 1024 # Квота памяти пода (Указывается в Megabytes) - resource_disk = 2 # Квота диска (Указывается в GIGAbytes) Диск не может быть меньше 2G (!) - document_server = "collabora" # Выбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен Размер пода collabora: 1.8 ядра. 2Gi ОЗУ - resource_instances = 1 # Количество узлов Не может пока быть больше одного, так как нужны SC под RWMany - app_version = 32.0.1 -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_nextcloud.baza.state_params["имя_ключа"] -nubes_nextcloud.baza.state_out["имя_ключа"] -nubes_nextcloud.baza.state_params_flat["имя_ключа"] -nubes_nextcloud.baza.state_out_flat["имя_ключа"] -nubes_nextcloud.baza.vault_secrets["имя_ключа"] -nubes_nextcloud.baza.vault_url -nubes_nextcloud.baza.vault_user_path -nubes_nextcloud.baza.vault_fields -``` diff --git a/docs/30_registry/resources/nextcloud_example_ops.md b/docs/30_registry/resources/nextcloud_example_ops.md deleted file mode 100644 index 59aac75..0000000 --- a/docs/30_registry/resources/nextcloud_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_example.md) | [Parameters](nextcloud_example_params.md) | [Operations](nextcloud_example_ops.md) diff --git a/docs/30_registry/resources/nextcloud_example_params.md b/docs/30_registry/resources/nextcloud_example_params.md deleted file mode 100644 index 59aac75..0000000 --- a/docs/30_registry/resources/nextcloud_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_example.md) | [Parameters](nextcloud_example_params.md) | [Operations](nextcloud_example_ops.md) diff --git a/docs/30_registry/resources/nextcloud_instruction.md b/docs/30_registry/resources/nextcloud_instruction.md deleted file mode 100644 index 32b27c4..0000000 --- a/docs/30_registry/resources/nextcloud_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для nextcloud - -Ресурсная платформа: k8s. Автоматизация: helm chart diff --git a/docs/30_registry/resources/nextcloud_man.md b/docs/30_registry/resources/nextcloud_man.md deleted file mode 100644 index 77118e4..0000000 --- a/docs/30_registry/resources/nextcloud_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: nextcloud - -Ресурсная платформа: k8s. Автоматизация: helm chart diff --git a/docs/30_registry/resources/nextcloud_ops.md b/docs/30_registry/resources/nextcloud_ops.md deleted file mode 100644 index 2dd5b5f..0000000 --- a/docs/30_registry/resources/nextcloud_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](nextcloud_params_create.md) -- `delete` — DEV-Ветка удаления Nextcloud -- `modify` — Изменение кластера. Параметры: [Modify params](nextcloud_params_modify.md) -- `restart` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/nextcloud_outputs.md b/docs/30_registry/resources/nextcloud_outputs.md deleted file mode 100644 index 1a8707b..0000000 --- a/docs/30_registry/resources/nextcloud_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/nextcloud_outputs_ops.md b/docs/30_registry/resources/nextcloud_outputs_ops.md deleted file mode 100644 index 2da1bf7..0000000 --- a/docs/30_registry/resources/nextcloud_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_outputs.md) | [Parameters](nextcloud_outputs_params.md) | [Operations](nextcloud_outputs_ops.md) diff --git a/docs/30_registry/resources/nextcloud_outputs_params.md b/docs/30_registry/resources/nextcloud_outputs_params.md deleted file mode 100644 index 2da1bf7..0000000 --- a/docs/30_registry/resources/nextcloud_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_outputs.md) | [Parameters](nextcloud_outputs_params.md) | [Operations](nextcloud_outputs_ops.md) diff --git a/docs/30_registry/resources/nextcloud_params.md b/docs/30_registry/resources/nextcloud_params.md deleted file mode 100644 index 2c1eb71..0000000 --- a/docs/30_registry/resources/nextcloud_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Parameters - -- [Create params](nextcloud_params_create.md) -- [Modify params](nextcloud_params_modify.md) diff --git a/docs/30_registry/resources/nextcloud_params_create.md b/docs/30_registry/resources/nextcloud_params_create.md deleted file mode 100644 index b3e6a19..0000000 --- a/docs/30_registry/resources/nextcloud_params_create.md +++ /dev/null @@ -1,43 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
564psql_uiduuidref_svc_id=90
570redis_uiduuidref_svc_id=91
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
21domainstringweb01Наименование домена. Если будет указан FQDN, то происходят проверки DNS. Если указан поддомен, то будет добавлен в зону services.ngcloud.ru
Можно указать клиентскую DNS-Запись. Важно, чтобы запись смотрела на Ingress кластера
regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
99resource_cpuinteger1000Квота ядра пода (Указывается в mili). 1 ядро = 1000 Miliminvalue=100; maxvalue=4000
100resource_memoryinteger1024Квота памяти пода (Указывается в Megabytes)minvalue=1024; maxvalue=8192
101resource_diskinteger2Квота диска (Указывается в GIGAbytes)minvalue=2; maxvalue=999
192document_serverstringcollaboraВыбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступенvalue_list=collabora
470resource_instancesinteger1Количество узлов
Не может пока быть больше одного, так как нужны SC под RWMany
minvalue=1; maxvalue=7; value_list=1
569app_version32.0.1value_list=32.0.1
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/nextcloud_params_create_ops.md b/docs/30_registry/resources/nextcloud_params_create_ops.md deleted file mode 100644 index 4c5081e..0000000 --- a/docs/30_registry/resources/nextcloud_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_params_create.md) | [Parameters](nextcloud_params_create_params.md) | [Operations](nextcloud_params_create_ops.md) diff --git a/docs/30_registry/resources/nextcloud_params_create_params.md b/docs/30_registry/resources/nextcloud_params_create_params.md deleted file mode 100644 index 4c5081e..0000000 --- a/docs/30_registry/resources/nextcloud_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_params_create.md) | [Parameters](nextcloud_params_create_params.md) | [Operations](nextcloud_params_create_ops.md) diff --git a/docs/30_registry/resources/nextcloud_params_modify.md b/docs/30_registry/resources/nextcloud_params_modify.md deleted file mode 100644 index 4da066d..0000000 --- a/docs/30_registry/resources/nextcloud_params_modify.md +++ /dev/null @@ -1,19 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -## Modify params - - - - - - - - - -
IDCodeTypeDescriptionConstraints
178resource_cpuintegerКвота ядра пода (Указывается в mili)minvalue=100; maxvalue=4000
179resource_memoryintegerКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
180resource_diskintegerКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
547resource_instancesintegerКоличество узлов.
Не может пока быть больше одного, так как нужны SC под RWMany
minvalue=1; maxvalue=7; value_list=1
571app_versionstringНельзя обновляться сразу через несколько версий сразуvalue_list=32.0.1
diff --git a/docs/30_registry/resources/nextcloud_params_modify_ops.md b/docs/30_registry/resources/nextcloud_params_modify_ops.md deleted file mode 100644 index 79b9d75..0000000 --- a/docs/30_registry/resources/nextcloud_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_params_modify.md) | [Parameters](nextcloud_params_modify_params.md) | [Operations](nextcloud_params_modify_ops.md) diff --git a/docs/30_registry/resources/nextcloud_params_modify_params.md b/docs/30_registry/resources/nextcloud_params_modify_params.md deleted file mode 100644 index 79b9d75..0000000 --- a/docs/30_registry/resources/nextcloud_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nextcloud - -Service ID: `50` - -Service Name: Nextcloud - -[Manual](nextcloud.md) | [Create params](nextcloud_params_create.md) | [Modify params](nextcloud_params_modify.md) | [Output params](nextcloud_outputs.md) | [Operations](nextcloud_ops.md) | [Example](nextcloud_example.md) - -[Overview](nextcloud_params_modify.md) | [Parameters](nextcloud_params_modify_params.md) | [Operations](nextcloud_params_modify_ops.md) diff --git a/docs/30_registry/resources/nextcloud_restart.md b/docs/30_registry/resources/nextcloud_restart.md deleted file mode 100644 index f178bb7..0000000 --- a/docs/30_registry/resources/nextcloud_restart.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_nextcloud_restart - -Service: nubes_nextcloud - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -## Example - -```hcl -resource "nubes_nextcloud_restart" "example" { - nextcloud_id = nubes_nextcloud.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/nextcloud_restart_ops.md b/docs/30_registry/resources/nextcloud_restart_ops.md deleted file mode 100644 index e382c04..0000000 --- a/docs/30_registry/resources/nextcloud_restart_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_nextcloud_restart - -Service: nubes_nextcloud - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) diff --git a/docs/30_registry/resources/nextcloud_restart_params.md b/docs/30_registry/resources/nextcloud_restart_params.md deleted file mode 100644 index e382c04..0000000 --- a/docs/30_registry/resources/nextcloud_restart_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_nextcloud_restart - -Service: nubes_nextcloud - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) - -[Overview](nextcloud_restart.md) | [Parameters](nextcloud_restart_params.md) | [Operations](nextcloud_restart_ops.md) diff --git a/docs/30_registry/resources/nifi.md b/docs/30_registry/resources/nifi.md deleted file mode 100644 index cf2c590..0000000 --- a/docs/30_registry/resources/nifi.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/nifi_example.md b/docs/30_registry/resources/nifi_example.md deleted file mode 100644 index d54ed2f..0000000 --- a/docs/30_registry/resources/nifi_example.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Copy-ready manifest (`nifi_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_nifi" "baza" { - kafka_uid = "TODO" # Выбрать кластер из списка - partitions = 1 # Число партиций на кластер ≤ 100 × (число брокеров) × (фактор репликации). Пример `50` - replicas = 1 # Количество партиций ≤ (число брокеров). Пример `2` - name_topic = "TODO" # Пример: `orders-events` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_nifi.baza.state_params["имя_ключа"] -nubes_nifi.baza.state_out["имя_ключа"] -nubes_nifi.baza.state_params_flat["имя_ключа"] -nubes_nifi.baza.state_out_flat["имя_ключа"] -nubes_nifi.baza.vault_secrets["имя_ключа"] -nubes_nifi.baza.vault_url -nubes_nifi.baza.vault_user_path -nubes_nifi.baza.vault_fields -``` diff --git a/docs/30_registry/resources/nifi_example_ops.md b/docs/30_registry/resources/nifi_example_ops.md deleted file mode 100644 index e180eb6..0000000 --- a/docs/30_registry/resources/nifi_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_example.md) | [Parameters](nifi_example_params.md) | [Operations](nifi_example_ops.md) diff --git a/docs/30_registry/resources/nifi_example_params.md b/docs/30_registry/resources/nifi_example_params.md deleted file mode 100644 index e180eb6..0000000 --- a/docs/30_registry/resources/nifi_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_example.md) | [Parameters](nifi_example_params.md) | [Operations](nifi_example_ops.md) diff --git a/docs/30_registry/resources/nifi_instruction.md b/docs/30_registry/resources/nifi_instruction.md deleted file mode 100644 index 3c0047c..0000000 --- a/docs/30_registry/resources/nifi_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для nifi - -_Пока не заполнено. Инструкция будет добавлена разработчиками облака._ diff --git a/docs/30_registry/resources/nifi_man.md b/docs/30_registry/resources/nifi_man.md deleted file mode 100644 index 428fe48..0000000 --- a/docs/30_registry/resources/nifi_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: nifi - -Manual not available. diff --git a/docs/30_registry/resources/nifi_ops.md b/docs/30_registry/resources/nifi_ops.md deleted file mode 100644 index a896c6a..0000000 --- a/docs/30_registry/resources/nifi_ops.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](nifi_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](nifi_params_modify.md) diff --git a/docs/30_registry/resources/nifi_outputs.md b/docs/30_registry/resources/nifi_outputs.md deleted file mode 100644 index 976b25e..0000000 --- a/docs/30_registry/resources/nifi_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/nifi_outputs_ops.md b/docs/30_registry/resources/nifi_outputs_ops.md deleted file mode 100644 index 788b96f..0000000 --- a/docs/30_registry/resources/nifi_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_outputs.md) | [Parameters](nifi_outputs_params.md) | [Operations](nifi_outputs_ops.md) diff --git a/docs/30_registry/resources/nifi_outputs_params.md b/docs/30_registry/resources/nifi_outputs_params.md deleted file mode 100644 index 788b96f..0000000 --- a/docs/30_registry/resources/nifi_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_outputs.md) | [Parameters](nifi_outputs_params.md) | [Operations](nifi_outputs_ops.md) diff --git a/docs/30_registry/resources/nifi_params.md b/docs/30_registry/resources/nifi_params.md deleted file mode 100644 index 4dcadac..0000000 --- a/docs/30_registry/resources/nifi_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Parameters - -- [Create params](nifi_params_create.md) -- [Modify params](nifi_params_modify.md) diff --git a/docs/30_registry/resources/nifi_params_create.md b/docs/30_registry/resources/nifi_params_create.md deleted file mode 100644 index d5c4baa..0000000 --- a/docs/30_registry/resources/nifi_params_create.md +++ /dev/null @@ -1,23 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
471kafka_uiduuidВыбрать кластер из спискаref_svc_id=116
472partitionsintegerОбратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.
473replicasintegerКоличество партиций ≤ (число брокеров). Пример `2`
474name_topicstringПример: `orders-events`
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. diff --git a/docs/30_registry/resources/nifi_params_create_ops.md b/docs/30_registry/resources/nifi_params_create_ops.md deleted file mode 100644 index 1589f1c..0000000 --- a/docs/30_registry/resources/nifi_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_params_create.md) | [Parameters](nifi_params_create_params.md) | [Operations](nifi_params_create_ops.md) diff --git a/docs/30_registry/resources/nifi_params_create_params.md b/docs/30_registry/resources/nifi_params_create_params.md deleted file mode 100644 index 1589f1c..0000000 --- a/docs/30_registry/resources/nifi_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_params_create.md) | [Parameters](nifi_params_create_params.md) | [Operations](nifi_params_create_ops.md) diff --git a/docs/30_registry/resources/nifi_params_modify.md b/docs/30_registry/resources/nifi_params_modify.md deleted file mode 100644 index 7f34ef0..0000000 --- a/docs/30_registry/resources/nifi_params_modify.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -## Modify params - - - - - - -
IDCodeTypeDescriptionConstraints
477partitionsintegerОбратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.
478replicasintegerКоличество партиций ≤ (число брокеров). Пример `2`
diff --git a/docs/30_registry/resources/nifi_params_modify_ops.md b/docs/30_registry/resources/nifi_params_modify_ops.md deleted file mode 100644 index 48d3d92..0000000 --- a/docs/30_registry/resources/nifi_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_params_modify.md) | [Parameters](nifi_params_modify_params.md) | [Operations](nifi_params_modify_ops.md) diff --git a/docs/30_registry/resources/nifi_params_modify_params.md b/docs/30_registry/resources/nifi_params_modify_params.md deleted file mode 100644 index 48d3d92..0000000 --- a/docs/30_registry/resources/nifi_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nifi - -Service ID: `117` - -Service Name: Nifi - -[Manual](nifi.md) | [Create params](nifi_params_create.md) | [Modify params](nifi_params_modify.md) | [Output params](nifi_outputs.md) | [Operations](nifi_ops.md) | [Example](nifi_example.md) - -[Overview](nifi_params_modify.md) | [Parameters](nifi_params_modify_params.md) | [Operations](nifi_params_modify_ops.md) diff --git a/docs/30_registry/resources/nodejs.md b/docs/30_registry/resources/nodejs.md deleted file mode 100644 index 020cc2f..0000000 --- a/docs/30_registry/resources/nodejs.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## MAN - -
-Развертывает контейнер в k8s кластере с node:16, который можно использовать для запуска своих приложений.
Приложение должно быть доступно по ссылки в git репозитории, которая является входным параметром. -
diff --git a/docs/30_registry/resources/nodejs_example.md b/docs/30_registry/resources/nodejs_example.md deleted file mode 100644 index a4e9a69..0000000 --- a/docs/30_registry/resources/nodejs_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Copy-ready manifest (`nodejs_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_nodejs" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - git_path = "https://github.com/xahys/testnode.git" # Путь до Git, который будет webroot для сайта - resource_c_p_u = 500 # Квота ядра пода (milicores). 1000Mili = 1 Ядро - resource_memory = 1024 # Квота памяти пода (MBytes) - resource_instances = 1 # Количество узлов - app_version = 23 # Версия приложения -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_nodejs.baza.state_params["имя_ключа"] -nubes_nodejs.baza.state_out["имя_ключа"] -nubes_nodejs.baza.state_params_flat["имя_ключа"] -nubes_nodejs.baza.state_out_flat["имя_ключа"] -nubes_nodejs.baza.vault_secrets["имя_ключа"] -nubes_nodejs.baza.vault_url -nubes_nodejs.baza.vault_user_path -nubes_nodejs.baza.vault_fields -``` diff --git a/docs/30_registry/resources/nodejs_example_ops.md b/docs/30_registry/resources/nodejs_example_ops.md deleted file mode 100644 index 7960d05..0000000 --- a/docs/30_registry/resources/nodejs_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_example.md) | [Parameters](nodejs_example_params.md) | [Operations](nodejs_example_ops.md) diff --git a/docs/30_registry/resources/nodejs_example_params.md b/docs/30_registry/resources/nodejs_example_params.md deleted file mode 100644 index 7960d05..0000000 --- a/docs/30_registry/resources/nodejs_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_example.md) | [Parameters](nodejs_example_params.md) | [Operations](nodejs_example_ops.md) diff --git a/docs/30_registry/resources/nodejs_instruction.md b/docs/30_registry/resources/nodejs_instruction.md deleted file mode 100644 index db36ad7..0000000 --- a/docs/30_registry/resources/nodejs_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для nodejs - -Развертывает контейнер в k8s кластере с node:16, который можно использовать для запуска своих приложений.
Приложение должно быть доступно по ссылки в git репозитории, которая является входным параметром. diff --git a/docs/30_registry/resources/nodejs_man.md b/docs/30_registry/resources/nodejs_man.md deleted file mode 100644 index 8fa1a6e..0000000 --- a/docs/30_registry/resources/nodejs_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: nodejs - -Развертывает контейнер в k8s кластере с node:16, который можно использовать для запуска своих приложений.
Приложение должно быть доступно по ссылки в git репозитории, которая является входным параметром. diff --git a/docs/30_registry/resources/nodejs_ops.md b/docs/30_registry/resources/nodejs_ops.md deleted file mode 100644 index de1e172..0000000 --- a/docs/30_registry/resources/nodejs_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](nodejs_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](nodejs_params_modify.md) -- `redeploy` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/nodejs_outputs.md b/docs/30_registry/resources/nodejs_outputs.md deleted file mode 100644 index c866f68..0000000 --- a/docs/30_registry/resources/nodejs_outputs.md +++ /dev/null @@ -1,47 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / node_01 / suspended) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["domain"]` -- `state_params["gitPath"]` -- `state_params["jsonEnv"]` -- `state_params["appVersion"]` -- `state_params["healthPath"]` -- `state_params["resourceCPU"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/nodejs_outputs_ops.md b/docs/30_registry/resources/nodejs_outputs_ops.md deleted file mode 100644 index a240658..0000000 --- a/docs/30_registry/resources/nodejs_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_outputs.md) | [Parameters](nodejs_outputs_params.md) | [Operations](nodejs_outputs_ops.md) diff --git a/docs/30_registry/resources/nodejs_outputs_params.md b/docs/30_registry/resources/nodejs_outputs_params.md deleted file mode 100644 index a240658..0000000 --- a/docs/30_registry/resources/nodejs_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_outputs.md) | [Parameters](nodejs_outputs_params.md) | [Operations](nodejs_outputs_ops.md) diff --git a/docs/30_registry/resources/nodejs_params.md b/docs/30_registry/resources/nodejs_params.md deleted file mode 100644 index daf96ca..0000000 --- a/docs/30_registry/resources/nodejs_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Parameters - -- [Create params](nodejs_params_create.md) -- [Modify params](nodejs_params_modify.md) diff --git a/docs/30_registry/resources/nodejs_params_create.md b/docs/30_registry/resources/nodejs_params_create.md deleted file mode 100644 index 1bf4766..0000000 --- a/docs/30_registry/resources/nodejs_params_create.md +++ /dev/null @@ -1,43 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
151health_pathstringПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. Если оставить пустым, healtcheck'а не будет
152json_envjsonМассив переменных, будут переданы в env приложения
156resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
149domainstringweb01Наименование поддомена, будет добавлено в nodejs.dev.nubes.ruregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
150git_pathstringhttps://github.com/xahys/testnode.gitПуть до Git, который будет webroot для сайта
153resource_cpuinteger500Квота ядра пода (milicores). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
154resource_memoryinteger1024Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
155resource_instancesinteger1Количество узлов в сетиminvalue=1; maxvalue=7
270app_versionstring23Версия приложенияregex=^(\d){2}$; value_list=18, 20, 22, 23
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/nodejs_params_create_ops.md b/docs/30_registry/resources/nodejs_params_create_ops.md deleted file mode 100644 index 6597d5c..0000000 --- a/docs/30_registry/resources/nodejs_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_params_create.md) | [Parameters](nodejs_params_create_params.md) | [Operations](nodejs_params_create_ops.md) diff --git a/docs/30_registry/resources/nodejs_params_create_params.md b/docs/30_registry/resources/nodejs_params_create_params.md deleted file mode 100644 index 6597d5c..0000000 --- a/docs/30_registry/resources/nodejs_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_params_create.md) | [Parameters](nodejs_params_create_params.md) | [Operations](nodejs_params_create_ops.md) diff --git a/docs/30_registry/resources/nodejs_params_modify.md b/docs/30_registry/resources/nodejs_params_modify.md deleted file mode 100644 index 89a753e..0000000 --- a/docs/30_registry/resources/nodejs_params_modify.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -## Modify params - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
157git_pathstringПуть до Git, который будет webroot для сайта
158health_pathstringПуть до healtcheck для запуска пода в Kubernetes, который отдаст 200 код.
159json_envjsonМассив переменных, будут переданы в env приложенияmaxlength=2048
160resource_cpuintegerКвота ядра пода (Указывается в mili) 1000Mili = 1 ядроminvalue=100; maxvalue=4000
161resource_memoryintegerКвота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
162resource_instancesintegerКоличество узлов в сетиminvalue=1; maxvalue=7
271app_versionstringВерсия приложенияregex=^(\d){2}$; value_list=18, 20, 22, 23
diff --git a/docs/30_registry/resources/nodejs_params_modify_ops.md b/docs/30_registry/resources/nodejs_params_modify_ops.md deleted file mode 100644 index 5a730ff..0000000 --- a/docs/30_registry/resources/nodejs_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_params_modify.md) | [Parameters](nodejs_params_modify_params.md) | [Operations](nodejs_params_modify_ops.md) diff --git a/docs/30_registry/resources/nodejs_params_modify_params.md b/docs/30_registry/resources/nodejs_params_modify_params.md deleted file mode 100644 index 5a730ff..0000000 --- a/docs/30_registry/resources/nodejs_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodejs - -Service ID: `95` - -Service Name: NodeJS - -[Manual](nodejs.md) | [Create params](nodejs_params_create.md) | [Modify params](nodejs_params_modify.md) | [Output params](nodejs_outputs.md) | [Operations](nodejs_ops.md) | [Example](nodejs_example.md) - -[Overview](nodejs_params_modify.md) | [Parameters](nodejs_params_modify_params.md) | [Operations](nodejs_params_modify_ops.md) diff --git a/docs/30_registry/resources/nodejs_redeploy.md b/docs/30_registry/resources/nodejs_redeploy.md deleted file mode 100644 index 25f967a..0000000 --- a/docs/30_registry/resources/nodejs_redeploy.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_nodejs_redeploy - -Service: nubes_nodejs - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_nodejs_redeploy" "example" { - nodejs_id = nubes_nodejs.example.id - run_id = "change-me" - resource_realm = "TODO" -} -``` diff --git a/docs/30_registry/resources/nodejs_redeploy_ops.md b/docs/30_registry/resources/nodejs_redeploy_ops.md deleted file mode 100644 index 783e15d..0000000 --- a/docs/30_registry/resources/nodejs_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_nodejs_redeploy - -Service: nubes_nodejs - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) diff --git a/docs/30_registry/resources/nodejs_redeploy_params.md b/docs/30_registry/resources/nodejs_redeploy_params.md deleted file mode 100644 index 783e15d..0000000 --- a/docs/30_registry/resources/nodejs_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_nodejs_redeploy - -Service: nubes_nodejs - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) - -[Overview](nodejs_redeploy.md) | [Parameters](nodejs_redeploy_params.md) | [Operations](nodejs_redeploy_ops.md) diff --git a/docs/30_registry/resources/nodered.md b/docs/30_registry/resources/nodered.md deleted file mode 100644 index 54ecff3..0000000 --- a/docs/30_registry/resources/nodered.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/nodered_example.md b/docs/30_registry/resources/nodered_example.md deleted file mode 100644 index d5bd3a2..0000000 --- a/docs/30_registry/resources/nodered_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Copy-ready manifest (`nodered_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_nodered" "baza" { - resource_realm = "TODO" # Платформа для развертывания - domain = "TODO" # Наименование поддомена, будет добавлено в k8stemplate.dev.nubes.ru - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 500 # Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро - resource_memory = 512 # Квота памяти пода (Указывается в Megabytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_nodered.baza.state_params["имя_ключа"] -nubes_nodered.baza.state_out["имя_ключа"] -nubes_nodered.baza.state_params_flat["имя_ключа"] -nubes_nodered.baza.state_out_flat["имя_ключа"] -nubes_nodered.baza.vault_secrets["имя_ключа"] -nubes_nodered.baza.vault_url -nubes_nodered.baza.vault_user_path -nubes_nodered.baza.vault_fields -``` diff --git a/docs/30_registry/resources/nodered_example_ops.md b/docs/30_registry/resources/nodered_example_ops.md deleted file mode 100644 index 883f9c0..0000000 --- a/docs/30_registry/resources/nodered_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_example.md) | [Parameters](nodered_example_params.md) | [Operations](nodered_example_ops.md) diff --git a/docs/30_registry/resources/nodered_example_params.md b/docs/30_registry/resources/nodered_example_params.md deleted file mode 100644 index 883f9c0..0000000 --- a/docs/30_registry/resources/nodered_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_example.md) | [Parameters](nodered_example_params.md) | [Operations](nodered_example_ops.md) diff --git a/docs/30_registry/resources/nodered_instruction.md b/docs/30_registry/resources/nodered_instruction.md deleted file mode 100644 index 95674ba..0000000 --- a/docs/30_registry/resources/nodered_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для nodered - -_Пока не заполнено. Инструкция будет добавлена разработчиками облака._ diff --git a/docs/30_registry/resources/nodered_man.md b/docs/30_registry/resources/nodered_man.md deleted file mode 100644 index 16b9f02..0000000 --- a/docs/30_registry/resources/nodered_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: nodered - -Manual not available. diff --git a/docs/30_registry/resources/nodered_ops.md b/docs/30_registry/resources/nodered_ops.md deleted file mode 100644 index 2d6074e..0000000 --- a/docs/30_registry/resources/nodered_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](nodered_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/nodered_outputs.md b/docs/30_registry/resources/nodered_outputs.md deleted file mode 100644 index a7aaf96..0000000 --- a/docs/30_registry/resources/nodered_outputs.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-svc-97-r5 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceRealm"]` diff --git a/docs/30_registry/resources/nodered_outputs_ops.md b/docs/30_registry/resources/nodered_outputs_ops.md deleted file mode 100644 index c2e1a5d..0000000 --- a/docs/30_registry/resources/nodered_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_outputs.md) | [Parameters](nodered_outputs_params.md) | [Operations](nodered_outputs_ops.md) diff --git a/docs/30_registry/resources/nodered_outputs_params.md b/docs/30_registry/resources/nodered_outputs_params.md deleted file mode 100644 index c2e1a5d..0000000 --- a/docs/30_registry/resources/nodered_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_outputs.md) | [Parameters](nodered_outputs_params.md) | [Operations](nodered_outputs_ops.md) diff --git a/docs/30_registry/resources/nodered_params.md b/docs/30_registry/resources/nodered_params.md deleted file mode 100644 index 60a797d..0000000 --- a/docs/30_registry/resources/nodered_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Parameters - -- [Create params](nodered_params_create.md) -- [Modify params](nodered_params_modify.md) diff --git a/docs/30_registry/resources/nodered_params_create.md b/docs/30_registry/resources/nodered_params_create.md deleted file mode 100644 index f976ccb..0000000 --- a/docs/30_registry/resources/nodered_params_create.md +++ /dev/null @@ -1,28 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
196resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
197domainstringНаименование поддомена, будет добавлено в k8stemplate.dev.nubes.ruregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
193resource_cpuinteger500Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
194resource_memoryinteger512Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
195resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
323resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/nodered_params_create_ops.md b/docs/30_registry/resources/nodered_params_create_ops.md deleted file mode 100644 index e75b567..0000000 --- a/docs/30_registry/resources/nodered_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_params_create.md) | [Parameters](nodered_params_create_params.md) | [Operations](nodered_params_create_ops.md) diff --git a/docs/30_registry/resources/nodered_params_create_params.md b/docs/30_registry/resources/nodered_params_create_params.md deleted file mode 100644 index e75b567..0000000 --- a/docs/30_registry/resources/nodered_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_params_create.md) | [Parameters](nodered_params_create_params.md) | [Operations](nodered_params_create_ops.md) diff --git a/docs/30_registry/resources/nodered_params_modify.md b/docs/30_registry/resources/nodered_params_modify.md deleted file mode 100644 index be00f3b..0000000 --- a/docs/30_registry/resources/nodered_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/nodered_params_modify_ops.md b/docs/30_registry/resources/nodered_params_modify_ops.md deleted file mode 100644 index 2fa6e08..0000000 --- a/docs/30_registry/resources/nodered_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_params_modify.md) | [Parameters](nodered_params_modify_params.md) | [Operations](nodered_params_modify_ops.md) diff --git a/docs/30_registry/resources/nodered_params_modify_params.md b/docs/30_registry/resources/nodered_params_modify_params.md deleted file mode 100644 index 2fa6e08..0000000 --- a/docs/30_registry/resources/nodered_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_nodered - -Service ID: `97` - -Service Name: NodeRed - -[Manual](nodered.md) | [Create params](nodered_params_create.md) | [Modify params](nodered_params_modify.md) | [Output params](nodered_outputs.md) | [Operations](nodered_ops.md) | [Example](nodered_example.md) - -[Overview](nodered_params_modify.md) | [Parameters](nodered_params_modify_params.md) | [Operations](nodered_params_modify_ops.md) diff --git a/docs/30_registry/resources/openwhisk.md b/docs/30_registry/resources/openwhisk.md deleted file mode 100644 index 059ed46..0000000 --- a/docs/30_registry/resources/openwhisk.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## MAN - -
-Добавление и удаления пользователя для работы с Openwhisk -
diff --git a/docs/30_registry/resources/openwhisk_example.md b/docs/30_registry/resources/openwhisk_example.md deleted file mode 100644 index 8bf3eb3..0000000 --- a/docs/30_registry/resources/openwhisk_example.md +++ /dev/null @@ -1,44 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Copy-ready manifest (`openwhisk_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_openwhisk" "baza" { - username = "TODO" # Имя пользователя Openwhisk - resource_realm = "TODO" # Ресурсная платформа -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_openwhisk.baza.state_params["имя_ключа"] -nubes_openwhisk.baza.state_out["имя_ключа"] -nubes_openwhisk.baza.state_params_flat["имя_ключа"] -nubes_openwhisk.baza.state_out_flat["имя_ключа"] -nubes_openwhisk.baza.vault_secrets["имя_ключа"] -nubes_openwhisk.baza.vault_url -nubes_openwhisk.baza.vault_user_path -nubes_openwhisk.baza.vault_fields -``` diff --git a/docs/30_registry/resources/openwhisk_example_ops.md b/docs/30_registry/resources/openwhisk_example_ops.md deleted file mode 100644 index ecf39fa..0000000 --- a/docs/30_registry/resources/openwhisk_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_example.md) | [Parameters](openwhisk_example_params.md) | [Operations](openwhisk_example_ops.md) diff --git a/docs/30_registry/resources/openwhisk_example_params.md b/docs/30_registry/resources/openwhisk_example_params.md deleted file mode 100644 index ecf39fa..0000000 --- a/docs/30_registry/resources/openwhisk_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_example.md) | [Parameters](openwhisk_example_params.md) | [Operations](openwhisk_example_ops.md) diff --git a/docs/30_registry/resources/openwhisk_instruction.md b/docs/30_registry/resources/openwhisk_instruction.md deleted file mode 100644 index e0c94e1..0000000 --- a/docs/30_registry/resources/openwhisk_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для openwhisk - -Добавление и удаления пользователя для работы с Openwhisk diff --git a/docs/30_registry/resources/openwhisk_man.md b/docs/30_registry/resources/openwhisk_man.md deleted file mode 100644 index b08a742..0000000 --- a/docs/30_registry/resources/openwhisk_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: openwhisk - -Добавление и удаления пользователя для работы с Openwhisk diff --git a/docs/30_registry/resources/openwhisk_ops.md b/docs/30_registry/resources/openwhisk_ops.md deleted file mode 100644 index 91fee4e..0000000 --- a/docs/30_registry/resources/openwhisk_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](openwhisk_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/openwhisk_outputs.md b/docs/30_registry/resources/openwhisk_outputs.md deleted file mode 100644 index e2cdfe5..0000000 --- a/docs/30_registry/resources/openwhisk_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/openwhisk_outputs_ops.md b/docs/30_registry/resources/openwhisk_outputs_ops.md deleted file mode 100644 index f20867a..0000000 --- a/docs/30_registry/resources/openwhisk_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_outputs.md) | [Parameters](openwhisk_outputs_params.md) | [Operations](openwhisk_outputs_ops.md) diff --git a/docs/30_registry/resources/openwhisk_outputs_params.md b/docs/30_registry/resources/openwhisk_outputs_params.md deleted file mode 100644 index f20867a..0000000 --- a/docs/30_registry/resources/openwhisk_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_outputs.md) | [Parameters](openwhisk_outputs_params.md) | [Operations](openwhisk_outputs_ops.md) diff --git a/docs/30_registry/resources/openwhisk_params.md b/docs/30_registry/resources/openwhisk_params.md deleted file mode 100644 index 1a9b0e5..0000000 --- a/docs/30_registry/resources/openwhisk_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Parameters - -- [Create params](openwhisk_params_create.md) -- [Modify params](openwhisk_params_modify.md) diff --git a/docs/30_registry/resources/openwhisk_params_create.md b/docs/30_registry/resources/openwhisk_params_create.md deleted file mode 100644 index e933788..0000000 --- a/docs/30_registry/resources/openwhisk_params_create.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
64usernamestringИмя пользователя Openwhisk
863resource_realmstringРесурсная платформаfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. diff --git a/docs/30_registry/resources/openwhisk_params_create_ops.md b/docs/30_registry/resources/openwhisk_params_create_ops.md deleted file mode 100644 index 2a1ecd2..0000000 --- a/docs/30_registry/resources/openwhisk_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_params_create.md) | [Parameters](openwhisk_params_create_params.md) | [Operations](openwhisk_params_create_ops.md) diff --git a/docs/30_registry/resources/openwhisk_params_create_params.md b/docs/30_registry/resources/openwhisk_params_create_params.md deleted file mode 100644 index 2a1ecd2..0000000 --- a/docs/30_registry/resources/openwhisk_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_params_create.md) | [Parameters](openwhisk_params_create_params.md) | [Operations](openwhisk_params_create_ops.md) diff --git a/docs/30_registry/resources/openwhisk_params_modify.md b/docs/30_registry/resources/openwhisk_params_modify.md deleted file mode 100644 index 7791043..0000000 --- a/docs/30_registry/resources/openwhisk_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/openwhisk_params_modify_ops.md b/docs/30_registry/resources/openwhisk_params_modify_ops.md deleted file mode 100644 index f724fac..0000000 --- a/docs/30_registry/resources/openwhisk_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_params_modify.md) | [Parameters](openwhisk_params_modify_params.md) | [Operations](openwhisk_params_modify_ops.md) diff --git a/docs/30_registry/resources/openwhisk_params_modify_params.md b/docs/30_registry/resources/openwhisk_params_modify_params.md deleted file mode 100644 index f724fac..0000000 --- a/docs/30_registry/resources/openwhisk_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_openwhisk - -Service ID: `100` - -Service Name: Serverless Openwhisk (openwhisk_tenant) - -[Manual](openwhisk.md) | [Create params](openwhisk_params_create.md) | [Modify params](openwhisk_params_modify.md) | [Output params](openwhisk_outputs.md) | [Operations](openwhisk_ops.md) | [Example](openwhisk_example.md) - -[Overview](openwhisk_params_modify.md) | [Parameters](openwhisk_params_modify_params.md) | [Operations](openwhisk_params_modify_ops.md) diff --git a/docs/30_registry/resources/operations/100_openwhisk.md b/docs/30_registry/resources/operations/100_openwhisk.md deleted file mode 100644 index 504a397..0000000 --- a/docs/30_registry/resources/operations/100_openwhisk.md +++ /dev/null @@ -1,19 +0,0 @@ -# Operations: nubes_openwhisk - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `41` | username, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `42` | username | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | Имя пользователя Openwhisk | | | `64` | -| `resourceRealm` | `string` | `ДА` | `` | Ресурсная платформа | | func=getAvailableResourceRealms | `863` | - -## Operation: delete - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | Имя пользователя Openwhisk | | | `65` | diff --git a/docs/30_registry/resources/operations/110_dnszone.md b/docs/30_registry/resources/operations/110_dnszone.md deleted file mode 100644 index 5201bce..0000000 --- a/docs/30_registry/resources/operations/110_dnszone.md +++ /dev/null @@ -1,24 +0,0 @@ -# Operations: nubes_dnszone - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `43` | zoneEmail, zoneName, zoneKind, zoneMastersForSlave, zoneTimeToRefresh, zoneTimeToRetry, zoneTimeToExpire, zoneTimeToLive, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `44` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `zoneEmail` | `string` | `ДА` | `` | Контактный e-mail | | | `66` | -| `zoneName` | `string` | `ДА` | `` | Имя зоны | Имя зоны | regex=^([a-z0-9-]+\.)+[a-z0-9-]+$ | `67` | -| `zoneKind` | `string` | `ДА` | `NATIVE` | Тип зоны | | value_list=NATIVE, SLAVE | `68` | -| `zoneMastersForSlave` | `string` | `НЕТ` | `` | Использовать если выбран тип SLAVE. IP адреса в формате через пробел для настройки Master-серверов | | | `69` | -| `zoneTimeToRefresh` | `string` | `ДА` | `86400` | Время ожидания ответа вторичного DNS перед запросом SOA-записи с первичных серверов | | | `70` | -| `zoneTimeToRetry` | `string` | `ДА` | `7200` | Время в течение которого сервер повторно попробует синхронизировать информацию с первичных DNS-серверов | | | `71` | -| `zoneTimeToExpire` | `string` | `ДА` | `3600000` | Время в течение которого вторичный DNS будет пытаться завершить синхронизацию зоны с первичным | | | `72` | -| `zoneTimeToLive` | `string` | `ДА` | `86400` | Время, в течение которого информация будет кешироваться другими DNS-серверами | | | `73` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `284` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/111_dnsrecord.md b/docs/30_registry/resources/operations/111_dnsrecord.md deleted file mode 100644 index 6ccb24d..0000000 --- a/docs/30_registry/resources/operations/111_dnsrecord.md +++ /dev/null @@ -1,27 +0,0 @@ -# Operations: nubes_dnsrecord - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `45` | zoneUid, recordType, recordName, recordInput, recordTTL | | -| `delete` | `instance` | `delete` | `` | `46` | | | -| `modify` | `instance` | `modify` | `` | `90` | recordInput | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `zoneUid` | `uuid` | `ДА` | `` | UUID экземпляра услуги DNS-зоны | UUID экземпляра услуги DNS-зоны | ref_svc_id=110 | `75` | -| `recordType` | `string` | `ДА` | `` | Тип DNS-записи | Тип DNS-записи | value_list=A, AAAA, CNAME, MX, PTR, SOA, SRV, TXT, LUA, NS, SSHFP | `76` | -| `recordName` | `string` | `ДА` | `` | Имя записи. Имя зоны в конце проставляется автоматически | Имя записи. Имя зоны в конце проставляется автоматически | unique_scope=parent | `77` | -| `recordInput` | `string` | `ДА` | `` | Значение. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP | Значение. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP | | `78` | -| `recordTTL` | `integer > 0` | `ДА` | `3600` | Time-to-Leave записи. Раз в какое время запись будет обновлена | | minvalue=30; maxvalue=604800 | `450` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `recordInput` | `string` | `ДА` | `` | Запись. Необходима валидация, в зависимости от типа записи. Должно быть заменено на UUID-внешнийIP | | | `256` | diff --git a/docs/30_registry/resources/operations/112_tenant.md b/docs/30_registry/resources/operations/112_tenant.md deleted file mode 100644 index 0327307..0000000 --- a/docs/30_registry/resources/operations/112_tenant.md +++ /dev/null @@ -1,22 +0,0 @@ -# Operations: nubes_tenant - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `84` | grafanaOrgName, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `86` | | | -| `modify` | `instance` | `modify` | `` | `87` | | Просто удаляет все текущие датасоурсы и ставит их заново
Полезно, когда нужно "ресетнуть" / "добавить" | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `grafanaOrgName` | `string` | `ДА` | `` | WZ-Код клиента | | regex=^WZ[\d]+$ | `239` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `240` | - -## Operation: delete - -None. - -## Operation: modify - -None. diff --git a/docs/30_registry/resources/operations/113_vc_complex.md b/docs/30_registry/resources/operations/113_vc_complex.md deleted file mode 100644 index c990255..0000000 --- a/docs/30_registry/resources/operations/113_vc_complex.md +++ /dev/null @@ -1,25 +0,0 @@ -# Operations: nubes_vc_complex - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `107` | resourceRealm, vappName, vdcProviderGateway, virtualServicesCount, ipSpaceName, storageConfig, vdcNetworkPool, cpuGuaranteed, memGuaranteed, segroupName, needExternalAddressSNAT, needEnableAVI, cpuAllocated, memAllocated, vIPCount | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование ресурсной платформы | func=getAvailableResourceRealms | `332` | -| `vappName` | `string` | `ДА` | `` | Имя vApp | | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | `334` | -| `vdcProviderGateway` | `string` | `ДА` | `sandbox-v1cl1-pvdc` | Взять из свойств ресурсной платформы.
Путь .vcd.providerVdc - взять KEY

providerGateway Cloud Director. Влияет ресурсы будут предоставлены. Является полем (List<String>) в свойствах рес. платформы ЛК, но сам параметр передаётся только как один String | | | `358` | -| `virtualServicesCount` | `` | `ДА` | `1` | Кол-во виртуальных сервисов, которые выделяются на AVI. Во избежании коллапса пока выделяется до 4 | | minvalue=1; maxvalue=4 | `359` | -| `ipSpaceName` | `string` | `НЕТ` | `internet-ipv4-v1` | Имя ip Space для внешнего IP. Целесообразнее брать самый дешёвый, так как это vip для исходящего трафика. Необходимо задавать если включен needExternalAddressSNAT | | | `360` | -| `storageConfig` | `json` | `ДА` | `[{"name": "", "size": 1024}]` | Описывается как массив объектов, где описывается имя политики и её размер | | | `399` | -| `vdcNetworkPool` | `string` | `ДА` | `nsxt-sandbox-geneve-np` | | | | `400` | -| `cpuGuaranteed` | `integer > 0` | `ДА` | `20` | | | value_list=20, 50, 80 | `401` | -| `memGuaranteed` | `integer > 0` | `ДА` | `20` | | | value_list=20, 50, 80 | `402` | -| `segroupName` | `string` | `НЕТ` | `SEGROUP-SANDBOX-CL1-SHARED-01` | Наименование segroup, в котором будут выделяться пулы на AVI | | | `403` | -| `needExternalAddressSNAT` | `boolean` | `ДА` | `true` | Выделяет внешний IP на Edge. Используется для SNAT всего трафика | | value_list=false, true | `404` | -| `needEnableAVI` | `boolean` | `ДА` | `false` | Включает AVI в Cloud Director | | value_list=false, true | `405` | -| `cpuAllocated` | `string` | `ДА` | `1` | шт | | minvalue=1 | `566` | -| `memAllocated` | `integer > 0` | `ДА` | `10` | gb | | minvalue=1 | `567` | -| `vIPCount` | `integer > 0` | `ДА` | `0` | ш | | minvalue=0; maxvalue=20 | `568` | diff --git a/docs/30_registry/resources/operations/113_vccomplex.md b/docs/30_registry/resources/operations/113_vccomplex.md deleted file mode 100644 index 9c03fc8..0000000 --- a/docs/30_registry/resources/operations/113_vccomplex.md +++ /dev/null @@ -1,39 +0,0 @@ -# Operations for nubes_vcComplex - -Service ID: `113` - -Service: Быстрый старт - -## UI description - -# Создает окружение для ВМ.

## Создает сервисы:
**Организация**
**Виртуальный датацентр**
**Каталог**
**Сетевой шлюз периметра**

- -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 107) - -## Operation: create - -Operation ID: `107` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `true` | `` | `332` | `` | `` | `getAvailableResourceRealms` | `` | `` | `` | `false` | `` | -| `vappName` | `string` | `true` | `` | `334` | `` | `` | `` | `^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$` | `` | `` | `false` | `` | -| `vdcProviderGateway` | `string` | `true` | `sandbox-v1cl1-pvdc` | `358` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `virtualServicesCount` | `` | `true` | `1` | `359` | `` | `` | `` | `` | `1` | `4` | `false` | `` | -| `ipSpaceName` | `string` | `false` | `internet-ipv4-v1` | `360` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `storageConfig` | `json` | `true` | `[{"name": "", "size": 1024}]` | `399` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `vdcNetworkPool` | `string` | `true` | `nsxt-sandbox-geneve-np` | `400` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `cpuGuaranteed` | `integer > 0` | `true` | `20` | `401` | `` | `20,50,80` | `` | `` | `` | `` | `false` | `` | -| `memGuaranteed` | `integer > 0` | `true` | `20` | `402` | `` | `20,50,80` | `` | `` | `` | `` | `false` | `` | -| `segroupName` | `string` | `false` | `SEGROUP-SANDBOX-CL1-SHARED-01` | `403` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `needExternalAddressSNAT` | `boolean` | `true` | `true` | `404` | `` | `false,true` | `` | `` | `` | `` | `false` | `` | -| `needEnableAVI` | `boolean` | `true` | `false` | `405` | `` | `false,true` | `` | `` | `` | `` | `false` | `` | -| `cpuAllocated` | `string` | `true` | `1` | `566` | `` | `` | `` | `` | `1` | `` | `false` | `` | -| `memAllocated` | `integer > 0` | `true` | `10` | `567` | `` | `` | `` | `` | `1` | `` | `false` | `` | -| `vIPCount` | `integer > 0` | `true` | `0` | `568` | `` | `` | `` | `` | `0` | `20` | `false` | `` | - diff --git a/docs/30_registry/resources/operations/114_gitea_complex.md b/docs/30_registry/resources/operations/114_gitea_complex.md deleted file mode 100644 index da15a99..0000000 --- a/docs/30_registry/resources/operations/114_gitea_complex.md +++ /dev/null @@ -1,3 +0,0 @@ -# Operations: nubes_gitea_complex - -None. diff --git a/docs/30_registry/resources/operations/114_giteacomplex.md b/docs/30_registry/resources/operations/114_giteacomplex.md deleted file mode 100644 index 2c1ae7e..0000000 --- a/docs/30_registry/resources/operations/114_giteacomplex.md +++ /dev/null @@ -1,16 +0,0 @@ -# Operations for nubes_GiteaComplex - -Service ID: `114` - -Service: Комплексная услуга по созданию gitea - -## UI description - -Комплексная услуга из ["gittea", "postgres"] - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -No operations found. diff --git a/docs/30_registry/resources/operations/115_mariadb.md b/docs/30_registry/resources/operations/115_mariadb.md deleted file mode 100644 index f946862..0000000 --- a/docs/30_registry/resources/operations/115_mariadb.md +++ /dev/null @@ -1,58 +0,0 @@ -# Operations: nubes_mariadb - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `138` | resourceRealm, resourceCPU, resourceMemory, resourceDisk, resourceInstances, needExternalAddressMaster, ipSpaceNameMaster, ext_BACKUP_SCHEDULE, appVersion, autoScale, autoScalePercentage, autoScaleTechWindow, autoScaleQuotaGb, s3Uid | | -| `delete` | `instance` | `delete` | `` | `139` | deleteS3Bucket | | -| `modify` | `instance` | `modify` | `` | `142` | resourceCPU, resourceMemory, resourceInstances, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, ext_BACKUP_SCHEDULE, autoScale, autoScalePercentage, autoScaleTechWindow, autoScaleQuotaGb | | -| `resume` | `instance` | `resume` | `` | `141` | | | -| `suspend` | `instance` | `suspend` | `` | `140` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `422` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (milicores) | | minvalue=500; maxvalue=4000 | `424` | -| `resourceMemory` | `integer > 0` | `ДА` | `1024` | Квота памяти пода (MBytes) | | minvalue=1024; maxvalue=8192 | `425` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | | minvalue=1; maxvalue=999 | `426` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `427` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Выделяет внешний (белый) IP для доступа к master | | value_list=false, true | `428` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster | | | `429` | -| `ext_BACKUP_SCHEDULE` | `string` | `НЕТ` | `0 * * * *` | Не обязательный. Время запуска бекапа | | regex=^(\*|(\d+|\*\/\d+|\d+(,\d+)*))\s\*\s\*\s\*\s\*$ | `430` | -| `appVersion` | `string` | `ДА` | `9.4.0` | Версия MySQL | | value_list=8.4.0, 9.4.0 | `431` | -| `autoScale` | `boolean` | `ДА` | `false` | Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги | | value_list=false, true | `432` | -| `autoScalePercentage` | `integer > 0` | `НЕТ` | `10` | Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема | | value_list=10, 15, 20 | `433` | -| `autoScaleTechWindow` | `integer >= 0` | `НЕТ` | `0` | Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23) | | value_list=0, 5, 12, 23 | `434` | -| `autoScaleQuotaGb` | `integer > 0` | `НЕТ` | `1` | Квота для autoScale | | | `435` | -| `s3Uid` | `uuid` | `ДА` | `` | Экземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательно | | ref_svc_id=12 | `459` | - -## Operation: delete - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `deleteS3Bucket` | `boolean` | `ДА` | `true` | Также удалить технический S3 Bucket с бэкапами? | | value_list=false, true | `456` | - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | | | | `436` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | | | | `437` | -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | | | | `438` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `` | | | | `439` | -| `needExternalAddressMaster` | `boolean` | `НЕТ` | `` | | | value_list=false, true | `440` | -| `ipSpaceNameMaster` | `` | `НЕТ` | `` | | | | `441` | -| `ext_BACKUP_SCHEDULE` | `string` | `НЕТ` | `` | | | | `442` | -| `autoScale` | `boolean` | `НЕТ` | `` | | | value_list=false, true | `443` | -| `autoScalePercentage` | `integer > 0` | `НЕТ` | `` | | | | `444` | -| `autoScaleTechWindow` | `integer >= 0` | `НЕТ` | `` | | | | `445` | -| `autoScaleQuotaGb` | `integer > 0` | `НЕТ` | `` | | | | `446` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/116_kafka.md b/docs/30_registry/resources/operations/116_kafka.md deleted file mode 100644 index 19949f8..0000000 --- a/docs/30_registry/resources/operations/116_kafka.md +++ /dev/null @@ -1,98 +0,0 @@ -# Operations: nubes_kafka - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `148` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, resourceRealm | | -| `create_topic` | `subresource` | `create` | `topic` | `165` | nameTopic, partitions, replicas | # Инструкция по управлению топиками Apache Kafka через платформу

## 1. Общая информация

---

Топик — это основная сущность в Apache Kafka, предназначенная для приёма сообщений от продюсеров и передачи их консюмерам.
Платформа позволяет создавать, удалять и изменять параметры топиков без прямого доступа к брокерам, обеспечивая удобное управление через интерфейс или API.

---

## Доступные операции

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

---

## 2. Параметры создания топика

Ниже перечислены параметры, которые необходимо указать при создании нового топика:

* **Имя топика**
Название топика.
Должно быть уникальным в пределах кластера.
Пример: `orders-events`.

* **Партиции**
Количество партиций топика.
Рекомендуется выбирать с учётом уровня параллелизма потребителей и предполагаемой нагрузки.
Пример: `6`. Здесь важно рассказать о том как происходит расчет оптимального количества
Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.

* **Реплики**
Количество реплик для каждой партиции.
Обычно равно количеству доступных брокеров или меньше.
Пример: `3`.


---

## 4. Параметры модификации топика

Для уже существующих топиков можно изменять параметры. Все параметры являются опциональными:

* **Имя топика**
Название топика.
Пример: `orders-events`.

* **Партиции**
Новое количество партиций.
Пример: `12`.

* **Реплики**
Новое количество реплик.
Пример: `2`.

---

## 5. Рекомендации

* Планируйте количество партиций с запасом — уменьшение их числа невозможно.
* Количество реплик должно соответствовать требуемому уровню отказоустойчивости, но не превышать количество брокеров.
* Изменение параметров топика в рабочем окружении может временно влиять на производительность. Рекомендуется проводить крупные изменения в периоды минимальной нагрузки.

--- | -| `create_user` | `subresource` | `create` | `user` | `168` | username, nameTopic, operations, group, accessHosts | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `delete` | `instance` | `delete` | `` | `149` | | | -| `delete_topic` | `subresource` | `delete` | `topic` | `167` | nameTopic | | -| `delete_user` | `subresource` | `delete` | `user` | `170` | username | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `modify` | `instance` | `modify` | `` | `162` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster | | -| `modify_topic` | `subresource` | `modify` | `topic` | `166` | nameTopic, partitions, replicas | # Инструкция по управлению топиками Apache Kafka через платформу

## 1. Общая информация

---

Топик — это основная сущность в Apache Kafka, предназначенная для приёма сообщений от продюсеров и передачи их консюмерам.
Платформа позволяет создавать, удалять и изменять параметры топиков без прямого доступа к брокерам, обеспечивая удобное управление через интерфейс или API.

---

## Доступные операции

- **create_topic** — Создание топика
- **modify_topic** — Модификация топика
- **delete_topic** — Удаление топика

---

## 2. Параметры создания топика

Ниже перечислены параметры, которые необходимо указать при создании нового топика:

* **Имя топика**
Название топика.
Должно быть уникальным в пределах кластера.
Пример: `orders-events`.

* **Партиции**
Количество партиций топика.
Рекомендуется выбирать с учётом уровня параллелизма потребителей и предполагаемой нагрузки.
Пример: `6`. Здесь важно рассказать о том как происходит расчет оптимального количества
Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки.

* **Реплики**
Количество реплик для каждой партиции.
Обычно равно количеству доступных брокеров или меньше.
Пример: `3`.


---

## 4. Параметры модификации топика

Для уже существующих топиков можно изменять параметры. Все параметры являются опциональными:

* **Имя топика**
Название топика.
Пример: `orders-events`.

* **Партиции**
Новое количество партиций.
Пример: `12`.

* **Реплики**
Новое количество реплик.
Пример: `2`.

---

## 5. Рекомендации

* Планируйте количество партиций с запасом — уменьшение их числа невозможно.
* Количество реплик должно соответствовать требуемому уровню отказоустойчивости, но не превышать количество брокеров.
* Изменение параметров топика в рабочем окружении может временно влиять на производительность. Рекомендуется проводить крупные изменения в периоды минимальной нагрузки.

--- | -| `modify_user` | `subresource` | `modify` | `user` | `169` | nameTopic, operations, group, accessHosts, username | # Инструкция по управлению пользователями Apache Kafka.

---

## 1. Общая информация

Пользователи в Apache Kafka используются для аутентификации и авторизации при подключении к кластеру.
Платформа позволяет создавать, удалять и изменять пользователей без прямого доступа к брокерам, а также настраивать права доступа к топикам и группам.
Это обеспечивает централизованное и безопасное управление доступом к ресурсам Kafka.

---

## Доступные операции

- **create_user** — Создание пользователя
- **modify_user** — Модификация пользователя
- **delete_user** — Удаление пользователя

---

## 2. Параметры создания пользователя

Ниже перечислены параметры, которые необходимо указать при создании нового пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 3. Параметры модификации пользователя

Ниже перечислены параметры, которые необходимо указать при модификации пользователя:

* **Имя пользователя**
Имя создаваемого пользователя. Используется для подключения к Kafka и настройки прав.
Пример: `username-admin`

* **Топик**
Название топика, к которому будут назначены права для данного пользователя.
Пример: `orders-events`.
Использовать маску нельзя (`orders*`), только полное название или `*`.

* **Операции**
Список разрешённых операций на указанном топике.
Пример: `Describe, Read, Write`

* **Группа**
Имя группы, которой разрешён доступ. Используется при настройке консюмер-групп.
Пример: `order-consumers`.

* **Разрешённые хосты**
Список хостов или подсетей, с которых разрешено подключение пользователя.
Пример: `192.168.1.0/24` или `*`.

---

## 4. Параметры удалении пользователя

Ниже перечислены параметры, которые необходимо указать при удалении пользователя:

* **Имя пользователя**
Имя удаляемого пользователя.
Пример: `username-admin`

## 5. Выходные параметры

После успешного создания пользователя платформа возвращает параметры, необходимые для подключения:

* **ca.crt**
Корневой сертификат (Certificate Authority), используемый для проверки подлинности сервера при TLS-подключении.
Файл содержит публичный ключ удостоверяющего центра, которому доверяют брокеры и клиенты. Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **ca.p12**
PKCS#12-хранилище с корневым сертификатом (Certificate Authority), используемое для проверки подлинности сервера при TLS-подключении.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.p12
```

* **ca.password**
Пароль для доступа к хранилищу `ca.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

* **user.crt**
Клиентский сертификат, подтверждающий личность пользователя при подключении к Kafka.
Используется совместно с приватным ключом `user.key` для аутентификации.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.crt
```

* **user.key**
Приватный ключ пользователя, применяемый для установления защищённого TLS-соединения и подтверждения подлинности.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo '<содержание поля>' | base64 -d > <название>.key
```

* **user.p12**
PKCS#12-хранилище с клиентским сертификатом и приватным ключом, предназначенное для аутентификации пользователя в Kafka.
Выдаеться в формате base64 для получения файла сертификата использовать команду
```bash
echo "<содержание поля>" | base64 -d > <название>.p12
```

* **user.password**
Пароль для доступа к хранилищу `user.p12`. Выдаеться в чистом виде. Раскодировать не нужно.

Эти параметры используются для настройки TLS-подключения.

---

## 6. Пример конфигурации клиента внутри кластера

Пример пода:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: kafka-4
spec:
volumes:
- name: work
emptyDir: {}
containers:
- name: kcat
image: quay.io/strimzi/kafka:latest-kafka-4.0.0
command: ["sleep", "5600"]
volumeMounts:
- name: work
mountPath: /work
restartPolicy: Never
```

Создаём под и сохраняем сертификаты:

```bash
kubectl cp user.p12 kafka-4:/work/
kubectl cp ca.p12 kafka-4:/work/
```

Создаём файлы конфигурации:

```bash
cat > /work/user-read.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

```bash
cat > /work/user-write.properties <<'EOF'
security.protocol=SSL
ssl.keystore.type=PKCS12
ssl.keystore.location=/work/user-write.p12
ssl.keystore.password=<user.password>
ssl.truststore.type=PKCS12
ssl.truststore.location=/work/ca.p12
ssl.truststore.password=<ca.password>
EOF
```

Листинг доступных топиков:

```bash
/opt/kafka/bin/kafka-topics.sh \
--bootstrap-server kafkak8s-bootstrap-external:9093 \
--command-config /work/user-read.properties \
--list
```

Запись сообщений:

```bash
/opt/kafka/bin/kafka-console-producer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--producer.config /work/user-write.properties
```

Чтение сообщений:

```bash
/opt/kafka/bin/kafka-console-consumer.sh \
--bootstrap-server <адрес сервис брокера>:9093 \
--topic <topic> \
--from-beginning \
--group <group> \
--consumer.config /work/user-read.properties \
--max-messages 50
```

---

## 7. Пример внешнего подключения с использованием **kcat**

**Листинг топиков**

```bash
kcat -b <externalConnect.bootstrap.fqdn>:9093 \
-L \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

**Запись сообщения**

```bash
echo "hello from kcat" | kcat -P \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-write.crt \
-X ssl.key.location=./user-write.key \
-X ssl.endpoint.identification.algorithm=none
```

**Чтение сообщений**

```bash
kcat -C \
-b <externalConnect.bootstrap.fqdn>:9093 \
-t write-test \
-o beginning \
-q \
-X security.protocol=SSL \
-X ssl.ca.location=./ca.crt \
-X ssl.certificate.location=./user-read.crt \
-X ssl.key.location=./user-read.key \
-X ssl.endpoint.identification.algorithm=none
```

---


## 9. Рекомендации

* Минимизируйте набор разрешённых операций для повышения безопасности.
* Используйте отдельные учётные записи для продюсеров, консюмеров и системных сервисов.
* Ограничивайте доступ по IP или подсетям с помощью параметра **Разрешённые хосты**.
* После изменения прав или групп пользователя рекомендуется проверить подключение и доступ к топикам.

--- | -| `resume` | `instance` | `resume` | `` | `161` | | | -| `suspend` | `instance` | `suspend` | `` | `160` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `ДА` | `` | Пример: `2` | | minvalue=1; value_list=1, 2, 3, 4, 5 | `461` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | Пример: `2048` | | minvalue=1000 | `462` | -| `resourceCPU` | `integer > 0` | `ДА` | `` | Пример: `2000` | | minvalue=1000 | `463` | -| `resourceDisk` | `integer > 0` | `ДА` | `` | Пример: `20` | | | `464` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false` | | value_list=false, true | `465` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1` | | | `466` | -| `resourceRealm` | `string` | `ДА` | `` | Выбрать платформу из списка | | func=getAvailableResourceRealms | `469` | - -## Operation: create_topic - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nameTopic` | `string` | `ДА` | `` | Пример: `orders-events` | | | `523` | -| `partitions` | `integer > 0` | `ДА` | `` | Число партиций можно увеличить, но уменьшить их нельзя. | | | `524` | -| `replicas` | `integer > 0` | `ДА` | `` | Количество реплик не может привышать количество реплик брокера | | | `525` | - -## Operation: create_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | Пример: `username-admin` | | | `530` | -| `nameTopic` | `string` | `ДА` | `` | Пример: `orders-events`. Использовать маску нельзя(`orders*`), только полное название или `*` | | | `531` | -| `operations` | `string` | `ДА` | `` | Пример: `Create, Describe, Read, Write` | | | `532` | -| `group` | `string` | `ДА` | `` | Пример: `order-consumers` или `*` | | | `533` | -| `accessHosts` | `string` | `ДА` | `` | Пример: `192.168.1.0/24` или `*` | | | `534` | - -## Operation: delete - -None. - -## Operation: delete_topic - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nameTopic` | `string` | `ДА` | `` | Необходимо выбрать топик, который необходимо удалить | | | `529` | - -## Operation: delete_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | Пример: `username-admin` | | | `540` | - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Пример: `2` | | value_list=1, 2, 3, 4, 5 | `501` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Пример: `2048` | | minvalue=1000 | `502` | -| `resourceCPU` | `` | `НЕТ` | `` | Пример: `2000` | | minvalue=1000 | `503` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `` | Пример: `20` | | | `504` | -| `needExternalAddressMaster` | `boolean` | `НЕТ` | `false` | Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false` | | value_list=false, true | `505` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1` | | | `506` | - -## Operation: modify_topic - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nameTopic` | `string` | `ДА` | `` | Пример: `orders-events` | | | `526` | -| `partitions` | `` | `НЕТ` | `` | Число партиций на кластер ≤ 100 × (число брокеров) × (фактор репликации). Пример `50` | | | `527` | -| `replicas` | `` | `НЕТ` | `` | Количество партиций ≤ (число брокеров). Пример `2` | | | `528` | - -## Operation: modify_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nameTopic` | `string` | `НЕТ` | `` | Пример: `orders-events`. Использовать маску нельзя(`orders*`), только полное название или `*` | | | `535` | -| `operations` | `string` | `НЕТ` | `` | Пример: `Create, Describe, Read, Write` | | | `536` | -| `group` | `string` | `НЕТ` | `` | Пример: `order-consumers` или `*` | | | `537` | -| `accessHosts` | `string` | `НЕТ` | `` | Пример: `192.168.1.0/24` или `*` | | | `538` | -| `username` | `string` | `ДА` | `` | Пример: `username-admin` | | | `539` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/117_nifi.md b/docs/30_registry/resources/operations/117_nifi.md deleted file mode 100644 index 6ff94e7..0000000 --- a/docs/30_registry/resources/operations/117_nifi.md +++ /dev/null @@ -1,27 +0,0 @@ -# Operations: nubes_nifi - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `150` | kafkaUid, partitions, replicas, nameTopic | | -| `delete` | `instance` | `delete` | `` | `151` | | | -| `modify` | `instance` | `modify` | `` | `154` | partitions, replicas | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `kafkaUid` | `uuid` | `ДА` | `` | Выбрать кластер из списка | | ref_svc_id=116 | `471` | -| `partitions` | `integer > 0` | `ДА` | `` | Число партиций на кластер ≤ 100 × (число брокеров) × (фактор репликации). Пример `50` | Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки. | | `472` | -| `replicas` | `integer > 0` | `ДА` | `` | Количество партиций ≤ (число брокеров). Пример `2` | | | `473` | -| `nameTopic` | `string` | `ДА` | `` | Пример: `orders-events` | | | `474` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `partitions` | `integer > 0` | `НЕТ` | `` | Число партиций на кластер ≤ 100 × (число брокеров) × (фактор репликации). Пример `50` | Обратите внимание: уменьшить количество партиций после создания невозможно, поэтому лучше закладывать небольшой запас на будущий рост нагрузки. | | `477` | -| `replicas` | `integer > 0` | `НЕТ` | `` | Количество партиций ≤ (число брокеров). Пример `2` | | | `478` | diff --git a/docs/30_registry/resources/operations/119_akhq.md b/docs/30_registry/resources/operations/119_akhq.md deleted file mode 100644 index 8233183..0000000 --- a/docs/30_registry/resources/operations/119_akhq.md +++ /dev/null @@ -1,38 +0,0 @@ -# Operations: nubes_akhq - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `175` | resourceRealm, resourceMemory, resourceCPU, domain, resourceInstances, kafkaUid | | -| `delete` | `instance` | `delete` | `` | `176` | | | -| `modify` | `instance` | `modify` | `` | `180` | kafkaUid | | -| `resume` | `instance` | `resume` | `` | `178` | | | -| `suspend` | `instance` | `suspend` | `` | `177` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Выбрать платформу из списка | | func=getAvailableResourceRealms | `550` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Пример: `1024` | | minvalue=512 | `551` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Пример: `1000` | | minvalue=500 | `552` | -| `domain` | `string` | `ДА` | `` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `553` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | | | minvalue=1 | `554` | -| `kafkaUid` | `uuid` | `ДА` | `` | Выбрать кластер из списка | | ref_svc_id=116 | `555` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `kafkaUid` | `uuid` | `ДА` | `` | Выбрать кластер из списка | | ref_svc_id=116 | `565` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/120_clickhouse.md b/docs/30_registry/resources/operations/120_clickhouse.md deleted file mode 100644 index af35a92..0000000 --- a/docs/30_registry/resources/operations/120_clickhouse.md +++ /dev/null @@ -1,91 +0,0 @@ -# Operations: nubes_clickhouse - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `181` | resourceRealm, s3Uid, resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | Операция создания кластера ClickHouse

Для подключения к кластеру также необходимо создать базу данных через операцию `create_database` и создание пользователя через операцию `create_user` | -| `create_database` | `subresource` | `create` | `database` | `186` | databaseName | База данных создаётся на всех репликах кластера ClickHouse | -| `create_user` | `subresource` | `create` | `user` | `185` | username, databaseName, accessHosts | | -| `delete` | `instance` | `delete` | `` | `184` | | Удаление возможно только после остановки сервиса через операцию `suspend`
После выполнения операции необходимо выждать определенное кол-во времени | -| `delete_database` | `subresource` | `delete` | `database` | `188` | databaseName | Необратимое действие!!!
Трижды подумай, заблокируй телефон тимлида и не выполняй это действие | -| `delete_user` | `subresource` | `delete` | `user` | `187` | username | | -| `modify` | `instance` | `modify` | `` | `189` | resourceInstances, resourceInstancesShards, resourceCPU, resourceMemory, appVersion, resourceDisk, needExternalAddressMaster, ipSpaceNameMaster, needCreateKeeper, resourceCPUKeeper, resourceMemoryKeeper, resourceInstancesKeeper, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN | | -| `resume` | `instance` | `resume` | `` | `183` | | | -| `suspend` | `instance` | `suspend` | `` | `182` | | Операция приводит к удалению всех подов
Persistent Volume остаются нетронутыми | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Кластер Kubernetes в котором будет развёрнуто приложение | Выбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы | func=getAvailableResourceRealms | `572` | -| `s3Uid` | `uuid` | `ДА` | `` | Экземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательно | **Если список не отображается**
перейдите в раздел `S3 Object Storage`
операция `create` | ref_svc_id=12 | `573` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Пример: `3` | **Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper` | minvalue=1; maxvalue=7 | `574` | -| `resourceInstancesShards` | `integer > 0` | `ДА` | `1` | Пример: `1` | **Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда | minvalue=1; maxvalue=7 | `575` | -| `resourceCPU` | `integer > 0` | `ДА` | `1000` | Пример: `1000` | Указывается в Milicores
`1000` Mili == `1` Ядро | minvalue=1000; maxvalue=8000 | `576` | -| `resourceMemory` | `integer > 0` | `ДА` | `1536` | Пример: `2048` | Указывается в Megabytes | minvalue=1536; maxvalue=8192 | `577` | -| `appVersion` | `string` | `ДА` | `25.10` | Версия `clickhouse-server` | | value_list=25.10 | `578` | -| `resourceDisk` | `integer > 0` | `ДА` | `10` | Пример: `100` | Указывается в Gigabytes | minvalue=1; maxvalue=999 | `579` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Позволяет подключиться извне к ClickHouse | Для выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы | value_list=false, true | `580` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Пример: `internet-no-antiddos-v1` | Имя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды` | | `581` | -| `needCreateKeeper` | `boolean` | `ДА` | `true` | Необходим для кластеризации ClickHouse | Аналог `Zookeeper`, представленный от ClickHouse | value_list=false, true | `582` | -| `resourceCPUKeeper` | `integer > 0` | `ДА` | `50` | Пример: `100` | Указывается в Milicores
`1000` Mili == `1` Ядро | minvalue=50; maxvalue=8000 | `583` | -| `resourceMemoryKeeper` | `integer > 0` | `ДА` | `152` | Пример: `256` | Указывается в Megabytes | minvalue=152; maxvalue=8192 | `584` | -| `resourceInstancesKeeper` | `integer > 0` | `ДА` | `1` | Пример: `1` | Для **теста** - 1 нода.
Для **продуктива** - 3 ноды | minvalue=1; maxvalue=3; value_list=1, 3 | `585` | -| `ext_BACKUP_SCHEDULE` | `string` | `ДА` | `0 0 * * *` | Принимает формат `CRON` | | regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$ | `586` | -| `ext_BACKUP_NUM_TO_RETAIN` | `integer > 0` | `ДА` | `7` | Пример: `7` | Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты** | minvalue=3; maxvalue=60 | `587` | - -## Operation: create_database - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `databaseName` | `string` | `ДА` | `` | Пример: `db01` | | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | `600` | - -## Operation: create_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | Пример: `myusername` | | regex=^(?![0-9_])[a-zA-Z_][a-zA-Z0-9_]{0,62}$; maxlength=62; minlength=2 | `596` | -| `databaseName` | `json` | `ДА` | `["database"]` | Необходимо указать массив существующих баз | Если базы не существует - при выполнении операции вернётся ошибка | | `598` | -| `accessHosts` | `string` | `ДА` | `::/0` | Пример: `::/0` | | | `599` | - -## Operation: delete - -None. - -## Operation: delete_database - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `databaseName` | `string` | `ДА` | `` | ВСЕ ДАННЫЕ ВНУТРИ БД БУДУТ УДАЛЕНЫ | | | `602` | - -## Operation: delete_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `` | `ДА` | `` | Имя пользователя, созданное через операцию `create_user` | | | `601` | - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `ДА` | `` | Пример: `3` | **Для синхронизации данных между репликами** необходимо включить `Создать ClickHouse-Keeper` | minvalue=1; maxvalue=7 | `603` | -| `resourceInstancesShards` | `integer > 0` | `ДА` | `` | Пример: `1` | **Шард** - это часть данных, разделенная на разные узлы (серверы) для горизонтального масштабирования и обработки больших объемов информации.
**Реплика** - это точная копия данных внутри одного шарда | minvalue=1; maxvalue=7 | `604` | -| `resourceCPU` | `integer > 0` | `ДА` | `` | Пример: `1000` | Указывается в Milicores
`1000` Mili == `1` Ядро | minvalue=1000; maxvalue=8000 | `605` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | Пример: `2048` | Указывается в Megabytes | minvalue=1536; maxvalue=8192 | `606` | -| `appVersion` | `string` | `ДА` | `25.10` | Версия `clickhouse-server` | | | `607` | -| `resourceDisk` | `integer > 0` | `ДА` | `` | Пример: `100` | Указывается в Gigabytes
**Нельзя** выставлять меньше текущего значения | minvalue=1; maxvalue=999 | `608` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `` | Позволяет подключиться извне к ClickHouse | Для выделения IP также необходимо указать имя Ip-space.
Его можно получить из свойств ресурсной платформы | value_list=false, true | `609` | -| `ipSpaceNameMaster` | `string` | `ДА` | `` | Пример: `internet-no-antiddos-v1` | Имя ipSpace для публикации внешнего адреса

Не может быть пустым, если включен `Выделение белого ip для master ноды` | | `610` | -| `needCreateKeeper` | `boolean` | `ДА` | `` | Необходим для кластеризации ClickHouse | Аналог `Zookeeper`, представленный от ClickHouse | value_list=false, true | `611` | -| `resourceCPUKeeper` | `integer > 0` | `ДА` | `` | Пример: `100` | Указывается в Milicores
`1000` Mili == `1` Ядро | minvalue=50; maxvalue=8000 | `612` | -| `resourceMemoryKeeper` | `integer > 0` | `ДА` | `` | Пример: `256` | Указывается в Megabytes | minvalue=152; maxvalue=8192 | `613` | -| `resourceInstancesKeeper` | `integer > 0` | `ДА` | `` | Пример: `1` | Для **теста** - 1 нода.
Для **продуктива** - 3 ноды | minvalue=1; maxvalue=3; value_list=1, 3 | `614` | -| `ext_BACKUP_SCHEDULE` | `string` | `ДА` | `0 0 * * *` | Принимает формат `CRON` | | regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$ | `615` | -| `ext_BACKUP_NUM_TO_RETAIN` | `integer > 0` | `ДА` | `` | Пример: `7` | Кол-во **полных** резервных копий
Кол-во инкрементов - неограничено

Полная резервная копия выполняется раз в неделю
*Если изначально полной резервной копии нет* выполняется полный бекап
В остальные дни по крону выполняются **инкременты** | minvalue=3; maxvalue=60 | `616` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/12_s3.md b/docs/30_registry/resources/operations/12_s3.md deleted file mode 100644 index afb8b65..0000000 --- a/docs/30_registry/resources/operations/12_s3.md +++ /dev/null @@ -1,51 +0,0 @@ -# Operations: nubes_s3 - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `1` | resourceRealm, displayName | | -| `create_sub_user` | `subresource` | `create` | `sub_user` | `6` | subUserName, subUserAccess | | -| `delete` | `instance` | `delete` | `` | `5` | | | -| `delete_sub_user` | `subresource` | `delete` | `sub_user` | `7` | subUserName | | -| `modify` | `instance` | `modify` | `` | `4` | maxSizeGbPerUser, maxObjectsPerBucket, maxBucketsPerUser | При первичном вызове операции услуга Trial прекращает действие | -| `resume` | `instance` | `resume` | `` | `3` | | | -| `suspend` | `instance` | `suspend` | `` | `2` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `` | `ДА` | `` | Платформа для развертывания | кластер S3 для подключения | func=getAvailableResourceRealms | `163` | -| `displayName` | `string` | `ДА` | `` | Человеко-читаемое имя (транслит из Elma) - передаётся имя клиента | | | `320` | - -## Operation: create_sub_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `subUserName` | `string` | `ДА` | `` | | | | `60` | -| `subUserAccess` | `string` | `ДА` | `` | | | value_list=read, write, readwrite, full | `61` | - -## Operation: delete - -None. - -## Operation: delete_sub_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `subUserName` | `string` | `ДА` | `` | subUserName. По идее услуга уже создана - должен передаваться из ЛК | | | `63` | - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `maxSizeGbPerUser` | `integer` | `НЕТ` | `` | maxSizeGb. Передаём руками | maxSizeGb. Передаём руками | minvalue=-1; maxvalue=50000 | `50` | -| `maxObjectsPerBucket` | `integer > 0` | `НЕТ` | `` | Квота на бакет. Кол-во объектов. Передаём руками | Квота на бакет. Кол-во объектов. Передаём руками | minvalue=1; maxvalue=1e+07 | `51` | -| `maxBucketsPerUser` | `integer > 0` | `НЕТ` | `` | Квота на пользователя. Количество бакетов пользователя. Передаём руками | Квота на пользователя. Количество бакетов пользователя. Передаём руками | minvalue=1; maxvalue=1000 | `52` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/13_s3bucket.md b/docs/30_registry/resources/operations/13_s3bucket.md deleted file mode 100644 index 2f5ff35..0000000 --- a/docs/30_registry/resources/operations/13_s3bucket.md +++ /dev/null @@ -1,22 +0,0 @@ -# Operations: nubes_s3bucket - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `51` | s3UserUid, bucketName, maxSize, readAll, listAll, corsAll, placement | | -| `delete` | `instance` | `delete` | `` | `52` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `s3UserUid` | `uuid` | `ДА` | `` | UID Корневой услуги S3. На основе него будет создан бакет. | | ref_svc_id=12 | `124` | -| `bucketName` | `string` | `ДА` | `` | Имя бакета s3 | | | `125` | -| `maxSize` | `` | `ДА` | `-1` | Максимальный размер бакета s3. Если поставить -1, будет безлимит. Размер указывается в Bytes | Максимальный размер бакета s3. Если поставить 0, будет безлимит. Размер указывается в Bytes | | `126` | -| `readAll` | `boolean` | `ДА` | `false` | Публичный доступ на чтение позволяет любому пользователю интернета скачивать объекты из бакета. | | value_list=false, true | `127` | -| `listAll` | `boolean` | `ДА` | `false` | Публичный доступ к листингу позволяет любому пользователю интернета получить список объектов в бакете. | | value_list=false, true | `128` | -| `corsAll` | `boolean` | `ДА` | `false` | Публичный доступ к чтению настроек позволяет любому пользователю интернета читать конфигурации CORS | | value_list=false, true | `129` | -| `placement` | `string` | `ДА` | `HOT` | Класс хранилища, который используется по умолчанию при загрузке объектов. Чем холоднее, тем дешевле место, но дороже обращения | | value_list=HOT, COLD | `130` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/149_valo_tenant.md b/docs/30_registry/resources/operations/149_valo_tenant.md deleted file mode 100644 index c5f9574..0000000 --- a/docs/30_registry/resources/operations/149_valo_tenant.md +++ /dev/null @@ -1,37 +0,0 @@ -# Operations: nubes_valo_tenant - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `202` | resourceRealm, domain, valoOptions, s3Storage | | -| `delete` | `instance` | `delete` | `` | `206` | | | -| `modify` | `instance` | `modify` | `` | `203` | valoOptions, s3Storage | | -| `resume` | `instance` | `resume` | `` | `205` | | | -| `suspend` | `instance` | `suspend` | `` | `204` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | | | func=getAvailableResourceRealms | `655` | -| `domain` | `string` | `ДА` | `` | Будет добавлено в зону valo.ngcloud.ru | | regex=^[a-z0-9](?:[a-z0-9-]{3,61}[a-z0-9])?$; maxlength=61; minlength=3 | `656` | -| `valoOptions` | `map-fixed` | `ДА` | `{}` | | | | `657` | -| `s3Storage` | `integer > 0` | `ДА` | `10` | Параметр указывается в `Gb` | Данные хранятся в отдельном экземпляре S3 | minvalue=1; maxvalue=999 | `658` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `valoOptions` | `map-fixed` | `ДА` | `` | | | | `659` | -| `s3Storage` | `integer > 0` | `ДА` | `` | Параметр указывается в `Gb` | Данные хранятся в отдельном экземпляре S3 | | `660` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/149_valotenant.md b/docs/30_registry/resources/operations/149_valotenant.md deleted file mode 100644 index 05f97d3..0000000 --- a/docs/30_registry/resources/operations/149_valotenant.md +++ /dev/null @@ -1,59 +0,0 @@ -# Operations for nubes_valoTenant - -Service ID: `149` - -Service: VALO Cloud - -## UI description - -# Инструкция по развертыванию Тенант Valo через платформу

## 1. Общая информация
Тенант Valo — логический изолированный экземпляр сервиса VALO Cloud, предоставляющий защищённое облачное хранилище, синхронизацию данных и доступ к документам с различных устройств. При создании тенант автоматически разворачивается в тестовом режиме сроком на 2 месяца. Перевод в промышленную эксплуатацию выполняется отдельной операцией.

### Доступные операции

* **create** — создание нового тенанта в тестовом режиме сроком на 2 месяца.
* **modify** — изменение настроек тенанта, включая перевод из ТЕСТ в ПРОД.
* **suspend** — выключение (приостановка работы) тенанта.
* **resume** — включение ранее приостановленного тенанта.
* **delete** — удаление тенанта; доступно только после выполнения операции suspend.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создан тенант.
Пример значения: `valo.ngcloud.ru`.

### DNS-Префикс
Описание: Будет добавлено в зону valo.ngcloud.ru
Пример значения: `mysimpledomain`.

### Параметры хранилища
Описание: Сколько места будет выделено под использование в тенанте. Данные хранятся в S3. Размер указывается в Gigabytes
Пример значения: `10`.

### Настройки тенанта
Описание: Ряд конфигурации Valo-тенанта, такие как настройки пользователя и доступного функционала
Пример значения: `опционально в рамках настройки`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
Достаточно развернуть тенант в ТЕСТ. Срок предоставляется в 2 месяца. По истечению срока тенант автоматически переводится в `suspend` на стороне ресурсной платформы

### Промышленное окружение
Для разблокировки используйте операцию `modify`

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Статус тенанта
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация
Тенант всегда создаётся в режиме ТЕСТ и не может быть сразу переведён в ПРОД без операции modify.
Удаление тенанта возможно только после его выключения с помощью операции suspend.
Срок тестового режима составляет 2 месяца с момента создания.
Операции suspend и resume используются для временного управления доступностью сервиса без потери конфигурации.
- -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 202) -- `delete` (id: 206) -- `modify` (id: 203) -- `resume` (id: 205) -- `suspend` (id: 204) - -## Operation: create - -Operation ID: `202` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `true` | `` | `655` | `` | `` | `getAvailableResourceRealms` | `` | `` | `` | `false` | `` | -| `domain` | `string` | `true` | `` | `656` | `` | `` | `` | `^[a-z0-9](?:[a-z0-9-]{3,61}[a-z0-9])?$` | `` | `` | `false` | `` | -| `valoOptions` | `map-fixed` | `true` | `{}` | `657` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `s3Storage` | `integer > 0` | `true` | `10` | `658` | `` | `` | `` | `` | `1` | `999` | `false` | `` | - -## Operation: delete - -Operation ID: `206` - -No parameters. - -## Operation: modify - -Operation ID: `203` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `valoOptions` | `map-fixed` | `true` | `` | `659` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `s3Storage` | `integer > 0` | `true` | `` | `660` | `` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: resume - -Operation ID: `205` - -No parameters. - -## Operation: suspend - -Operation ID: `204` - -No parameters. - diff --git a/docs/30_registry/resources/operations/150_k8s_sthutrval_cluster.md b/docs/30_registry/resources/operations/150_k8s_sthutrval_cluster.md deleted file mode 100644 index ea405de..0000000 --- a/docs/30_registry/resources/operations/150_k8s_sthutrval_cluster.md +++ /dev/null @@ -1,62 +0,0 @@ -# Operations: nubes_k8s_sthutrval_cluster - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `108` | nsxtUid, clusterName, controlPlaneSizingPolicy, controlPlaneSizingDisk, controlPlaneCount, workersSizingPolicy, workersSizingDisk, workersCount, appVersion, needExternalAddressAPI, accessIpListAPI, needExternalAddressIngress, accessIpListIngress, vdcUid | | -| `delete` | `instance` | `delete` | `` | `109` | | | -| `modify` | `instance` | `modify` | `` | `110` | controlPlaneCount, workersCount, accessIpListAPI, accessIpListIngress, appVersion, controlPlaneSizingDisk, workersSizingDisk | | -| `reconcile` | `action` | `reconcile` | `` | `253` | | | -| `resume` | `instance` | `resume` | `` | `174` | | | -| `suspend` | `instance` | `suspend` | `` | `173` | | | -| `update_secrets` | `action` | `update_secrets` | `` | `179` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nsxtUid` | `uuid` | `ДА` | `` | InstanceUid nsxt. Nsxt должен быть создан | | ref_svc_id=22 | `344` | -| `clusterName` | `string` | `ДА` | `example1` | Наименование кластера Kubernetes. Имя будет использоваться в fqdn (svc.$CLUSTER_NAME) | | regex=(?=^.{1,63}$)^[a-z0-9]([a-z0-9-]*[a-z0-9])?$; unique_scope=provider | `345` | -| `controlPlaneSizingPolicy` | `string` | `ДА` | `` | Настройка Control Plane. CPU (шт) / MEM (gb).
Наверное, должна подтягиваться из свойств ресурсной платформы | | | `346` | -| `controlPlaneSizingDisk` | `integer > 0` | `ДА` | `30` | Настройка Control Plane. Disk (Gb) | | minvalue=20; maxvalue=999 | `347` | -| `controlPlaneCount` | `integer > 0` | `ДА` | `1` | | | minvalue=1; maxvalue=9 | `348` | -| `workersSizingPolicy` | `string` | `ДА` | `` | Настройка workers. CPU (шт) / MEM (gb) | | | `349` | -| `workersSizingDisk` | `integer > 0` | `ДА` | `40` | Настройка workers. Disk (Gb) | | minvalue=20; maxvalue=999 | `350` | -| `workersCount` | `integer > 0` | `ДА` | `2` | Настройка workers. Кол-во нод | | minvalue=1; maxvalue=99 | `351` | -| `appVersion` | `string` | `ДА` | `2.12.1` | Версия Штурвал (не является версией Kubernetes) | | value_list=2.12.1, 2.11.0 | `352` | -| `needExternalAddressAPI` | `boolean` | `ДА` | `true` | Выделяет внешний IP для доступа к kubernetes API. Пока нельзя выставить false | | value_list=true | `353` | -| `accessIpListAPI` | `json` | `ДА` | `[]` | Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем | | | `354` | -| `needExternalAddressIngress` | `boolean` | `ДА` | `true` | Выделяет внешний IP для доступа к Ingress | | value_list=true | `355` | -| `accessIpListIngress` | `json` | `ДА` | `[]` | Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем | | | `356` | -| `vdcUid` | `uuid` | `ДА` | `` | | | ref_svc_id=21 | `747` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `controlPlaneCount` | `integer > 0` | `НЕТ` | `` | Кол-во нод Control Plane | | minvalue=1; maxvalue=9 | `362` | -| `workersCount` | `integer > 0` | `НЕТ` | `` | Кол-во нод Workers | | minvalue=1; maxvalue=99 | `363` | -| `accessIpListAPI` | `json` | `НЕТ` | `` | Access IP List для подключения к Kubernetes API. Указывается массив. Если передан пустой массив, доступ выделяется всем | | | `364` | -| `accessIpListIngress` | `json` | `НЕТ` | `` | Access IP List для подключения к Ingress. Указывается массив. Если передан пустой массив, доступ выделяется всем | | | `365` | -| `appVersion` | `string` | `НЕТ` | `` | Версия Штурвал (не является версией Kubernetes)
Понижать версию нельзя
Обновиться на несколько минорных нельзя
Невозможно перепрыгнуть не с последней минорной на мажорную
Можно обновиться на несколько патчей | | value_list=2.11.0, 2.12.1 | `563` | -| `controlPlaneSizingDisk` | `integer > 0` | `ДА` | `` | | | | `637` | -| `workersSizingDisk` | `integer > 0` | `ДА` | `` | | | | `638` | - -## Operation: reconcile - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. - -## Operation: update_secrets - -None. diff --git a/docs/30_registry/resources/operations/150_k8ssthutrvalcluster.md b/docs/30_registry/resources/operations/150_k8ssthutrvalcluster.md deleted file mode 100644 index 3eaa1d4..0000000 --- a/docs/30_registry/resources/operations/150_k8ssthutrvalcluster.md +++ /dev/null @@ -1,88 +0,0 @@ -# Operations for nubes_k8sSthutrvalCluster - -Service ID: `150` - -Service: Kubernetes кластер Штурвал - -## UI description - -Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 108) -- `delete` (id: 109) -- `modify` (id: 110) -- `reconcile` (id: 253) -- `resume` (id: 174) -- `suspend` (id: 173) -- `update_secrets` (id: 179) - -## Operation: create - -Operation ID: `108` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `nsxtUid` | `uuid` | `true` | `` | `344` | `22` | `` | `` | `` | `` | `` | `false` | `` | -| `clusterName` | `string` | `true` | `example1` | `345` | `` | `` | `` | `(?=^.{1,63}$)^[a-z0-9]([a-z0-9-]*[a-z0-9])?$` | `` | `` | `false` | `` | -| `controlPlaneSizingPolicy` | `string` | `true` | `` | `346` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `controlPlaneSizingDisk` | `integer > 0` | `true` | `30` | `347` | `` | `` | `` | `` | `20` | `999` | `false` | `` | -| `controlPlaneCount` | `integer > 0` | `true` | `1` | `348` | `` | `` | `` | `` | `1` | `9` | `false` | `` | -| `workersSizingPolicy` | `string` | `true` | `` | `349` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `workersSizingDisk` | `integer > 0` | `true` | `40` | `350` | `` | `` | `` | `` | `20` | `999` | `false` | `` | -| `workersCount` | `integer > 0` | `true` | `2` | `351` | `` | `` | `` | `` | `1` | `99` | `false` | `` | -| `appVersion` | `string` | `true` | `2.12.1` | `352` | `` | `2.12.1,2.11.0` | `` | `` | `` | `` | `false` | `` | -| `needExternalAddressAPI` | `boolean` | `true` | `true` | `353` | `` | `true` | `` | `` | `` | `` | `false` | `` | -| `accessIpListAPI` | `json` | `true` | `[]` | `354` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `needExternalAddressIngress` | `boolean` | `true` | `true` | `355` | `` | `true` | `` | `` | `` | `` | `false` | `` | -| `accessIpListIngress` | `json` | `true` | `[]` | `356` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `vdcUid` | `uuid` | `true` | `` | `747` | `21` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: delete - -Operation ID: `109` - -No parameters. - -## Operation: modify - -Operation ID: `110` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `controlPlaneCount` | `integer > 0` | `false` | `` | `362` | `` | `` | `` | `` | `1` | `9` | `false` | `` | -| `workersCount` | `integer > 0` | `false` | `` | `363` | `` | `` | `` | `` | `1` | `99` | `false` | `` | -| `accessIpListAPI` | `json` | `false` | `` | `364` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `accessIpListIngress` | `json` | `false` | `` | `365` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `appVersion` | `string` | `false` | `` | `563` | `` | `2.11.0,2.12.1` | `` | `` | `` | `` | `false` | `` | -| `controlPlaneSizingDisk` | `integer > 0` | `true` | `` | `637` | `` | `` | `` | `` | `` | `` | `false` | `` | -| `workersSizingDisk` | `integer > 0` | `true` | `` | `638` | `` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: reconcile - -Operation ID: `253` - -No parameters. - -## Operation: resume - -Operation ID: `174` - -No parameters. - -## Operation: suspend - -Operation ID: `173` - -No parameters. - -## Operation: update_secrets - -Operation ID: `179` - -No parameters. - diff --git a/docs/30_registry/resources/operations/19_vc_org.md b/docs/30_registry/resources/operations/19_vc_org.md deleted file mode 100644 index 4733eb0..0000000 --- a/docs/30_registry/resources/operations/19_vc_org.md +++ /dev/null @@ -1,39 +0,0 @@ -# Operations: nubes_vc_org - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `136` | resourceRealm, organizationType | `IaaS` - Доступ в Keycloak предоставляется пользователю, который создаёт услугу
`SaaS` - Без доступа к Keycloak | -| `delete` | `instance` | `delete` | `` | `137` | | Удалить возможно только через 14 дней после выполнения операции `suspend`
**ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого тенанта**

Если существуют инстансы VDC, Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов | -| `modify` | `instance` | `modify` | `` | `207` | vIPConfigure | Для возможности изменения параметров предварительно необходимо создать **Виртуальный датацентр (VDC)**, потом **Сетевой шлюз периметра (Edge Gateway)**
Также при удалении ipSpaces убедитесь, что все внешние IP удалены. В случае если хоть одна привязка vIP есть, данный ipSpace удалён **не будет** | -| `reconcile` | `action` | `reconcile` | `` | `249` | | | -| `resume` | `instance` | `resume` | `` | `144` | | | -| `suspend` | `instance` | `suspend` | `` | `143` | | Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри тенанта | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Облако в котором будет развёрнут тенант | Выбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы | func=getAvailableResourceRealms | `418` | -| `organizationType` | `string` | `ДА` | `iaas` | | Доступ к организации предоставляется только при выборе `iaas` | value_list=iaas, saas | `556` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vIPConfigure` | `array-map-fixed` | `ДА` | `` | | | | `662` | - -## Operation: reconcile - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/19_vcorg.md b/docs/30_registry/resources/operations/19_vcorg.md deleted file mode 100644 index f5639bb..0000000 --- a/docs/30_registry/resources/operations/19_vcorg.md +++ /dev/null @@ -1,71 +0,0 @@ -# Operations for nubes_vcOrg - -Service ID: `19` - -Service: Организация в Cloud Director - -## UI description - -# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.
**modify** — Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).
**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.
**resume** — Разморозка организации, восстановление функций управления.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создана организация.
Пример значения: `ngcloud.ru`.

### Тип организации
Описание: тип создаваемой организации.
Варианты:
- `iaas` — организация с прямым доступом к облаку и авторизацией через Keycloak.
- `saas` — организация под управлением Nubes, без прямого доступа к облаку.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.

### Промышленное окружение
- Тип организации: `saas` (упрощённая модель использования).

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Url организации
Для быстрого доступа в тенант

### Статус организации
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация

- Для конфигурации внешних IP внутри организации необходимо предварительно создать:
-- хотя бы один **Виртуальный датацентр (VDC)** привязанный к этой организации;
-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к vdc выше.
- Удаление организации возможно только через 14 дней после перевода в состояние suspend.
- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок и иных объектов.
- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.
- Для iaas-организаций доступ осуществляется через Keycloak. - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 136) -- `delete` (id: 137) -- `modify` (id: 207) -- `reconcile` (id: 249) -- `resume` (id: 144) -- `suspend` (id: 143) - -## Operation: create - -Operation ID: `136` - -`IaaS` - Доступ в Keycloak предоставляется пользователю, который создаёт услугу
`SaaS` - Без доступа к Keycloak - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `true` | `` | `418` | `` | `` | `getAvailableResourceRealms` | `` | `` | `` | `false` | `` | -| `organizationType` | `string` | `true` | `iaas` | `556` | `` | `iaas,saas` | `` | `` | `` | `` | `false` | `` | - -## Operation: delete - -Operation ID: `137` - -Удалить возможно только через 14 дней после выполнения операции `suspend`
**ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого тенанта**

Если существуют инстансы VDC, Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов - -No parameters. - -## Operation: modify - -Operation ID: `207` - -Для возможности изменения параметров предварительно необходимо создать **Виртуальный датацентр (VDC)**, потом **Сетевой шлюз периметра (Edge Gateway)**
Также при удалении ipSpaces убедитесь, что все внешние IP удалены. В случае если хоть одна привязка vIP есть, данный ipSpace удалён **не будет** - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `vIPConfigure` | `array-map-fixed` | `true` | `` | `662` | `` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: reconcile - -Operation ID: `249` - -No parameters. - -## Operation: resume - -Operation ID: `144` - -No parameters. - -## Operation: suspend - -Operation ID: `143` - -Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри тенанта - -No parameters. - diff --git a/docs/30_registry/resources/operations/1_dummy.md b/docs/30_registry/resources/operations/1_dummy.md deleted file mode 100644 index 7eaef22..0000000 --- a/docs/30_registry/resources/operations/1_dummy.md +++ /dev/null @@ -1,55 +0,0 @@ -# Operations: nubes_dummy - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `18` | durationMs, failAtStart, failInProgress, whereFail, resourceRealm, bodymessage, mapExample, jsonExample, nestedRefExample, yamlExample, mapFixed, arrayMapFixedExample | Это мануал к операции CREATE сервиса Болванка | -| `delete` | `instance` | `delete` | `` | `71` | | | -| `modify` | `instance` | `modify` | `` | `92` | durationMs, failAtStart, failInProgress, whereFail, bodymessage, mapExample, jsonExample | | -| `redeploy` | `action` | `redeploy` | `` | `240` | | | -| `resume` | `instance` | `resume` | `` | `94` | | | -| `suspend` | `instance` | `suspend` | `` | `93` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `durationMs` | `integer >= 0` | `ДА` | `0` | перед завершением подождать (sleep) столько миллисекунд | перед завершением подождать (sleep) столько миллисекунд | | `198` | -| `failAtStart` | `boolean` | `ДА` | `false` | если true, завершить джоб, ничего не записывая в cmdb | **Операция не будет завершена**
Она будет в постоянном статусе PENDING, однако в Jenkins Job завершится с ошибкой | value_list=false, true | `199` | -| `failInProgress` | `boolean` | `ДА` | `false` | если true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdb | если true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdb | value_list=false, true | `200` | -| `whereFail` | `integer > 0` | `НЕТ` | `1` | принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault write | принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault write | value_list=1, 2, 3 | `201` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование ресурсной платформы для подключения | func=getAvailableResourceRealms | `242` | -| `bodymessage` | `string` | `НЕТ` | `` | Дата, уходящая в Vault | Дата, уходящая в Vault | | `286` | -| `mapExample` | `map` | `НЕТ` | `` | | | | `321` | -| `jsonExample` | `json` | `НЕТ` | `` | Для тестирования интерфейса | Для тестирования интерфейса. Сюда можно писать корректный json | | `322` | -| `nestedRefExample` | `` | `НЕТ` | `` | | | | `396` | -| `yamlExample` | `yaml` | `НЕТ` | `` | | | | `447` | -| `mapFixed` | `map-fixed` | `НЕТ` | `` | Новый тип поля | | | `647` | -| `arrayMapFixedExample` | `array-map-fixed` | `НЕТ` | `` | Array of map-fixed | | | `654` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `durationMs` | `integer >= 0` | `ДА` | `0` | перед завершением подождать (sleep) столько миллисекунд | перед завершением подождать (sleep) столько миллисекунд | | `287` | -| `failAtStart` | `boolean` | `ДА` | `false` | если true, завершить джоб, ничего не записывая в cmdb | | value_list=false, true | `288` | -| `failInProgress` | `boolean` | `ДА` | `false` | если true, корректно начать выполнение джоба, но в процессе завершить аварийно, ничего не записывая в cmdb | | value_list=false, true | `289` | -| `whereFail` | `integer > 0` | `НЕТ` | `` | принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault write | принимает 1,2,3. Работает с failInProgress. 1 - упасть в prepare. 2 - упасть внутри блока Data fill. 3 - упасть после vault write | value_list=1, 2, 3 | `290` | -| `bodymessage` | `` | `НЕТ` | `` | Дата, уходящая в Vault | Дата, уходящая в Vault | | `291` | -| `mapExample` | `map` | `НЕТ` | `{}` | | | | `373` | -| `jsonExample` | `` | `НЕТ` | `` | | | | `374` | - -## Operation: redeploy - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/20_vc_org_saas.md b/docs/30_registry/resources/operations/20_vc_org_saas.md deleted file mode 100644 index 626f49a..0000000 --- a/docs/30_registry/resources/operations/20_vc_org_saas.md +++ /dev/null @@ -1,26 +0,0 @@ -# Operations: nubes_vc_org_saas - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `8` | resourceRealm | Создание организации в Cloud Director
Id в клауд директоре создаётся на основе contragentCode | -| `delete` | `instance` | `delete` | `` | `23` | | | -| `resume` | `instance` | `resume` | `` | `119` | | | -| `suspend` | `instance` | `suspend` | `` | `118` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование ресурсной платформы | func=getAvailableResourceRealms | `185` | - -## Operation: delete - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/20_vcorgsaas.md b/docs/30_registry/resources/operations/20_vcorgsaas.md deleted file mode 100644 index b0980d9..0000000 --- a/docs/30_registry/resources/operations/20_vcorgsaas.md +++ /dev/null @@ -1,48 +0,0 @@ -# Operations for nubes_vcOrgSaas - -Service ID: `20` - -Service: Организация [DEPRECATED] - -## UI description - -Верхнеуровневая сущность создаваемая для Заказчика.
Внутри Организация вы можете создать: Виртуальные датацентры, Каталоги. - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 8) -- `delete` (id: 23) -- `resume` (id: 119) -- `suspend` (id: 118) - -## Operation: create - -Operation ID: `8` - -Создание организации в Cloud Director
Id в клауд директоре создаётся на основе contragentCode - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `true` | `` | `185` | `` | `` | `getAvailableResourceRealms` | `` | `` | `` | `false` | `` | - -## Operation: delete - -Operation ID: `23` - -No parameters. - -## Operation: resume - -Operation ID: `119` - -No parameters. - -## Operation: suspend - -Operation ID: `118` - -No parameters. - diff --git a/docs/30_registry/resources/operations/21_vc_vdc.md b/docs/30_registry/resources/operations/21_vc_vdc.md deleted file mode 100644 index c2240e4..0000000 --- a/docs/30_registry/resources/operations/21_vc_vdc.md +++ /dev/null @@ -1,47 +0,0 @@ -# Operations: nubes_vc_vdc - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `9` | organizationUid, providerVdc, storageConfig, cpuGuaranteed, memGuaranteed, cpuAllocated, memAllocated, networkProvider | | -| `delete` | `instance` | `delete` | `` | `24` | | Удалить возможно только через 14 дней после выполнения операции `suspend`
**ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого VDC**

Если существуют инстансы Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов | -| `modify` | `instance` | `modify` | `` | `112` | cpuAllocated, memAllocated, storageConfig | | -| `reconcile` | `action` | `reconcile` | `` | `250` | | | -| `resume` | `instance` | `resume` | `` | `172` | | | -| `suspend` | `instance` | `suspend` | `` | `171` | | Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри VDC | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `organizationUid` | `uuid` | `ДА` | `` | | Для создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director` | ref_svc_id=19 | `30` | -| `providerVdc` | `string` | `ДА` | `` | | Приписка `2.8` - Скорость vCPU - 2800MHz
И так далее...
| | `335` | -| `storageConfig` | `array-map-fixed` | `ДА` | `` | | Первая политика в списке указывается как "По умолчанию" | | `361` | -| `cpuGuaranteed` | `integer > 0` | `ДА` | `20` | % резервирования | Свойство нельзя изменить после создания | value_list=20, 50, 80 | `397` | -| `memGuaranteed` | `integer > 0` | `ДА` | `20` | % резервирования | После создания нельзя изменить | value_list=20, 50, 80 | `398` | -| `cpuAllocated` | `integer > 0` | `ДА` | `10` | шт | | minvalue=1; maxvalue=200 | `557` | -| `memAllocated` | `integer > 0` | `ДА` | `20` | gb | | minvalue=1; maxvalue=4096 | `558` | -| `networkProvider` | `string` | `ДА` | `` | | | | `746` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `cpuAllocated` | `integer > 0` | `ДА` | `` | шт | | minvalue=1; maxvalue=999 | `560` | -| `memAllocated` | `integer > 0` | `ДА` | `` | gb | | minvalue=1; maxvalue=1024 | `561` | -| `storageConfig` | `array-map-fixed` | `ДА` | `` | | Первая политика в списке указывается как "По умолчанию" | | `562` | - -## Operation: reconcile - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/22_vc_nsxt.md b/docs/30_registry/resources/operations/22_vc_nsxt.md deleted file mode 100644 index 2e5edcf..0000000 --- a/docs/30_registry/resources/operations/22_vc_nsxt.md +++ /dev/null @@ -1,35 +0,0 @@ -# Operations: nubes_vc_nsxt - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `10` | vdcUid, needEnableAVI, virtualServicesCount, vdcType, vdcGroupUid | | -| `delete` | `instance` | `delete` | `` | `25` | | Невозможно удалить если routed-сеть в Edge связана с:
- vApp
- VM
- Kubernetes-кластер Штурвал

Запустить операцию возможно, но будет ошибка | -| `modify` | `instance` | `modify` | `` | `111` | needEnableAVI, virtualServicesCount, needExternalAddressSNAT, ipSpaceName | Для создания SNAT Правила убедитесь, что в организации есть свободные IP
Редактировать кол-во свободных IP можно в услуге `Организация в Cloud Director` -> `modify` | -| `reconcile` | `action` | `reconcile` | `` | `252` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vdcUid` | `string` | `НЕТ` | `` | UUID Услуги `Виртуальный датацентр (vDC)` | Необходимо, если выбран тип подключаемой VDC: `vdc` | ref_svc_id=21 | `8` | -| `needEnableAVI` | `boolean` | `ДА` | `false` | Включение Load Balancer | Параметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указать | value_list=false, true | `340` | -| `virtualServicesCount` | `integer > 0` | `НЕТ` | `1` | Кол-во виртуальных сервисов, которые выделяются на AVI | Во избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB` | minvalue=1; maxvalue=4 | `341` | -| `vdcType` | `string` | `ДА` | `vdc` | Тип родительской услуги | При выборе vdc обеспечивает сетевую доступность только в рамках этого vdc
При выборе groupvdc обеспечивает сетевую доступность между всеми vdc, которые включены в groupvdc | value_list=vdc, vdcGroup | `621` | -| `vdcGroupUid` | `string` | `НЕТ` | `` | UUID Услуги `Группа виртуальных датацентров (groupvDC)` | Необходимо, если выбран тип подключаемой VDC: `groupvdc` | ref_svc_id=29 | `622` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `needEnableAVI` | `boolean` | `НЕТ` | `` | Включение Load Balancer | Параметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указать | value_list=false, true | `368` | -| `virtualServicesCount` | `integer > 0` | `НЕТ` | `` | Кол-во виртуальных сервисов, которые выделяются на AVI | Во избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB` | minvalue=1; maxvalue=4 | `369` | -| `needExternalAddressSNAT` | `boolean` | `НЕТ` | `` | Создать правило SNAT на подсеть `10.10.102.0/24` | Параметр `ip Space для VIP` станет обязательным, если указан `true` | value_list=false, true | `371` | -| `ipSpaceName` | `string` | `НЕТ` | `` | Имя ip Space для внешнего IP

getKeyListFromStruct(getInstanceState(getValueFromStruct(getInstanceState(getValueFromStruct(getInstanceState(), "params.vdcUid")), "params.organizationUid")), "params.vIPConfigure") | Необходимо указывать, если включён параметр `Выделить VIP для SNAT` | | `372` | - -## Operation: reconcile - -None. diff --git a/docs/30_registry/resources/operations/23_vc_vm.md b/docs/30_registry/resources/operations/23_vc_vm.md deleted file mode 100644 index fb4403f..0000000 --- a/docs/30_registry/resources/operations/23_vc_vm.md +++ /dev/null @@ -1,43 +0,0 @@ -# Operations: nubes_vc_vm - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `26` | vappUid, vmName, vmCpu, vmRam, vmDisksize, templateName, accessIpList, ipSpaceName | | -| `delete` | `instance` | `delete` | `` | `29` | | | -| `modify` | `instance` | `modify` | `` | `68` | vmCpu, vmRam, vmDisksize, accessIpList | Операция автоматически останавливает ВМ. | -| `resume` | `instance` | `resume` | `` | `28` | | | -| `suspend` | `instance` | `suspend` | `` | `27` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vappUid` | `uuid` | `ДА` | `` | InstanceUid vApp. vApp должен быть создан | InstanceUid vApp. vApp должен быть создан | ref_svc_id=26 | `33` | -| `vmName` | `string` | `ДА` | `vm0001` | Имя ВМ. Не поддерживает спец-символы | Имя ВМ. Не поддерживает спец-символы | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | `35` | -| `vmCpu` | `string` | `ДА` | `2` | CPU | CPU | | `36` | -| `vmRam` | `string` | `ДА` | `2` | RAM (GB) | RAM (GB) | | `37` | -| `vmDisksize` | `string` | `ДА` | `10` | Размер диска под сервис (GB) | Размер диска под сервис (GB) | | `38` | -| `templateName` | `string` | `ДА` | `RockyLinux_9-16G` | ОС | ОС | value_list=RockyLinux_9-16G, OracleLinux_9-16G, Ubuntu_24-20G, Ubuntu_22-20G | `176` | -| `accessIpList` | `string` | `ДА` | `79.111.119.78/32 185.247.187.1/32` | Вставить содержимое из 'curl ifconfig.io'
IP адреса в CIDR формате через пробел для настройки аксес листов | IP адреса в CIDR формате через пробел для настройки аксес листов | | `177` | -| `ipSpaceName` | `string` | `ДА` | `` | Брать из свойств ресурсной платформы
.vcd.ipSpace

Имя IP-space для выделения внешнего IP (IP выделяется обязательно) | | | `406` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vmCpu` | `integer > 0` | `НЕТ` | `` | CPU | CPU | | `186` | -| `vmRam` | `integer > 0` | `НЕТ` | `` | RAM | RAM | | `187` | -| `vmDisksize` | `integer > 0` | `НЕТ` | `` | Размер диска под сервис (GB) | Размер диска под сервис (GB) | | `188` | -| `accessIpList` | `string` | `НЕТ` | `` | IP адреса в CIDR формате через пробел для настройки аксес листов | IP адреса в CIDR формате через пробел для настройки аксес листов | | `189` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/24_d_e_p_r_e_c_a_t_e_d.md b/docs/30_registry/resources/operations/24_d_e_p_r_e_c_a_t_e_d.md deleted file mode 100644 index e573b29..0000000 --- a/docs/30_registry/resources/operations/24_d_e_p_r_e_c_a_t_e_d.md +++ /dev/null @@ -1,3 +0,0 @@ -# Operations: nubes_d_e_p_r_e_c_a_t_e_d - -None. diff --git a/docs/30_registry/resources/operations/24_deprecated.md b/docs/30_registry/resources/operations/24_deprecated.md deleted file mode 100644 index 972da6a..0000000 --- a/docs/30_registry/resources/operations/24_deprecated.md +++ /dev/null @@ -1,16 +0,0 @@ -# Operations for nubes_DEPRECATED - -Service ID: `24` - -Service: DEPRECATED Правила маршрутизации для VM (vc_nat) - -## UI description - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -No operations found. diff --git a/docs/30_registry/resources/operations/24_service_24.md b/docs/30_registry/resources/operations/24_service_24.md deleted file mode 100644 index 736f35d..0000000 --- a/docs/30_registry/resources/operations/24_service_24.md +++ /dev/null @@ -1,3 +0,0 @@ -# Operations: nubes_service_24 - -None. diff --git a/docs/30_registry/resources/operations/25_vcexternalip.md b/docs/30_registry/resources/operations/25_vcexternalip.md deleted file mode 100644 index 203fbc2..0000000 --- a/docs/30_registry/resources/operations/25_vcexternalip.md +++ /dev/null @@ -1,41 +0,0 @@ -# Operations: nubes_vcexternalip - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `56` | serviceUid, dnatCreate, internalPortAccess, snatCreate, internalAddrAccess, fromServiceNamespace, fromServiceCloudEdgeName, fromServiceCloudVdcName, fromServiceCloudOrgName, fromServiceCloudVmwareUrl, ipSpaceName, resourceRealm, fromServiceCloudEdgeScope, fromServiceVdcGroupName | | -| `delete` | `instance` | `delete` | `` | `57` | | | -| `modify` | `instance` | `modify` | `` | `197` | serviceUid, ipSpaceName, dnatCreate, snatCreate, internalPortAccess, internalAddrAccess | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `serviceUid` | `string` | `ДА` | `` | | | | `140` | -| `dnatCreate` | `boolean` | `ДА` | `true` | Необходимо создать DNAT-правило. | | | `141` | -| `internalPortAccess` | `string` | `ДА` | `5432` | Порт для связки ната с адресом. Несколько значений можно передавать через пробел. Если передать all, то dnat будет на все порты. Требует dnatCreate=true
| | | `142` | -| `snatCreate` | `boolean` | `НЕТ` | `` | Необходимо создать SNAT-правило.
| | | `143` | -| `internalAddrAccess` | `string` | `ДА` | `` | Внутренний адрес для связки ната. Требует dnatCreate=true или snatCreate=true | | | `144` | -| `fromServiceNamespace` | `string` | `ДА` | `` | Namespace составной услуги (для отображения правил FW) | | | `324` | -| `fromServiceCloudEdgeName` | `string` | `НЕТ` | `` | Edge составной услуги (указывать, если resourceRealm связан с CloudDirector) | | | `325` | -| `fromServiceCloudVdcName` | `` | `НЕТ` | `` | Vdc составной услуги (указывать, если resourceRealm связан с CloudDirector) | | | `326` | -| `fromServiceCloudOrgName` | `string` | `НЕТ` | `` | Org составной услуги (указывать, если resourceRealm связан с CloudDirector) | | | `327` | -| `fromServiceCloudVmwareUrl` | `string` | `НЕТ` | `` | Api-Url составной услуги (указывать, если resourceRealm связан с CloudDirector) | | | `328` | -| `ipSpaceName` | `string` | `ДА` | `` | Тип ip Space (internet-ipv4-v1 / internet-antiddos-v1 / internet-no-antiddos-v1) | | | `336` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `488` | -| `fromServiceCloudEdgeScope` | `string` | `НЕТ` | `` | | | | `624` | -| `fromServiceVdcGroupName` | `string` | `НЕТ` | `` | | | | `626` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `serviceUid` | `string` | `ДА` | `` | | | | `627` | -| `ipSpaceName` | `string` | `ДА` | `` | | | | `628` | -| `dnatCreate` | `boolean` | `ДА` | `` | | | | `629` | -| `snatCreate` | `boolean` | `ДА` | `` | | | | `630` | -| `internalPortAccess` | `string` | `ДА` | `` | | | | `631` | -| `internalAddrAccess` | `string` | `ДА` | `` | | | | `632` | diff --git a/docs/30_registry/resources/operations/26_vapp.md b/docs/30_registry/resources/operations/26_vapp.md deleted file mode 100644 index 7942b4f..0000000 --- a/docs/30_registry/resources/operations/26_vapp.md +++ /dev/null @@ -1,28 +0,0 @@ -# Operations: nubes_vapp - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `69` | nsxtUid, vappName, vdcUid | | -| `delete` | `instance` | `delete` | `` | `70` | | | -| `resume` | `instance` | `resume` | `` | `209` | | | -| `suspend` | `instance` | `suspend` | `` | `208` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `nsxtUid` | `uuid` | `ДА` | `` | UUID Услуги `Сетевой шлюз периметра (Edge)` | К какой сети может быть подключен виртуальный каталог | ref_svc_id=22 | `190` | -| `vappName` | `string` | `ДА` | `` | Уникальное в рамках организации | Имеет строгую маску `^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$`

Используется в формировании DNS-Имени (для виртуальных машин) | regex=^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$; minlength=3 | `191` | -| `vdcUid` | `uuid` | `ДА` | `` | UUID Услуги `Виртуальный датацентр (vDC)` | В каких ресурсах будет создан виртуальный каталог | ref_svc_id=21 | `623` | - -## Operation: delete - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/27_vc_vm_v2.md b/docs/30_registry/resources/operations/27_vc_vm_v2.md deleted file mode 100644 index ebef032..0000000 --- a/docs/30_registry/resources/operations/27_vc_vm_v2.md +++ /dev/null @@ -1,33 +0,0 @@ -# Operations: nubes_vc_vm_v2 - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `100` | serverListJson | | -| `delete` | `instance` | `delete` | `` | `101` | | | -| `modify` | `instance` | `modify` | `` | `104` | serverListJson | | -| `resume` | `instance` | `resume` | `` | `102` | | | -| `suspend` | `instance` | `suspend` | `` | `103` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `serverListJson` | `json` | `ДА` | `[{}]` | Необходимо изменить vappUid и ipSpaceName
Пример конфигурации взять по ссылке ниже

Объект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2) | | maxlength=65536; minlength=10 | `301` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `serverListJson` | `json` | `ДА` | `[{}]` | Объект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2) | | maxlength=65536; minlength=10 | `302` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/28_vc_vm_v3.md b/docs/30_registry/resources/operations/28_vc_vm_v3.md deleted file mode 100644 index 5fce3da..0000000 --- a/docs/30_registry/resources/operations/28_vc_vm_v3.md +++ /dev/null @@ -1,68 +0,0 @@ -# Operations: nubes_vc_vm_v3 - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `132` | vappUid, vmName, vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, imageVm, cloudInit, userLogin, userPublicKey, accessPortList | # Документация по использованию услуги развёртывания ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины

---

## Параметры для развёртывания ВМ

### Обязательные параметры:

**vappUid**
UUID vApp, в которой будет создаваться виртуальная машина.
*Пример: WZ00400*

**vmName**
Уникальное имя виртуальной машины.
*Пример: test-vm*

**vmCpu**
Количество ядер процессора. Должно быть больше 0.
*Пример: 1*

**vmRam**
Объем оперативной памяти в гигабайтах. Должно быть больше 0.
*Пример: 1*


**accessPortList**
Белый список портов для доступа к виртуальной машине извне в формате JSON.
*Пример: ["22","10050]*

**imageVm**
Образ операционной системы для развёртывания.
*Доступные значения: RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G*

**userLogin**
Логин пользователя для SSH-доступа.
*По умолчанию: myuser*

**userPublicKey**
Публичный SSH-ключ пользователя в формате OpenSSH.
*Пример: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...*

**needAddZabbixTemplate**
Значение истина\лож определяющее будет ли добавлен хост в zabbix.
*Пример: true*

### Опциональные параметры:

**accessIpList**
Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, вм будет доступена со всех адресов.
*Пример: ["192.168.1.1", "10.0.0.5"]*

**vmDisk**
Размер дополнительного диска в гигабайтах. Должно быть больше 0.
*Пример: 50*

**ipSpaceName**
Внешний IP-адрес. Если не требуется — укажите значение "no-needed".

**cloudInit**
YAML-скрипт для кастомизации системы через cloud-init.

---

## Доступные образы операционных систем

### RockyLinux_9-16G-cloudinit
Базовый образ на основе Rocky Linux 9 (Rocky-9.6-x86_64-minimal) для серверных задач.
- Размер системного диска: 16 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Ubuntu_22-20G
Образ на основе Ubuntu Server 22.04 LTS для облачного окружения.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Debian_13-20G
Образ на основе Debian 13 (Trixie) для стабильной серверной работы.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

---

## Пример использования Cloud-init

```yaml
users:
- name: myuser
sudo: ALL=(ALL) NOPASSWD:ALL
groups: sudo
shell: /bin/bash
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...

packages:
- nginx

runcmd:
- systemctl enable --now nginx
- systemctl restart nginx
```

---

## Результат выполнения

После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа.

---

## Важные примечания

### Особенности работы:
- Для отключения внешнего IP укажите значение "no-needed" в параметре ipSpaceName
- Параметр cloudInit является опциональным

### Ограничения:
- Не рекомендуется использовать продолжительные инструкции в cloud-init (таймаут 5 минут)
- Не поддерживается запись файлов через cloud-init
- Не реализовано создание резервных копий ВМ

---

## Диагностика проблем с cloud-init

### Основной лог-файл:
```bash
/var/log/cloud-init.log
```

### Пакет не устанавливается:
- Проверьте доступность пакета в репозитории
- Убедитесь в правильности написания имени пакета
- Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux)

### Команда не выполняется:
- Проверьте наличие требуемой утилиты в системе
- Убедитесь в правильности синтаксиса команды
- Попробуйте выполнить команду вручную для диагностики | -| `delete` | `instance` | `delete` | `` | `133` | | | -| `modify` | `instance` | `modify` | `` | `159` | vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, accessPortList, needAddZabbixTemplate | | -| `redeploy` | `action` | `redeploy` | `` | `164` | vmName, vmCpu, vmRam, vmDisk, ipSpaceName, accessIpList, imageVm, userLogin, userPublicKey, cloudInit, needAddZabbixTemplate, accessPortList | | -| `resume` | `instance` | `resume` | `` | `135` | | | -| `suspend` | `instance` | `suspend` | `` | `134` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vappUid` | `uuid` | `ДА` | `` | | | ref_svc_id=26 | `407` | -| `vmName` | `string` | `ДА` | `web01` | | | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | `408` | -| `vmCpu` | `integer > 0` | `ДА` | `1` | шт | | minvalue=1; maxvalue=64 | `409` | -| `vmRam` | `integer > 0` | `ДА` | `1` | Gb | | minvalue=1; maxvalue=256 | `410` | -| `vmDisk` | `integer > 0` | `НЕТ` | `` | Основной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму | | regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$ | `411` | -| `ipSpaceName` | `string` | `ДА` | `` | | | | `412` | -| `accessIpList` | `json` | `НЕТ` | `` | Формат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено ["0.0.0.0/0"] | | regex=^(?:$|\[\s*(?:"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?"(?:\s*,\s*"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?")*)\s*\])$ | `413` | -| `imageVm` | `string` | `ДА` | `` | | | | `414` | -| `cloudInit` | `yaml` | `НЕТ` | `` | Можно передать создание дополнительных пользователей.
На текущий момент не реализовано выполнения в cloud-init, установки пакетов, выполнения команд и записи файлов. | | | `415` | -| `userLogin` | `` | `ДА` | `myuser` | Учётка SSH | | | `416` | -| `userPublicKey` | `string` | `ДА` | `` | Публичная часть SSH-Ключа для пользователя | | | `417` | -| `accessPortList` | `string` | `ДА` | `["22"]` | По каким портам открыть доступ к ВМ.
Порты 22, 10050 проставляются автоматически
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS,
10050 - ZABBIX | | | `448` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vmCpu` | `integer > 0` | `НЕТ` | `` | шт | | minvalue=1; maxvalue=64 | `493` | -| `vmRam` | `integer > 0` | `НЕТ` | `` | Gb | | minvalue=1; maxvalue=256 | `494` | -| `vmDisk` | `integer > 0` | `НЕТ` | `` | Основной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму | | regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$ | `495` | -| `ipSpaceName` | `string` | `НЕТ` | `` | no-needed, без внешнего ip
internet-antiddos-v1, с функцией защиты от ddos атак
internet-no-antiddos-v1, с функцией защиты от ddos атак
internet-ipv4-v1 тестовое простанство dev | | value_list=no-needed, internet-antiddos-v1, internet-no-antiddos-v1, internet-ipv4-v1 | `496` | -| `accessIpList` | `json` | `НЕТ` | `` | Формат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено ["0.0.0.0/0"] | | | `497` | -| `accessPortList` | `json` | `НЕТ` | `` | Формат массива
По каким портам открыть доступ к ВМ.
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS,
10050 - ZABBIX | | | `498` | -| `needAddZabbixTemplate` | `boolean` | `НЕТ` | `` | | | value_list=false, true | `499` | - -## Operation: redeploy - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vmName` | `string` | `ДА` | `` | | | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ | `509` | -| `vmCpu` | `integer > 0` | `ДА` | `` | шт | | minvalue=1; maxvalue=64 | `510` | -| `vmRam` | `integer > 0` | `ДА` | `` | Gb | | minvalue=1; maxvalue=256 | `511` | -| `vmDisk` | `integer > 0` | `НЕТ` | `` | Основной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму | | regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$ | `512` | -| `ipSpaceName` | `string` | `НЕТ` | `` | no-needed, без внешнего ip
internet-antiddos-v1, с функцией защиты от ddos атак
internet-no-antiddos-v1, с функцией защиты от ddos атак
internet-ipv4-v1 тестовое простанство dev | | value_list=no-needed, internet-antiddos-v1, internet-no-antiddos-v1, internet-ipv4-v1 | `513` | -| `accessIpList` | `json` | `НЕТ` | `` | Формат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено ["0.0.0.0/0"] | | regex=^(?:$|\[\s*(?:"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?"(?:\s*,\s*"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?")*)\s*\])$ | `514` | -| `imageVm` | `string` | `ДА` | `` | | | value_list=RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G | `515` | -| `userLogin` | `string` | `ДА` | `` | Учётка SSH | | | `516` | -| `userPublicKey` | `string` | `ДА` | `` | Публичная часть SSH-Ключа для пользователя | | | `517` | -| `cloudInit` | `yaml` | `НЕТ` | `` | Можно передать создание дополнительных пользователей.
На текущий момент не реализовано выполнения в cloud-init, установки пакетов, выполнения команд и записи файлов. | | | `518` | -| `needAddZabbixTemplate` | `boolean` | `ДА` | `false` | Поле позволяет автоматически добавить новый хост в систему мониторинга Zabbix. После добавления вы сможете в реальном времени просматривать все метрики производительности хоста. | | value_list=false, true | `519` | -| `accessPortList` | `json` | `НЕТ` | `` | По каким портам открыть доступ к ВМ.
Порты 22, 10050 проставляются автоматически
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS,
10050 - ZABBIX | | | `520` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/29_vc_vdc_group.md b/docs/30_registry/resources/operations/29_vc_vdc_group.md deleted file mode 100644 index 6a0f101..0000000 --- a/docs/30_registry/resources/operations/29_vc_vdc_group.md +++ /dev/null @@ -1,35 +0,0 @@ -# Operations: nubes_vc_vdc_group - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `add_vdc` | `action` | `add_vdc` | `` | `192` | vdcUid | **Не нужно** выбирать UUID VDC, который уже был добавлен в группу | -| `create` | `instance` | `create` | `` | `191` | vdcUid | **VDC Группа** нужна для объединения всех VDC в организации в одну логическую группу.
Это позволит, к примеру, создать **общую сеть** для всех VDC в организации

- Для создания группы VDC необходимо указать **инстанс** услуги VDC (`Виртуальный датацентр`)
- **Важный момент** - удалить эту VDC из группы нельзя. Если такая потребность появится, необходимо будет **ПОЛНОСТЬЮ** удалить группу VDC и уже потом создать новую | -| `delete` | `instance` | `delete` | `` | `195` | | | -| `reconcile` | `action` | `reconcile` | `` | `251` | | | -| `remove_vdc` | `action` | `remove_vdc` | `` | `193` | vdcName | | - -## Operation: add_vdc - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vdcUid` | `uuid` | `ДА` | `` | | | ref_svc_id=21 | `619` | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vdcUid` | `uuid` | `ДА` | `` | | | ref_svc_id=21 | `618` | - -## Operation: delete - -None. - -## Operation: reconcile - -None. - -## Operation: remove_vdc - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vdcName` | `string` | `ДА` | `` | | | | `620` | diff --git a/docs/30_registry/resources/operations/29_vcvdcgroup.md b/docs/30_registry/resources/operations/29_vcvdcgroup.md deleted file mode 100644 index 727c22e..0000000 --- a/docs/30_registry/resources/operations/29_vcvdcgroup.md +++ /dev/null @@ -1,61 +0,0 @@ -# Operations for nubes_vcVdcGroup - -Service ID: `29` - -Service: Группа датацентров - -## UI description - -# Инструкция по развертыванию Группа виртуальных датацентров (groupvDC) через платформу

## 1. Общая информация

Сервис **Группа виртуальных датацентров (groupvDC)** предназначен для логического объединения нескольких виртуальных датацентров (vDC) в единую группу. Это позволяет растягивать SDN между разными vDC и централизованно управлять сетевой связностью. Управление инфраструктурой осуществляется через Cloud Director.
Сервис применяется в случаях, когда требуется обеспечить единое сетевое пространство для распределенных виртуальных датацентров.

### Доступные операции

**create** — Создание новой группы виртуальных датацентров.
**delete** — Удаление существующей группы vDC.
**add_vdc** — Добавление дополнительного виртуального датацентра в группу.
**remove_vdc** — Удаление ранее добавленного виртуального датацентра из группы.

---

## 2. Параметры развертывания

Параметры операции **create**:

### UUID VDC
Идентификатор виртуального датацентра, который будет являться первичным в группе.
Описание: требуется предварительно создать виртуальный датацентр с помощью услуги `Виртуальный датацентр (vDC)`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Для тестового окружения создавать группу VDC нет необходимости, так как это создаёт дополнительный слой абстракции в Cloud Director

### Промышленное окружение
- Для промышленного окружения, если в тенанте существуют разные VDC, создание groupvdc позволит снизить сетевые издержки (за счёт общей сети)

---

## 4. Выходные параметры

### Параметры groupvdc
Набор параметров, указанных пользователем при создании

---

## 5. Дополнительная информация
- Группа vDC используется для растягивания SDN между несколькими виртуальными датацентрами. Управление всеми сетевыми элементами внутри группы выполняется Cloud Director.
- Удалить первичный vDC (тот, что был указан при операции **create**) невозможно. Для его удаления необходимо удалить всю группу и создать новую.
- Перед добавлением любого vDC в группу он должен быть предварительно развернут через сервис `Виртуальный датацентр (vDC)`.
- Сети создаются не в этой услуге, а в услуге `Сетевой шлюз периметра (Edge)`. В ней необходимо будет выбрать тип `groupvdc` - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `add_vdc` (id: 192) -- `create` (id: 191) -- `delete` (id: 195) -- `reconcile` (id: 251) -- `remove_vdc` (id: 193) - -## Operation: add_vdc - -Operation ID: `192` - -**Не нужно** выбирать UUID VDC, который уже был добавлен в группу - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `vdcUid` | `uuid` | `true` | `` | `619` | `21` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: create - -Operation ID: `191` - -**VDC Группа** нужна для объединения всех VDC в организации в одну логическую группу.
Это позволит, к примеру, создать **общую сеть** для всех VDC в организации

- Для создания группы VDC необходимо указать **инстанс** услуги VDC (`Виртуальный датацентр`)
- **Важный момент** - удалить эту VDC из группы нельзя. Если такая потребность появится, необходимо будет **ПОЛНОСТЬЮ** удалить группу VDC и уже потом создать новую - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `vdcUid` | `uuid` | `true` | `` | `618` | `21` | `` | `` | `` | `` | `` | `false` | `` | - -## Operation: delete - -Operation ID: `195` - -No parameters. - -## Operation: reconcile - -Operation ID: `251` - -No parameters. - -## Operation: remove_vdc - -Operation ID: `193` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `vdcName` | `string` | `true` | `` | `620` | `` | `` | `` | `` | `` | `` | `false` | `` | - diff --git a/docs/30_registry/resources/operations/2_template.md b/docs/30_registry/resources/operations/2_template.md deleted file mode 100644 index d23fb41..0000000 --- a/docs/30_registry/resources/operations/2_template.md +++ /dev/null @@ -1,41 +0,0 @@ -# Operations: nubes_template - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `74` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, domain | | -| `delete` | `instance` | `delete` | `` | `75` | | | -| `modify` | `instance` | `modify` | `` | `76` | resourceCPU, resourceMemory, resourceDisk, resourceInstances | | -| `resume` | `instance` | `resume` | `` | `98` | | | -| `suspend` | `instance` | `suspend` | `` | `97` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `100` | | | minvalue=100; maxvalue=4000 | `202` | -| `resourceMemory` | `integer > 0` | `ДА` | `200` | | | minvalue=128; maxvalue=8192 | `203` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `204` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `205` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `206` | -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `207` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | | | minvalue=100; maxvalue=4000 | `208` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | | | minvalue=128; maxvalue=8192 | `209` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `210` | -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Количество узлов | | minvalue=1; maxvalue=7 | `211` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/32_vmpostgre.md b/docs/30_registry/resources/operations/32_vmpostgre.md deleted file mode 100644 index e79d876..0000000 --- a/docs/30_registry/resources/operations/32_vmpostgre.md +++ /dev/null @@ -1,22 +0,0 @@ -# Operations: nubes_vmpostgre - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `32` | vdcUid, nsxtUid, vmUid, userDb, userLogin, userPassword, resourceRealm | | -| `delete` | `instance` | `delete` | `` | `33` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `vdcUid` | `uuid` | `ДА` | `` | InstanceUid vdc. Vdc должен быть создан
| | ref_svc_id=21 | `43` | -| `nsxtUid` | `uuid` | `ДА` | `` | InstanceUid nsxt. Nsxt должен быть создан
| | ref_svc_id=22 | `44` | -| `vmUid` | `uuid` | `ДА` | `` | InstanceUid ВМ. ВМ должна быть создана
| | ref_svc_id=23 | `45` | -| `userDb` | `string` | `ДА` | `servicedb` | Наименование Базы данных
| | | `46` | -| `userLogin` | `string` | `ДА` | `serviceuser` | Пользователь базы данных
| | | `47` | -| `userPassword` | `string` | `ДА` | `fj29gm48fm!d374mc9` | Пароль от доступа к Базе данных
| | | `48` | -| `resourceRealm` | `string` | `ДА` | `` | Ресурсная платформа | | func=getAvailableResourceRealms | `859` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/50_nextcloud.md b/docs/30_registry/resources/operations/50_nextcloud.md deleted file mode 100644 index 4e4b8c4..0000000 --- a/docs/30_registry/resources/operations/50_nextcloud.md +++ /dev/null @@ -1,50 +0,0 @@ -# Operations: nubes_nextcloud - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `16` | domain, resourceCPU, resourceMemory, resourceDisk, documentServer, resourceInstances, psqlUid, appVersion, redisUid | DEV-Ветка сборки Nextcloud | -| `delete` | `instance` | `delete` | `` | `17` | | DEV-Ветка удаления Nextcloud | -| `modify` | `instance` | `modify` | `` | `67` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, appVersion | | -| `restart` | `action` | `restart` | `` | `66` | | | -| `resume` | `instance` | `resume` | `` | `129` | | | -| `suspend` | `instance` | `suspend` | `` | `128` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Наименование домена. Если будет указан FQDN, то происходят проверки DNS. Если указан поддомен, то будет добавлен в зону services.ngcloud.ru
Можно указать клиентскую DNS-Запись. Важно, чтобы запись смотрела на Ingress кластера | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `21` | -| `resourceCPU` | `integer > 0` | `ДА` | `1000` | Квота ядра пода (Указывается в mili). 1 ядро = 1000 Mili | Квота ядра пода (Указывается в mili). 1 ядро = 1000 Mili | minvalue=100; maxvalue=4000 | `99` | -| `resourceMemory` | `integer > 0` | `ДА` | `1024` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=1024; maxvalue=8192 | `100` | -| `resourceDisk` | `integer > 0` | `ДА` | `2` | Квота диска (Указывается в GIGAbytes)
Диск не может быть меньше 2G (!) | Квота диска (Указывается в GIGAbytes) | minvalue=2; maxvalue=999 | `101` | -| `documentServer` | `string` | `ДА` | `collabora` | Выбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен
Размер пода collabora:
1.8 ядра. 2Gi ОЗУ | Выбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен | value_list=collabora | `192` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов
Не может пока быть больше одного, так как нужны SC под RWMany | | minvalue=1; maxvalue=7; value_list=1 | `470` | -| `psqlUid` | `uuid` | `ДА` | `` | | | ref_svc_id=90 | `564` | -| `appVersion` | `` | `ДА` | `32.0.1` | | | value_list=32.0.1 | `569` | -| `redisUid` | `uuid` | `ДА` | `` | | | ref_svc_id=91 | `570` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | Квота ядра пода (Указывается в mili) | Квота ядра пода (Указывается в mili) | minvalue=100; maxvalue=4000 | `178` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `179` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `180` | -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Количество узлов.
Не может пока быть больше одного, так как нужны SC под RWMany | | minvalue=1; maxvalue=7; value_list=1 | `547` | -| `appVersion` | `string` | `ДА` | `` | Нельзя обновляться сразу через несколько версий сразу | | value_list=32.0.1 | `571` | - -## Operation: restart - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/81_superset.md b/docs/30_registry/resources/operations/81_superset.md deleted file mode 100644 index bbbe222..0000000 --- a/docs/30_registry/resources/operations/81_superset.md +++ /dev/null @@ -1,22 +0,0 @@ -# Operations: nubes_superset - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `12` | domain, emails, resourceCPU, resourceMemory, resourceDisk, resourceRealm, resourceInstances | DEV-Ветка сборки Superset | -| `delete` | `instance` | `delete` | `` | `13` | | DEV-Ветка удаления Superset | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `14` | -| `emails` | `string` | `ДА` | `testuser1` | Учётная запись, которой будут выданы админские права. В формате email [ну не совсем. Для доменных учетных записей - без доменного суффикса]. Обязана находиться в Keycloak. Можно передавать несколько через пробел | Учётная запись, которой будут выданы админские права. В формате email [ну не совсем. Для доменных учетных записей - без доменного суффикса]. Обязана находиться в Keycloak. Можно передавать несколько через пробел | | `20` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (Указывается в mili). 1000 Mili = 1 ядро | Квота ядра пода (Указывается в mili). 1000 Mili = 1 ядро | minvalue=100; maxvalue=4000 | `96` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `97` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `98` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `109` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `227` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/82_harbor.md b/docs/30_registry/resources/operations/82_harbor.md deleted file mode 100644 index 412908a..0000000 --- a/docs/30_registry/resources/operations/82_harbor.md +++ /dev/null @@ -1,22 +0,0 @@ -# Operations: nubes_harbor - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `14` | domain, emails, resourceRealm, resourceCPU, resourceMemory, resourceInstances, s3Uid | DEV-Ветка сборки Harbor | -| `delete` | `instance` | `delete` | `` | `15` | | DEV-Ветка удаления Harbor | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `16` | -| `emails` | `string` | `ДА` | `testuser1` | Учётная запись, которой будут выданы админские права. Обязана находиться в Keycloak. Можно передавать несколько через пробел | Учётная запись, которой будут выданы админские права. Обязана находиться в Keycloak. Можно передавать несколько через пробел | | `17` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `110` | -| `resourceCPU` | `integer > 0` | `ДА` | `100` | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | minvalue=100; maxvalue=4000 | `228` | -| `resourceMemory` | `integer > 0` | `ДА` | `200` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `229` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `230` | -| `s3Uid` | `uuid` | `ДА` | `` | UUID экземпляра услуги S3 | UUID экземпляра услуги S3 | ref_svc_id=12 | `231` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/88_k8s_ziti_controller.md b/docs/30_registry/resources/operations/88_k8s_ziti_controller.md deleted file mode 100644 index 25542c0..0000000 --- a/docs/30_registry/resources/operations/88_k8s_ziti_controller.md +++ /dev/null @@ -1,21 +0,0 @@ -# Operations: nubes_k8s_ziti_controller - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `99` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, domain | | -| `delete` | `instance` | `delete` | `` | `105` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `300` | Квота ядра пода (milicores) | | minvalue=100; maxvalue=4000 | `294` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (MBytes) | | minvalue=128; maxvalue=8192 | `295` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `296` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `297` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `298` | -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `299` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/88_k8sziticontroller.md b/docs/30_registry/resources/operations/88_k8sziticontroller.md deleted file mode 100644 index 3885efb..0000000 --- a/docs/30_registry/resources/operations/88_k8sziticontroller.md +++ /dev/null @@ -1,33 +0,0 @@ -# Operations for nubes_k8sZitiController - -Service ID: `88` - -Service: k8sZitiController - -## Operations - -Non-CRUD operations are typically executed via an action resource. -Domain operations (for example create_user, create_database) are best modeled as separate resources. - -- `create` (id: 99) -- `delete` (id: 105) - -## Operation: create - -Operation ID: `99` - -| Code | Type | Required | Default | ID | RefSvcId | ValueList | Func | Regex | Min | Max | Sensitive | DependsOn | -|---|---|---|---|---|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `true` | `300` | `294` | `` | `` | `` | `` | `100` | `4000` | `false` | `` | -| `resourceMemory` | `integer > 0` | `true` | `512` | `295` | `` | `` | `` | `` | `128` | `8192` | `false` | `` | -| `resourceDisk` | `integer > 0` | `true` | `1` | `296` | `` | `` | `` | `` | `1` | `999` | `false` | `` | -| `resourceInstances` | `integer > 0` | `true` | `1` | `297` | `` | `` | `` | `` | `1` | `7` | `false` | `` | -| `resourceRealm` | `string` | `true` | `` | `298` | `` | `` | `getAvailableResourceRealms` | `` | `` | `` | `false` | `` | -| `domain` | `string` | `true` | `web01` | `299` | `` | `` | `` | `^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$` | `` | `` | `false` | `` | - -## Operation: delete - -Operation ID: `105` - -No parameters. - diff --git a/docs/30_registry/resources/operations/89_flask.md b/docs/30_registry/resources/operations/89_flask.md deleted file mode 100644 index 306be4a..0000000 --- a/docs/30_registry/resources/operations/89_flask.md +++ /dev/null @@ -1,44 +0,0 @@ -# Operations: nubes_flask - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `88` | domain, resourceRealm, resourceCPU, resourceMemory, resourceInstances, gitPath, jsonEnv, healthPath | | -| `delete` | `instance` | `delete` | `` | `89` | | | -| `modify` | `instance` | `modify` | `` | `146` | resourceCPU, resourceMemory, resourceInstances, gitPath, jsonEnv | | -| `resume` | `instance` | `resume` | `` | `145` | | | -| `suspend` | `instance` | `suspend` | `` | `125` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `248` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `249` | -| `resourceCPU` | `integer > 0` | `ДА` | `300` | Квота ядра пода (milicores) | | minvalue=100; maxvalue=4000 | `250` | -| `resourceMemory` | `integer > 0` | `ДА` | `256` | Квота памяти пода (MBytes) | | minvalue=128; maxvalue=8192 | `251` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `252` | -| `gitPath` | `string` | `ДА` | `https://github.com/Foxyhhd/Baldurs-Gate-test.git` | Путь до Git, который будет webroot для сайта | Путь до Git, который будет webroot для сайта | | `253` | -| `jsonEnv` | `string` | `НЕТ` | `{ "param": "value" }` | Массив переменных, будут переданы в env приложения | | | `254` | -| `healthPath` | `string` | `НЕТ` | `` | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код | | | `255` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `` | Квота ядра пода (milicores) | | minvalue=100; maxvalue=4000 | `451` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | Квота памяти пода (MBytes) | | minvalue=128; maxvalue=8192 | `452` | -| `resourceInstances` | `integer > 0` | `ДА` | `` | Количество узлов | | minvalue=1; maxvalue=7 | `453` | -| `gitPath` | `` | `ДА` | `` | Путь до Git, который будет webroot для сайта | | | `454` | -| `jsonEnv` | `json` | `ДА` | `{ "param": "value" }` | Массив переменных, будут переданы в env приложения | | | `455` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/90_postgres.md b/docs/30_registry/resources/operations/90_postgres.md deleted file mode 100644 index cac4566..0000000 --- a/docs/30_registry/resources/operations/90_postgres.md +++ /dev/null @@ -1,85 +0,0 @@ -# Operations: nubes_postgres - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `19` | s3Uid, resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm, needExternalAddressMaster, needExternalAddressSlave, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN, appVersion, jsonParameters, enablePgPoolerMaster, enablePgPoolerSlave, allowNoSSL, autoScale, autoScalePercentage, autoScaleTechWindow, ipSpaceNameMaster, ipSpaceNameSlave, autoScaleQuotaGb | руководство | -| `delete` | `instance` | `delete` | `` | `20` | deleteS3Bucket | | -| `modify` | `instance` | `modify` | `` | `48` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, needExternalAddressMaster, needExternalAddressSlave, ext_BACKUP_SCHEDULE, ext_BACKUP_NUM_TO_RETAIN, appVersion, jsonParameters, enablePgPoolerMaster, enablePgPoolerSlave, allowNoSSL, ipSpaceNameMaster, ipSpaceNameSlave | | -| `recovery` | `action` | `recovery` | `` | `47` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm | | -| `restart` | `action` | `restart` | `` | `54` | | ВНИМАНИЕ - Рестарт предполагает УДАЛЕНИЕ подов.
Может быть полная поломка. Крайне осторожно запускать при работе | -| `resume` | `instance` | `resume` | `` | `114` | | | -| `suspend` | `instance` | `suspend` | `` | `115` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `s3Uid` | `uuid` | `ДА` | `` | Экземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательно | Экземпляр (учетная запись) S3 для резервного копирования. Резервное копирование обязательно | ref_svc_id=12 | `23` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в кластере. 1,3,5,7 | minvalue=1; maxvalue=7; regex=^[1357]$ | `80` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `81` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (milicores) | Квота ядра пода (milicores) | minvalue=100; maxvalue=4000 | `82` | -| `resourceDisk` | `` | `ДА` | `10` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `83` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Кластер Kubernetes, на котором будет развернут экземпляр | func=getAvailableResourceRealms | `102` | -| `needExternalAddressMaster` | `boolean` | `НЕТ` | `false` | Выделяет внешний (белый) IP для доступа к master | Выделяет внешний (белый) IP для доступа к master | value_list=false, true | `145` | -| `needExternalAddressSlave` | `boolean` | `НЕТ` | `false` | Выделяет внешний (белый) IP для доступа к slave. Будет работать, если slave в принципе есть | Выделяет внешний (белый) IP для доступа к slave. Будет работать, если slave в принципе есть | value_list=false, true | `146` | -| `ext_BACKUP_SCHEDULE` | `string` | `НЕТ` | `0 0 * * *` | Не обязательный. Время запуска бекапа | Не обязательный. Время запуска бекапа | regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$ | `265` | -| `ext_BACKUP_NUM_TO_RETAIN` | `integer > 0` | `НЕТ` | `7` | Не обязательный. По умолчанию: "24". Количество сохраняемых бекапов | Не обязательный. По умолчанию: "24". Количество сохраняемых бекапов | minvalue=1; maxvalue=99 | `266` | -| `appVersion` | `string` | `ДА` | `17` | Версия PostgreSQL | | value_list=17, 16, 15, 14, 13 | `310` | -| `jsonParameters` | `json` | `ДА` | `{ "log_connections": "off", "log_disconnections": "off" }` | Массив переменных, более подробнее про настройку можно посмотреть https://www.postgresql.org/docs/current/runtime-config.html | | maxlength=2048 | `311` | -| `enablePgPoolerMaster` | `boolean` | `ДА` | `false` | Включает pgPooler (на запись). Будет создан новый под | | value_list=false, true | `312` | -| `enablePgPoolerSlave` | `boolean` | `ДА` | `false` | Включает pgPooler (на чтение). Будет создан новый под | | value_list=false, true | `313` | -| `allowNoSSL` | `boolean` | `ДА` | `false` | По умолчанию подключение обязательное (sslmode=require). Выставление в true отключит этот параметр | | value_list=false, true | `314` | -| `autoScale` | `boolean` | `ДА` | `true` | Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги | | value_list=false, true | `329` | -| `autoScalePercentage` | `integer > 0` | `ДА` | `10` | Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема | | value_list=10, 15, 20 | `330` | -| `autoScaleTechWindow` | `integer >= 0` | `ДА` | `0` | Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23) | | value_list=0, 5, 12, 23 | `331` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster | | | `337` | -| `ipSpaceNameSlave` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave | | | `338` | -| `autoScaleQuotaGb` | `string` | `ДА` | `1` | Квота для autoScale | | | `339` | - -## Operation: delete - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `deleteS3Bucket` | `boolean` | `ДА` | `true` | Также удалить технический S3 Bucket с бэкапами? | | value_list=false, true | `457` | - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `91` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `92` | -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | Квота ядра пода (milicores) | Квота ядра пода (milicores) | minvalue=100; maxvalue=4000 | `93` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `94` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `` | Выделяет внешний IP для доступа к master | Выделяет внешний IP для доступа к master | value_list=false, true | `147` | -| `needExternalAddressSlave` | `boolean` | `ДА` | `` | Выделяет внешний IP для доступа к slave. Действует, если slave в принципе есть | Выделяет внешний IP для доступа к slave. Действует, если slave в принципе есть | value_list=false, true | `148` | -| `ext_BACKUP_SCHEDULE` | `string` | `НЕТ` | `` | Не обязательный. По умолчанию: "0 * * * *". Время запуска бекапа | Не обязательный. По умолчанию: "0 * * * *". Время запуска бекапа | regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$ | `267` | -| `ext_BACKUP_NUM_TO_RETAIN` | `integer > 0` | `НЕТ` | `` | Не обязательный. По умолчанию: "24". Количество сохраняемых бекапов | | minvalue=1; maxvalue=99 | `268` | -| `appVersion` | `string` | `ДА` | `` | Версия PostgreSQL. Нельзя опускать вниз | | value_list=17, 16, 15, 14, 13 | `315` | -| `jsonParameters` | `json` | `НЕТ` | `` | Массив переменных, более подробнее про настройку можно посмотреть https://www.postgresql.org/docs/current/runtime-config.html | | maxlength=2048 | `316` | -| `enablePgPoolerMaster` | `boolean` | `ДА` | `false` | Включает pgPooler (на запись). Будет создан новый под | | value_list=false, true | `317` | -| `enablePgPoolerSlave` | `boolean` | `ДА` | `false` | Включает pgPooler (на чтение). Будет создан новый под | | value_list=false, true | `318` | -| `allowNoSSL` | `boolean` | `ДА` | `false` | По умолчанию подключение обязательное (sslmode=require). Выставление в true отключит этот параметр | | value_list=false, true | `319` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster | | | `541` | -| `ipSpaceNameSlave` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave | | | `542` | - -## Operation: recovery - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети
| minvalue=1; maxvalue=7 | `86` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (Указывается в Megabytes)
| Квота памяти пода (Указывается в Megabytes)
| minvalue=128; maxvalue=8192 | `87` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (Указывается в mili)
| Квота ядра пода (Указывается в mili)
| minvalue=100; maxvalue=4000 | `88` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `89` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `131` | - -## Operation: restart - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/91_redis.md b/docs/30_registry/resources/operations/91_redis.md deleted file mode 100644 index 3584993..0000000 --- a/docs/30_registry/resources/operations/91_redis.md +++ /dev/null @@ -1,24 +0,0 @@ -# Operations: nubes_redis - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `21` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, resourceRealm, needExternalAddressMaster, needExternalAddressSlave, ipSpaceNameMaster, ipSpaceNameSlave | | -| `delete` | `instance` | `delete` | `` | `22` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `1000` | Квота ядра пода (Указывается в mili) | Квота ядра пода (Указывается в mili) | minvalue=500; maxvalue=4000 | `112` | -| `resourceMemory` | `integer > 0` | `ДА` | `1024` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=512; maxvalue=8192 | `113` | -| `resourceDisk` | `integer > 0` | `ДА` | `30` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=10; maxvalue=999 | `114` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети. Если выделить больше 1 ноды, будет добавлено дополнительно 3 Sentinel ноды | minvalue=1; maxvalue=7 | `181` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения
| func=getAvailableResourceRealms | `182` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Выделяет внешний IP для доступа к master | Выделяет внешний IP для доступа к master | value_list=false, true | `183` | -| `needExternalAddressSlave` | `boolean` | `ДА` | `false` | Выделяет внешний IP для доступа к slave. Будет работать если slave в целом есть | Выделяет внешний IP для доступа к slave. Будет работать если slave в целом есть | value_list=false, true | `184` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster | | | `548` | -| `ipSpaceNameSlave` | `string` | `НЕТ` | `` | Имя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave | | | `549` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/92_mongodb.md b/docs/30_registry/resources/operations/92_mongodb.md deleted file mode 100644 index dc82f21..0000000 --- a/docs/30_registry/resources/operations/92_mongodb.md +++ /dev/null @@ -1,57 +0,0 @@ -# Operations: nubes_mongodb - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `37` | resourceInstances, resourceMemory, resourceCPU, resourceDisk, resourceRealm, needExternalAddressMaster, ipSpaceNameMaster | | -| `create_user` | `subresource` | `create` | `user` | `198` | username, dbName, role | | -| `delete` | `instance` | `delete` | `` | `190` | | | -| `delete_user` | `subresource` | `delete` | `user` | `199` | username | | -| `modify_user` | `subresource` | `modify` | `user` | `200` | username, dbName, role | | -| `resume` | `instance` | `resume` | `` | `196` | | | -| `suspend` | `instance` | `suspend` | `` | `194` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceInstances` | `integer > 0` | `ДА` | `` | Пример: `2` | | minvalue=1; maxvalue=7 | `487` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | Пример: `2048` | | minvalue=1000 | `588` | -| `resourceCPU` | `integer > 0` | `ДА` | `` | Пример: `1000` | | | `589` | -| `resourceDisk` | `integer > 0` | `ДА` | `` | Пример: `20` | | | `590` | -| `resourceRealm` | `string` | `ДА` | `` | Выбрать платформу из списка | | func=getAvailableResourceRealms | `595` | -| `needExternalAddressMaster` | `string` | `ДА` | `false` | Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-брокеру. Пример: `true` или `false` | | value_list=false, true | `645` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1` | | | `646` | - -## Operation: create_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | | | | `635` | -| `dbName` | `string` | `ДА` | `` | | | | `636` | -| `role` | `string` | `ДА` | `` | | | value_list=dbOwner, read, readWrite | `643` | - -## Operation: delete - -None. - -## Operation: delete_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | | | | `644` | - -## Operation: modify_user - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `username` | `string` | `ДА` | `` | | | | `640` | -| `dbName` | `string` | `ДА` | `` | | | | `641` | -| `role` | `string` | `ДА` | `` | | | value_list=dbOwner, read, readWrite | `642` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/93_rabbitmq.md b/docs/30_registry/resources/operations/93_rabbitmq.md deleted file mode 100644 index cef1653..0000000 --- a/docs/30_registry/resources/operations/93_rabbitmq.md +++ /dev/null @@ -1,46 +0,0 @@ -# Operations: nubes_rabbitmq - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `38` | resourceCPU, resourceMemory, resourceDisk, resourceRealm, resourceInstances, needExternalAddressMaster, ipSpaceNameMaster | | -| `delete` | `instance` | `delete` | `` | `39` | | | -| `modify` | `instance` | `modify` | `` | `106` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, needExternalAddressMaster, needExternalAddressSlave, ipSpaceNameMaster, ipSpaceNameSlave | | -| `resume` | `instance` | `resume` | `` | `117` | | | -| `suspend` | `instance` | `suspend` | `` | `116` | | Пока не работает из за того что RabbitmqCluster нельзя занулить | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `1000` | Пример: `2000` | | minvalue=500; maxvalue=4000 | `116` | -| `resourceMemory` | `integer > 0` | `ДА` | `1124` | Пример: `2048` | | minvalue=512; maxvalue=8192 | `117` | -| `resourceDisk` | `integer > 0` | `ДА` | `30` | Пример: `20` | | minvalue=5; maxvalue=999 | `118` | -| `resourceRealm` | `string` | `ДА` | `` | Выбрать платформу из списка | | func=getAvailableResourceRealms | `119` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Пример: `1` | | minvalue=1; maxvalue=7 | `224` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Флаг, определяющий, нужно ли выделять внешний IP для доступа к master. Пример: `true` или `false` | | value_list=false, true | `225` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Пример: `internet-no-antiddos-v1` | | | `543` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `` | Пример: `2000` | | minvalue=500; maxvalue=4000 | `304` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | Пример: `2048` | | minvalue=512; maxvalue=8192 | `305` | -| `resourceDisk` | `integer > 0` | `ДА` | `` | Пример: `20` | | minvalue=1; maxvalue=999 | `306` | -| `resourceInstances` | `integer > 0` | `ДА` | `` | Пример: `1` | | minvalue=1; maxvalue=7 | `307` | -| `needExternalAddressMaster` | `boolean` | `ДА` | `false` | Выделяет внешний (белый) IP для доступа к master | | value_list=false, true | `308` | -| `needExternalAddressSlave` | `boolean` | `ДА` | `false` | Выделяет внешний (белый) IP для доступа к slave | | value_list=false, true | `309` | -| `ipSpaceNameMaster` | `string` | `НЕТ` | `` | Пример: `internet-no-antiddos-v1` | | | `545` | -| `ipSpaceNameSlave` | `string` | `НЕТ` | `` | Пример: `internet-no-antiddos-v1` | | | `546` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/94_lucee.md b/docs/30_registry/resources/operations/94_lucee.md deleted file mode 100644 index a5f383e..0000000 --- a/docs/30_registry/resources/operations/94_lucee.md +++ /dev/null @@ -1,59 +0,0 @@ -# Operations: nubes_lucee - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `49` | domain, gitPath, jsonEnv, resourceCPU, resourceMemory, resourceRealm, healthPath, resourceInstances, appVersion | | -| `delete` | `instance` | `delete` | `` | `50` | | | -| `modify` | `instance` | `modify` | `` | `55` | gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, appVersion | Если CFS оставить пустым, то при запуске джобы берётся параметр из instanceData | -| `redeploy` | `action` | `redeploy` | `` | `53` | resourceRealm | | -| `restart` | `action` | `restart` | `` | `163` | | | -| `resume` | `instance` | `resume` | `` | `95` | | | -| `suspend` | `instance` | `suspend` | `` | `96` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `103` | -| `gitPath` | `string` | `ДА` | `https://github.com/xahys/testlucee` | Путь до Git, который будет webroot для сайта | Путь до Git, который будет webroot для сайта | | `104` | -| `jsonEnv` | `json` | `НЕТ` | `{ "param": "value" }` | Здесь вы можете задать переменные среды в формате KEY=VALUE. Они будут доступны внутри вашего приложения. | | maxlength=2048 | `105` | -| `resourceCPU` | `integer > 0` | `ДА` | `300` | Квота ядра пода (milicores) | Квота ядра пода (milicores) | minvalue=100; maxvalue=4000 | `106` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `107` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `108` | -| `healthPath` | `string` | `НЕТ` | `` | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код | | `132` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `139` | -| `appVersion` | `string` | `ДА` | `5.4` | Версия Lucee | | regex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0 | `263` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `gitPath` | `string` | `НЕТ` | `` | Путь до Git, который будет webroot для сайта | Путь до Git, который будет webroot для сайта | | `133` | -| `healthPath` | `string` | `НЕТ` | `` | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. | | `134` | -| `jsonEnv` | `json` | `НЕТ` | `` | Массив переменных, будут переданы в env приложения | Массив переменных, будут переданы в env приложения | maxlength=2048 | `135` | -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | Квота ядра пода (Указывается в mili) 1000Mili = 1 ядро | Квота ядра пода (Указывается в mili) | minvalue=100; maxvalue=4000 | `136` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `137` | -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `138` | -| `appVersion` | `string` | `ДА` | `5.4` | | | regex=^\d+(\.\d+){1,2}(-[a-zA-Z0-9\.]+)?$; value_list=5.4, 6.0 | `264` | - -## Operation: redeploy - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `257` | - -## Operation: restart - -None. - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/95_nodejs.md b/docs/30_registry/resources/operations/95_nodejs.md deleted file mode 100644 index 6d2489a..0000000 --- a/docs/30_registry/resources/operations/95_nodejs.md +++ /dev/null @@ -1,54 +0,0 @@ -# Operations: nubes_nodejs - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `58` | domain, gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, resourceRealm, appVersion | | -| `delete` | `instance` | `delete` | `` | `61` | | | -| `modify` | `instance` | `modify` | `` | `59` | gitPath, healthPath, jsonEnv, resourceCPU, resourceMemory, resourceInstances, appVersion | | -| `redeploy` | `action` | `redeploy` | `` | `60` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `121` | | | -| `suspend` | `instance` | `suspend` | `` | `120` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Наименование поддомена, будет добавлено в nodejs.dev.nubes.ru | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$ | `149` | -| `gitPath` | `string` | `ДА` | `https://github.com/xahys/testnode.git` | Путь до Git, который будет webroot для сайта | Путь до Git, который будет webroot для сайта | | `150` | -| `healthPath` | `string` | `НЕТ` | `` | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. Если оставить пустым, healtcheck'а не будет | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. Если оставить пустым, healtcheck'а не будет | | `151` | -| `jsonEnv` | `json` | `НЕТ` | `` | Массив переменных, будут переданы в env приложения | Массив переменных, будут переданы в env приложения | | `152` | -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (milicores). 1000Mili = 1 Ядро | Квота ядра пода (milicores). 1000Mili = 1 Ядро | minvalue=100; maxvalue=4000 | `153` | -| `resourceMemory` | `integer > 0` | `ДА` | `1024` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `154` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `155` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `156` | -| `appVersion` | `string` | `ДА` | `23` | Версия приложения | | regex=^(\d){2}$; value_list=18, 20, 22, 23 | `270` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `gitPath` | `string` | `НЕТ` | `` | Путь до Git, который будет webroot для сайта | Путь до Git, который будет webroot для сайта | | `157` | -| `healthPath` | `string` | `НЕТ` | `` | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. | Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код. | | `158` | -| `jsonEnv` | `json` | `НЕТ` | `` | Массив переменных, будут переданы в env приложения | Массив переменных, будут переданы в env приложения | maxlength=2048 | `159` | -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | Квота ядра пода (Указывается в mili) 1000Mili = 1 ядро | Квота ядра пода (Указывается в mili) 1000Mili = 1 ядро | minvalue=100; maxvalue=4000 | `160` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `161` | -| `resourceInstances` | `integer > 0` | `НЕТ` | `` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `162` | -| `appVersion` | `string` | `ДА` | `23` | Версия приложения | Версия приложения | regex=^(\d){2}$; value_list=18, 20, 22, 23 | `271` | - -## Operation: redeploy - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `258` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/96_pgadmin.md b/docs/30_registry/resources/operations/96_pgadmin.md deleted file mode 100644 index a348f07..0000000 --- a/docs/30_registry/resources/operations/96_pgadmin.md +++ /dev/null @@ -1,48 +0,0 @@ -# Operations: nubes_pgadmin - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `62` | domain, resourceCPU, resourceMemory, resourceDisk, resourceRealm, login, password | | -| `delete` | `instance` | `delete` | `` | `63` | | | -| `modify` | `instance` | `modify` | `` | `64` | resourceCPU, resourceMemory, resourceDisk | | -| `redeploy` | `action` | `redeploy` | `` | `65` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `123` | | | -| `suspend` | `instance` | `suspend` | `` | `122` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `164` | -| `resourceCPU` | `integer > 0` | `ДА` | `200` | Квота ядра пода (milicores). 1000Mili = 1 Ядро | Квота ядра пода (milicores). 1000Mili = 1 Ядро | minvalue=100; maxvalue=4000 | `165` | -| `resourceMemory` | `integer > 0` | `ДА` | `256` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `166` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `167` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `169` | -| `login` | `string` | `ДА` | `` | Логин для подключения к pgAdmin, в формате email (login@email.net) | Логин для подключения к pgAdmin, в формате email (login@email.net) | regex=^([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)$; maxlength=255; minlength=3 | `170` | -| `password` | `string` | `ДА` | `` | Пароль для подключения к pgAdmin | Пароль для подключения к pgAdmin | | `171` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `НЕТ` | `` | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | minvalue=100; maxvalue=4000 | `172` | -| `resourceMemory` | `integer > 0` | `НЕТ` | `` | Квота памяти пода (MBytes) | Квота памяти пода (MBytes) | minvalue=128; maxvalue=8192 | `173` | -| `resourceDisk` | `integer > 0` | `НЕТ` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `174` | - -## Operation: redeploy - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `277` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/97_nodered.md b/docs/30_registry/resources/operations/97_nodered.md deleted file mode 100644 index 2de8b66..0000000 --- a/docs/30_registry/resources/operations/97_nodered.md +++ /dev/null @@ -1,21 +0,0 @@ -# Operations: nubes_nodered - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `72` | resourceCPU, resourceMemory, resourceDisk, resourceRealm, domain, resourceInstances | | -| `delete` | `instance` | `delete` | `` | `73` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | | minvalue=100; maxvalue=4000 | `193` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (Указывается в Megabytes) | | minvalue=128; maxvalue=8192 | `194` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `195` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `196` | -| `domain` | `string` | `ДА` | `` | Наименование поддомена, будет добавлено в k8stemplate.dev.nubes.ru | Наименование поддомена, будет добавлено в k8stemplate.dev.nubes.ru | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `197` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | | minvalue=1; maxvalue=7 | `323` | - -## Operation: delete - -None. diff --git a/docs/30_registry/resources/operations/98_http.md b/docs/30_registry/resources/operations/98_http.md deleted file mode 100644 index d969a95..0000000 --- a/docs/30_registry/resources/operations/98_http.md +++ /dev/null @@ -1,48 +0,0 @@ -# Operations: nubes_http - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `77` | domain, resourceCPU, resourceMemory, resourceInstances, resourceRealm, registryPath, jsonEnv | | -| `delete` | `instance` | `delete` | `` | `78` | | | -| `modify` | `instance` | `modify` | `` | `81` | resourceCPU, resourceMemory, resourceInstances | | -| `redeploy` | `action` | `redeploy` | `` | `79` | resourceRealm | | -| `resume` | `instance` | `resume` | `` | `130` | | | -| `suspend` | `instance` | `suspend` | `` | `131` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `212` | -| `resourceCPU` | `integer > 0` | `ДА` | `100` | Квота ядра пода (Указывается в mili) | Квота ядра пода (Указывается в mili) | minvalue=100; maxvalue=4000 | `213` | -| `resourceMemory` | `integer > 0` | `ДА` | `200` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=128; maxvalue=8192 | `214` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество реплик приложения. Трафик будет распределяться между подами в режиме Round-Robin | minvalue=1; maxvalue=7 | `215` | -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | Наименование кластера Kubernetes для подключения | func=getAvailableResourceRealms | `216` | -| `registryPath` | `string` | `ДА` | `nexus-sa.tst.nubes.ru/docker-nubes/jolt` | Путь до image, который будет установлен как deployment | Путь до image, который будет установлен как deployment | | `217` | -| `jsonEnv` | `json` | `НЕТ` | `{"param": "value"}` | Массив переменных, будут переданы в env приложения | Массив переменных, будут переданы в env приложения | | `241` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `` | | | minvalue=100; maxvalue=4000 | `218` | -| `resourceMemory` | `integer > 0` | `ДА` | `` | | | minvalue=128; maxvalue=8192 | `219` | -| `resourceInstances` | `integer > 0` | `ДА` | `` | Количество узлов | | minvalue=1; maxvalue=7 | `220` | - -## Operation: redeploy - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceRealm` | `string` | `ДА` | `` | Платформа для развертывания | | func=getAvailableResourceRealms | `272` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/99_gitea.md b/docs/30_registry/resources/operations/99_gitea.md deleted file mode 100644 index e1985fa..0000000 --- a/docs/30_registry/resources/operations/99_gitea.md +++ /dev/null @@ -1,41 +0,0 @@ -# Operations: nubes_gitea - -| Operation | Kind | Action | Subresource | ID | Params | Description | -|---|---|---|---|---|---|---| -| `create` | `instance` | `create` | `` | `82` | resourceCPU, resourceMemory, resourceDisk, resourceInstances, domain, psqlUid | | -| `delete` | `instance` | `delete` | `` | `83` | | | -| `modify` | `instance` | `modify` | `` | `91` | resourceCPU, resourceMemory, resourceDisk, resourceInstances | | -| `resume` | `instance` | `resume` | `` | `127` | | | -| `suspend` | `instance` | `suspend` | `` | `126` | | | - -## Operation: create - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `500` | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | minvalue=300; maxvalue=4000 | `232` | -| `resourceMemory` | `integer > 0` | `ДА` | `512` | Квота памяти пода (Указывается в Megabytes) | Квота памяти пода (Указывается в Megabytes) | minvalue=256; maxvalue=8192 | `233` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `234` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `235` | -| `domain` | `string` | `ДА` | `web01` | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm | regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider | `237` | -| `psqlUid` | `uuid` | `ДА` | `` | UUID Услуги k8sPgsql. Пользователя techGitea, базу данных gitea создаёт автоматически | UUID Услуги k8sPgsql. Пользователя techGitea, базу данных gitea создаёт автоматически | ref_svc_id=90 | `238` | - -## Operation: delete - -None. - -## Operation: modify - -| Code | Type | Required | Default | Description | Man | Constraints | ID | -|---|---|---|---|---|---|---|---| -| `resourceCPU` | `integer > 0` | `ДА` | `100` | Квота ядра пода (Указывается в mili). 1000Mili = 1 Ядро | | minvalue=500; maxvalue=4000 | `259` | -| `resourceMemory` | `integer > 0` | `ДА` | `128` | Квота памяти пода (Указывается в Megabytes) | | minvalue=256; maxvalue=8192 | `260` | -| `resourceDisk` | `integer > 0` | `ДА` | `1` | Квота диска (Указывается в GIGAbytes) | Квота диска (Указывается в GIGAbytes) | minvalue=1; maxvalue=999 | `261` | -| `resourceInstances` | `integer > 0` | `ДА` | `1` | Количество узлов | Количество узлов в сети | minvalue=1; maxvalue=7 | `262` | - -## Operation: resume - -None. - -## Operation: suspend - -None. diff --git a/docs/30_registry/resources/operations/index.md b/docs/30_registry/resources/operations/index.md deleted file mode 100644 index 9ae4b55..0000000 --- a/docs/30_registry/resources/operations/index.md +++ /dev/null @@ -1,51 +0,0 @@ -# Operations by service - -Auto-generated list of available operations per service. - -Note: non-CRUD operations should be invoked via an action resource, -and domain operations are best represented as dedicated resources. - -- 1 - nubes_dummy (6 ops): [Болванка](1_dummy.md) -- 2 - nubes_template (5 ops): [Темплейт k8s](2_template.md) -- 12 - nubes_s3 (7 ops): [S3 Object Storage](12_s3.md) -- 13 - nubes_s3bucket (2 ops): [S3 бакет](13_s3bucket.md) -- 19 - nubes_vcOrg (6 ops): [Организация в Cloud Director](19_vcorg.md) -- 20 - nubes_vcOrgSaas (4 ops): [Организация [DEPRECATED]](20_vcorgsaas.md) -- 21 - nubes_vc_vdc (6 ops): [Виртуальный датацентр (vDC)](21_vc_vdc.md) -- 22 - nubes_vc_nsxt (4 ops): [Сетевой шлюз периметра (Edge)](22_vc_nsxt.md) -- 23 - nubes_vc_vm (5 ops): [VM в Cloud Director (старый формат) (vc_vm)](23_vc_vm.md) -- 24 - nubes_DEPRECATED (0 ops): [DEPRECATED Правила маршрутизации для VM (vc_nat)](24_deprecated.md) -- 25 - nubes_vcexternalip (3 ops): [Публичные IP адреса](25_vcexternalip.md) -- 26 - nubes_vapp (4 ops): [Виртуальный каталог ВМ (vApp)](26_vapp.md) -- 27 - nubes_vc_vm_v2 (5 ops): [VM в Cloud Director (vc_vmV2)](27_vc_vm_v2.md) -- 28 - nubes_vc_vm_v3 (6 ops): [Виртуальная машина](28_vc_vm_v3.md) -- 29 - nubes_vcVdcGroup (5 ops): [Группа датацентров](29_vcvdcgroup.md) -- 32 - nubes_vmpostgre (0 ops): [vc_vm_postgresql_std](32_vmpostgre.md) -- 50 - nubes_nextcloud (6 ops): [Nextcloud](50_nextcloud.md) -- 81 - nubes_superset (2 ops): [Apache Superset](81_superset.md) -- 82 - nubes_harbor (2 ops): [Container Registry](82_harbor.md) -- 88 - nubes_k8sZitiController (2 ops): [k8sZitiController](88_k8sziticontroller.md) -- 89 - nubes_flask (5 ops): [Web-сервер с фреймворком Flask](89_flask.md) -- 90 - nubes_postgres (11 ops): [PostgreSQL](90_postgres.md) -- 91 - nubes_redis (2 ops): [Redis](91_redis.md) -- 92 - nubes_mongodb (8 ops): [MongoDB](92_mongodb.md) -- 93 - nubes_rabbitmq (5 ops): [RabbitMQ](93_rabbitmq.md) -- 94 - nubes_lucee (7 ops): [Lucee](94_lucee.md) -- 95 - nubes_nodejs (6 ops): [NodeJS](95_nodejs.md) -- 96 - nubes_pgadmin (6 ops): [pgAdmin](96_pgadmin.md) -- 97 - nubes_nodered (2 ops): [NodeRed](97_nodered.md) -- 98 - nubes_http (6 ops): [Простой HTTP контейнер](98_http.md) -- 99 - nubes_gitea (5 ops): [Gitea](99_gitea.md) -- 100 - nubes_openwhisk (0 ops): [Serverless Openwhisk (openwhisk_tenant)](100_openwhisk.md) -- 110 - nubes_dnszone (2 ops): [DNS зона](110_dnszone.md) -- 111 - nubes_dnsrecord (3 ops): [DNS запись](111_dnsrecord.md) -- 112 - nubes_tenant (3 ops): [Тенант в Grafana](112_tenant.md) -- 113 - nubes_vcComplex (1 ops): [Быстрый старт](113_vccomplex.md) -- 114 - nubes_GiteaComplex (0 ops): [Комплексная услуга по созданию gitea](114_giteacomplex.md) -- 115 - nubes_mariadb (5 ops): [Mariadb](115_mariadb.md) -- 116 - nubes_kafka (11 ops): [ApacheKafka](116_kafka.md) -- 117 - nubes_nifi (3 ops): [Nifi](117_nifi.md) -- 119 - nubes_Akhq (5 ops): [Akhq](119_akhq.md) -- 120 - nubes_clickhouse (9 ops): [ClickHouse](120_clickhouse.md) -- 149 - nubes_valoTenant (5 ops): [VALO Cloud](149_valotenant.md) -- 150 - nubes_k8sSthutrvalCluster (7 ops): [Kubernetes кластер Штурвал](150_k8ssthutrvalcluster.md) diff --git a/docs/30_registry/resources/pgadmin.md b/docs/30_registry/resources/pgadmin.md deleted file mode 100644 index 5c2feaf..0000000 --- a/docs/30_registry/resources/pgadmin.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## MAN - -
-Инструмент с графическим интерфейсом для управления базами данных PostgreSQL -
diff --git a/docs/30_registry/resources/pgadmin_example.md b/docs/30_registry/resources/pgadmin_example.md deleted file mode 100644 index 22baaa4..0000000 --- a/docs/30_registry/resources/pgadmin_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Copy-ready manifest (`pgadmin_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_pgadmin" "baza" { - resource_realm = "TODO" # Платформа для развертывания - login = "TODO" # Логин для подключения к pgAdmin, в формате email (login@email.net) - password = "TODO" # Пароль для подключения к pgAdmin - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - resource_c_p_u = 200 # Квота ядра пода (milicores). 1000Mili = 1 Ядро - resource_memory = 256 # Квота памяти пода (MBytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_pgadmin.baza.state_params["имя_ключа"] -nubes_pgadmin.baza.state_out["имя_ключа"] -nubes_pgadmin.baza.state_params_flat["имя_ключа"] -nubes_pgadmin.baza.state_out_flat["имя_ключа"] -nubes_pgadmin.baza.vault_secrets["имя_ключа"] -nubes_pgadmin.baza.vault_url -nubes_pgadmin.baza.vault_user_path -nubes_pgadmin.baza.vault_fields -``` diff --git a/docs/30_registry/resources/pgadmin_example_ops.md b/docs/30_registry/resources/pgadmin_example_ops.md deleted file mode 100644 index 80dc93e..0000000 --- a/docs/30_registry/resources/pgadmin_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_example.md) | [Parameters](pgadmin_example_params.md) | [Operations](pgadmin_example_ops.md) diff --git a/docs/30_registry/resources/pgadmin_example_params.md b/docs/30_registry/resources/pgadmin_example_params.md deleted file mode 100644 index 80dc93e..0000000 --- a/docs/30_registry/resources/pgadmin_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_example.md) | [Parameters](pgadmin_example_params.md) | [Operations](pgadmin_example_ops.md) diff --git a/docs/30_registry/resources/pgadmin_instruction.md b/docs/30_registry/resources/pgadmin_instruction.md deleted file mode 100644 index 75c27e7..0000000 --- a/docs/30_registry/resources/pgadmin_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для pgadmin - -Инструмент с графическим интерфейсом для управления базами данных PostgreSQL diff --git a/docs/30_registry/resources/pgadmin_man.md b/docs/30_registry/resources/pgadmin_man.md deleted file mode 100644 index 03aa121..0000000 --- a/docs/30_registry/resources/pgadmin_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: pgadmin - -Инструмент с графическим интерфейсом для управления базами данных PostgreSQL diff --git a/docs/30_registry/resources/pgadmin_ops.md b/docs/30_registry/resources/pgadmin_ops.md deleted file mode 100644 index 7449f5e..0000000 --- a/docs/30_registry/resources/pgadmin_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](pgadmin_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](pgadmin_params_modify.md) -- `redeploy` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/pgadmin_outputs.md b/docs/30_registry/resources/pgadmin_outputs.md deleted file mode 100644 index 1e8ebfd..0000000 --- a/docs/30_registry/resources/pgadmin_outputs.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-svc-96-r3 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["login"]` -- `state_params["domain"]` -- `state_params["password"]` -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/pgadmin_outputs_ops.md b/docs/30_registry/resources/pgadmin_outputs_ops.md deleted file mode 100644 index a501dcd..0000000 --- a/docs/30_registry/resources/pgadmin_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_outputs.md) | [Parameters](pgadmin_outputs_params.md) | [Operations](pgadmin_outputs_ops.md) diff --git a/docs/30_registry/resources/pgadmin_outputs_params.md b/docs/30_registry/resources/pgadmin_outputs_params.md deleted file mode 100644 index a501dcd..0000000 --- a/docs/30_registry/resources/pgadmin_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_outputs.md) | [Parameters](pgadmin_outputs_params.md) | [Operations](pgadmin_outputs_ops.md) diff --git a/docs/30_registry/resources/pgadmin_params.md b/docs/30_registry/resources/pgadmin_params.md deleted file mode 100644 index 3afd95c..0000000 --- a/docs/30_registry/resources/pgadmin_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Parameters - -- [Create params](pgadmin_params_create.md) -- [Modify params](pgadmin_params_modify.md) diff --git a/docs/30_registry/resources/pgadmin_params_create.md b/docs/30_registry/resources/pgadmin_params_create.md deleted file mode 100644 index d527c72..0000000 --- a/docs/30_registry/resources/pgadmin_params_create.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
169resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
170loginstringЛогин для подключения к pgAdmin, в формате email (login@email.net)regex=^([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)$; maxlength=255; minlength=3
171passwordstringПароль для подключения к pgAdmin
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
164domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$; unique_scope=provider
165resource_cpuinteger200Квота ядра пода (milicores). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
166resource_memoryinteger256Квота памяти пода (MBytes)minvalue=128; maxvalue=8192
167resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/pgadmin_params_create_ops.md b/docs/30_registry/resources/pgadmin_params_create_ops.md deleted file mode 100644 index 08f8b7a..0000000 --- a/docs/30_registry/resources/pgadmin_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_params_create.md) | [Parameters](pgadmin_params_create_params.md) | [Operations](pgadmin_params_create_ops.md) diff --git a/docs/30_registry/resources/pgadmin_params_create_params.md b/docs/30_registry/resources/pgadmin_params_create_params.md deleted file mode 100644 index 08f8b7a..0000000 --- a/docs/30_registry/resources/pgadmin_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_params_create.md) | [Parameters](pgadmin_params_create_params.md) | [Operations](pgadmin_params_create_ops.md) diff --git a/docs/30_registry/resources/pgadmin_params_modify.md b/docs/30_registry/resources/pgadmin_params_modify.md deleted file mode 100644 index 0b7613e..0000000 --- a/docs/30_registry/resources/pgadmin_params_modify.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -## Modify params - - - - - - - -
IDCodeTypeDescriptionConstraints
172resource_cpuintegerКвота ядра пода (Указывается в mili). 1000Mili = 1 Ядроminvalue=100; maxvalue=4000
173resource_memoryintegerКвота памяти пода (MBytes)minvalue=128; maxvalue=8192
174resource_diskintegerКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
diff --git a/docs/30_registry/resources/pgadmin_params_modify_ops.md b/docs/30_registry/resources/pgadmin_params_modify_ops.md deleted file mode 100644 index 448a4d9..0000000 --- a/docs/30_registry/resources/pgadmin_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_params_modify.md) | [Parameters](pgadmin_params_modify_params.md) | [Operations](pgadmin_params_modify_ops.md) diff --git a/docs/30_registry/resources/pgadmin_params_modify_params.md b/docs/30_registry/resources/pgadmin_params_modify_params.md deleted file mode 100644 index 448a4d9..0000000 --- a/docs/30_registry/resources/pgadmin_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_pgadmin - -Service ID: `96` - -Service Name: pgAdmin - -[Manual](pgadmin.md) | [Create params](pgadmin_params_create.md) | [Modify params](pgadmin_params_modify.md) | [Output params](pgadmin_outputs.md) | [Operations](pgadmin_ops.md) | [Example](pgadmin_example.md) - -[Overview](pgadmin_params_modify.md) | [Parameters](pgadmin_params_modify_params.md) | [Operations](pgadmin_params_modify_ops.md) diff --git a/docs/30_registry/resources/pgadmin_redeploy.md b/docs/30_registry/resources/pgadmin_redeploy.md deleted file mode 100644 index 6685d21..0000000 --- a/docs/30_registry/resources/pgadmin_redeploy.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_pgadmin_redeploy - -Service: nubes_pgadmin - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_pgadmin_redeploy" "example" { - pgadmin_id = nubes_pgadmin.example.id - run_id = "change-me" - resource_realm = "TODO" -} -``` diff --git a/docs/30_registry/resources/pgadmin_redeploy_ops.md b/docs/30_registry/resources/pgadmin_redeploy_ops.md deleted file mode 100644 index af1cee6..0000000 --- a/docs/30_registry/resources/pgadmin_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_pgadmin_redeploy - -Service: nubes_pgadmin - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) diff --git a/docs/30_registry/resources/pgadmin_redeploy_params.md b/docs/30_registry/resources/pgadmin_redeploy_params.md deleted file mode 100644 index af1cee6..0000000 --- a/docs/30_registry/resources/pgadmin_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_pgadmin_redeploy - -Service: nubes_pgadmin - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) - -[Overview](pgadmin_redeploy.md) | [Parameters](pgadmin_redeploy_params.md) | [Operations](pgadmin_redeploy_ops.md) diff --git a/docs/30_registry/resources/postgres.md b/docs/30_registry/resources/postgres.md deleted file mode 100644 index 61e7668..0000000 --- a/docs/30_registry/resources/postgres.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## MAN - -
-# Инструкция по развертыванию PostgreSQL через платформу

---
## 1. Общая информация

PostgreSQL — это надёжная объектно-реляционная СУБД с открытым исходным кодом, поддерживающая расширенный набор функций, транзакции и хранение сложных типов данных. Развёртывание полностью автоматизировано платформой на базе Zalando Postgres Operator с использованием Kubernetes.

## Доступные операции

- **create** — Создание кластера
- **delete** — Удаление кластера
- **modify** — Модификация кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера
- **restart** — Перезапуск кластера
- **recovery** — Восстановление из резервной копии

- **create_user** — Создание пользователя
- **delete_user** — Удаление пользователя

- **create_database** — Создание базы данных
- **delete_database** — Удаление базы данных


---
## 2. Параметры развертывания кластера

Ниже перечислены параметры, которые необходимо указать при создании ресурса PostgreSQL:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество инстансов (реплик) в кластере PostgreSQL. Пример: `2` (master + slave).

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных в гигабайтах. Пример: `20`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master. Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP master:**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`

* **Выделяет внешний IP для доступа к slave:**
Флаг для выделения внешнего IP для slave (реплики чтения). Работает, если slave присутствует в кластере.

* **Имя ipSpace для публикации внешнего IP slave:**
Если включен параметр для slave, то поле необходимо заполнить.

* **UUID экземпляра услуги S3:**
UUID экземпляра S3 для хранения резервных копий.

* **Версия PostgreSQL:**
Версия PostgreSQL для развертывания. Пример: `16`

* **Расписание бэкапов (ext_BACKUP_SCHEDULE):**
Необязательный. Cron-выражение для времени запуска бэкапов. По умолчанию: `0 0 * * *` (ежедневно в полночь).

* **Количество сохраняемых бэкапов (ext_BACKUP_NUM_TO_RETAIN):**
Необязательный. Количество сохраняемых бэкапов. По умолчанию: `7`

* **PgPooler (master / slave):**
Флаги включения PgBouncer для подключений на запись и чтение. При включении создаётся отдельный под.

* **Разрешить подключение без SSL (allowNoSSL):**
По умолчанию подключение с sslmode=require. При `true` разрешается подключение без SSL.

* **Автоскейлинг PV (autoScale):**
Включает автоскейлинг тома. Требует настройки autoScalePercentage, autoScaleTechWindow, autoScaleQuotaGb.

* **Дополнительные параметры PostgreSQL (jsonParameters):**
JSON с переменными конфигурации PostgreSQL. Документация: https://www.postgresql.org/docs/current/runtime-config.html

---
## 3. Выходные параметры

После успешного развертывания ресурса PostgreSQL платформа возвращает ряд параметров.

#### externalConnect

Внешние эндпоинты для подключения к кластеру:
- **master** — для операций записи (host: `write.${namespace}`, port: 5432)
- **slave** — для операций чтения (host: `read.${namespace}`, port: 5432)

Пример ответа платформы:

```json
{
"slave": {
"ip": "",
"fqdn": "",
"uuid": "",
"isExternal": false
},
"master": {
"ip": "<ip>",
"fqdn": "write.<namespace>.<cluster-domain>",
"uuid": "<uuid>",
"isExternal": false
}
}
```

Поля: `ip` — внешний IP; `fqdn` — полное имя хоста; `uuid` — идентификатор; `isExternal` — признак внешнего доступа.

#### internalConnect

Внутренние эндпоинты (FQDN) для подключения из других сервисов внутри той же сети Kubernetes.

Пример ответа платформы:

```json
{
"slave": "",
"master": {
"slave": "",
"master": {
"slave": "",
"master": "postgresqlk8s-master.<namespace>.svc.cluster.local"
}
}
}
```

Для подключения используйте значение `master.master.master` (host для записи) или соответствующее значение slave (host для чтения).

Для подключения используется порт **5432**.

---
## 4. Управление пользователями

### create_user — Создание пользователя

* **Имя пользователя (username):**
Имя создаваемого пользователя. Используется для подключения к базе и настройки прав.
Пример: `myapp_user`

* **Роль (role):**
Тип роли пользователя. Допустимые значения:
- `app_user` — базовые права для DML-операций (SELECT, INSERT, UPDATE, DELETE)
- `ddl_user` — расширенные права: createdb, createrole (управление базами и ролями)

Защищённые имена, которые нельзя использовать: `admin`, `postgres`, `standby`.

### delete_user — Удаление пользователя

* **Имя пользователя (username):**
Имя удаляемого пользователя. Пример: `myapp_user`

Пользователя нельзя удалить, если он является владельцем базы данных. Сначала удалите или передайте владение базами данных другому пользователю.

---
## 5. Управление базами данных

### create_database — Создание базы данных

* **Имя базы данных (dbName):**
Название создаваемой базы данных. Пример: `myapp_db`

* **Владелец базы данных (dbOwner):**
Имя пользователя-владельца базы. Должен существовать в кластере (создан через create_user). Пример: `myapp_user`

### delete_database — Удаление базы данных

* **Имя базы данных (dbName):**
Название удаляемой базы данных. Пример: `myapp_db`
-
diff --git a/docs/30_registry/resources/postgres_backup.md b/docs/30_registry/resources/postgres_backup.md deleted file mode 100644 index 96074ea..0000000 --- a/docs/30_registry/resources/postgres_backup.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_postgres_backup - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [Backup](postgres_backup.md) | [Example](postgres_backup_example.md) - -## Create params - -None. - -## Delete params - -None. diff --git a/docs/30_registry/resources/postgres_backup_example.md b/docs/30_registry/resources/postgres_backup_example.md deleted file mode 100644 index a49493b..0000000 --- a/docs/30_registry/resources/postgres_backup_example.md +++ /dev/null @@ -1,30 +0,0 @@ -# Resource nubes_postgres_backup — Example - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [Backup](postgres_backup.md) | [Example](postgres_backup_example.md) - -## Copy-ready manifest (`postgres_backup_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "5.0.75" - } - } -} - -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc" -} - -# Родительский ресурс — nubes_postgres должен быть создан заранее -# resource "nubes_postgres" "baza" { ... } - -resource "nubes_postgres_backup" "example" { - postgres_id = nubes_postgres.baza.id -} -``` diff --git a/docs/30_registry/resources/postgres_database.md b/docs/30_registry/resources/postgres_database.md deleted file mode 100644 index af1dd78..0000000 --- a/docs/30_registry/resources/postgres_database.md +++ /dev/null @@ -1,24 +0,0 @@ -# Resource nubes_postgres_database - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [Database](postgres_database.md) | [Example](postgres_database_example.md) - -## Create params - -**Обязательные параметры** - - - - - - -
IDCodeTypeDescriptionConstraints
741db_namestringregex=^[A-Za-z0-9]+$
742db_ownerstring
- -## Delete params - - - - - -
IDCodeTypeDescriptionConstraints
743db_namestring
diff --git a/docs/30_registry/resources/postgres_database_example.md b/docs/30_registry/resources/postgres_database_example.md deleted file mode 100644 index 0b9634f..0000000 --- a/docs/30_registry/resources/postgres_database_example.md +++ /dev/null @@ -1,37 +0,0 @@ -# Resource nubes_postgres_database — Example - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [Database](postgres_database.md) | [Example](postgres_database_example.md) - -## Copy-ready manifest (`postgres_database_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes-test/nubes" - version = "5.0.57" - } - } -} - -provider "nubes" { - api_token = "ваш_токен" - api_endpoint = "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc" -} - -# Родительский ресурс — nubes_postgres должен быть создан заранее -# resource "nubes_postgres" "baza" { ... } - -# Пользователь должен быть создан заранее -# resource "nubes_postgres_user" "myapp" { ... } - -resource "nubes_postgres_database" "example" { - postgres_id = nubes_postgres.baza.id - db_name = "myappdb" # только A-Z, a-z, 0-9, без подчёркиваний! - db_owner = nubes_postgres_user.myapp.username -} -``` -} -``` diff --git a/docs/30_registry/resources/postgres_example.md b/docs/30_registry/resources/postgres_example.md deleted file mode 100644 index 43d3e33..0000000 --- a/docs/30_registry/resources/postgres_example.md +++ /dev/null @@ -1,140 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Copy-ready manifest (`postgres_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes-test/nubes" - version = "5.0.57" - } - } -} - -variable "api_token" { - type = string - sensitive = true -} -variable "s3_uid" { - type = string -} -variable "realm" { - type = string -} - -provider "nubes" { - api_token = var.api_token - api_endpoint = "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc" -} - -# ============================================================================= -# PostgreSQL — основной ресурс -# ============================================================================= -resource "nubes_postgres" "baza" { - resource_name = "pg-my-instance" - - # Платформа развёртывания - startup_configuration = jsonencode({ - resourceRealm = var.realm - }) - - # Размер кластера - cluster_configuration = jsonencode({ - cpu = "500" - memory = "512" - replicas = "1" - disk = "10" - }) - - # Сетевой доступ - access_configuration = jsonencode({ - masterIpSpace = "no-needed" - masterAccessList = [] - slaveIpSpace = "no-needed" - slaveAccessList = [] - }) - - # Параметры PostgreSQL - postgres_configuration = jsonencode({ - version = "17" - sslRequired = true - poolerMaster = false - poolerSlave = false - }) - - # Доп. параметры postgresql.conf (опционально) - postgres_conf = jsonencode([ - { - paramName = "log_connections" - paramValue = "''" - } - ]) - - # Резервное копирование - backup_configuration = jsonencode({ - s3Uid = var.s3_uid - retain = "7" - schedule = "0 0 * * *" - }) - - # Автоскейлинг - autoscale_configuration = jsonencode({ - enabled = false - schedule = "0" - percent = "10" - quota = "100" - }) - - operation_timeout = "11m" - adopt_existing_on_create = true -} - -# ============================================================================= -# Пользователь базы данных -# ============================================================================= -resource "nubes_postgres_user" "app_user" { - postgres_id = nubes_postgres.baza.id - username = "myapp" - role = "app_user" - adopt_existing_on_create = true -} - -# ============================================================================= -# База данных -# ============================================================================= -resource "nubes_postgres_database" "app_db" { - postgres_id = nubes_postgres.baza.id - db_name = "myappdb" - db_owner = nubes_postgres_user.app_user.username - adopt_existing_on_create = true -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_postgres.baza.state_params["имя_ключа"] -nubes_postgres.baza.state_out["имя_ключа"] -nubes_postgres.baza.state_params_flat["имя_ключа"] -nubes_postgres.baza.state_out_flat["имя_ключа"] -nubes_postgres.baza.vault_secrets["имя_ключа"] -nubes_postgres.baza.vault_url -nubes_postgres.baza.vault_user_path -nubes_postgres.baza.vault_fields -``` - -## terraform.tfvars - -```hcl -api_token = "ваш_токен" -s3_uid = "UUID-S3-Object-Storage" -realm = "k8s-3-sandbox-nubes-ru" -``` diff --git a/docs/30_registry/resources/postgres_example_ops.md b/docs/30_registry/resources/postgres_example_ops.md deleted file mode 100644 index f9190cc..0000000 --- a/docs/30_registry/resources/postgres_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_example.md) | [Parameters](postgres_example_params.md) | [Operations](postgres_example_ops.md) diff --git a/docs/30_registry/resources/postgres_example_params.md b/docs/30_registry/resources/postgres_example_params.md deleted file mode 100644 index f9190cc..0000000 --- a/docs/30_registry/resources/postgres_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_example.md) | [Parameters](postgres_example_params.md) | [Operations](postgres_example_ops.md) diff --git a/docs/30_registry/resources/postgres_instruction.md b/docs/30_registry/resources/postgres_instruction.md deleted file mode 100644 index 6e2fbc2..0000000 --- a/docs/30_registry/resources/postgres_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для postgres - -PostgreSQL кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. diff --git a/docs/30_registry/resources/postgres_man.md b/docs/30_registry/resources/postgres_man.md deleted file mode 100644 index ad85f56..0000000 --- a/docs/30_registry/resources/postgres_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: postgres - -PostgreSQL кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.
Автоматическое резервное копирование, ручное восстановление. diff --git a/docs/30_registry/resources/postgres_ops.md b/docs/30_registry/resources/postgres_ops.md deleted file mode 100644 index cc2703c..0000000 --- a/docs/30_registry/resources/postgres_ops.md +++ /dev/null @@ -1,23 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](postgres_params_create.md) -- `create_backup` — . См. [nubes_postgres_backup](postgres_backup.md) -- `create_database` — . См. [nubes_postgres_database](postgres_database.md) -- `create_user` — . См. [nubes_postgres_user](postgres_user.md) -- `delete` -- `delete_database` — . См. [nubes_postgres_database](postgres_database.md) -- `delete_user` — . См. [nubes_postgres_user](postgres_user.md) -- `modify` — Изменение кластера. Параметры: [Modify params](postgres_params_modify.md) -- `reconcile` -- `recovery` -- `restart` — ВНИМАНИЕ - Рестарт предполагает УДАЛЕНИЕ подов. Может быть полная поломка. Крайне осторожно запускать при работе -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/postgres_outputs.md b/docs/30_registry/resources/postgres_outputs.md deleted file mode 100644 index f07b697..0000000 --- a/docs/30_registry/resources/postgres_outputs.md +++ /dev/null @@ -1,65 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (running/suspended snapshot) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_out_flat` ключи - -- `state_out_flat["externalConnect"]` -- `state_out_flat["externalConnect.master"]` -- `state_out_flat["externalConnect.master.fqdn"]` -- `state_out_flat["externalConnect.master.ip"]` -- `state_out_flat["externalConnect.master.isExternal"]` -- `state_out_flat["externalConnect.master.uuid"]` -- `state_out_flat["externalConnect.slave"]` -- `state_out_flat["externalConnect.slave.fqdn"]` -- `state_out_flat["externalConnect.slave.ip"]` -- `state_out_flat["externalConnect.slave.isExternal"]` -- `state_out_flat["externalConnect.slave.uuid"]` -- `state_out_flat["internalConnect"]` -- `state_out_flat["internalConnect.master"]` -- `state_out_flat["internalConnect.slave"]` -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.k8spostgresql"]` -- `state_out_flat["monitoring.k8spostgresql.url"]` -- `state_out_flat["monitoring.k8spostgresqlbackup"]` -- `state_out_flat["monitoring.k8spostgresqlbackup.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` - -### `vault_secrets` ключи - -- `vault_secrets["adminPass"]` -- `vault_secrets["adminUser"]` -- `vault_secrets["standbyPass"]` -- `vault_secrets["standbyUser"]` - -### Пример для связки с Lucee/NodeJS - -```hcl -testds_connectionString = "jdbc:postgresql://${nubes_postgres.db2.state_out_flat["internalConnect.master"]}:5432/postgres?sslmode=require" -testds_username = nubes_postgres.db2.vault_secrets["adminUser"] -testds_password = nubes_postgres.db2.vault_secrets["adminPass"] -``` diff --git a/docs/30_registry/resources/postgres_outputs_ops.md b/docs/30_registry/resources/postgres_outputs_ops.md deleted file mode 100644 index 1a852cb..0000000 --- a/docs/30_registry/resources/postgres_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_outputs.md) | [Parameters](postgres_outputs_params.md) | [Operations](postgres_outputs_ops.md) diff --git a/docs/30_registry/resources/postgres_outputs_params.md b/docs/30_registry/resources/postgres_outputs_params.md deleted file mode 100644 index 1a852cb..0000000 --- a/docs/30_registry/resources/postgres_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_outputs.md) | [Parameters](postgres_outputs_params.md) | [Operations](postgres_outputs_ops.md) diff --git a/docs/30_registry/resources/postgres_params.md b/docs/30_registry/resources/postgres_params.md deleted file mode 100644 index b44e9f4..0000000 --- a/docs/30_registry/resources/postgres_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Parameters - -- [Create params](postgres_params_create.md) -- [Modify params](postgres_params_modify.md) diff --git a/docs/30_registry/resources/postgres_params_create.md b/docs/30_registry/resources/postgres_params_create.md deleted file mode 100644 index 4429602..0000000 --- a/docs/30_registry/resources/postgres_params_create.md +++ /dev/null @@ -1,85 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Create params - -Параметры сгруппированы в JSON-блоки. Каждый блок — это `jsonencode({...})` в манифесте. - -### startup_configuration — платформа развёртывания - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `resourceRealm` | string | да | Платформа/K8s-кластер. Примеры: `k8s-3-sandbox-nubes-ru`, `iot-naeel`, `naeel-test-3` | - -### cluster_configuration — размер кластера - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `cpu` | string | да | Квота CPU в милликорах (1000 = 1 vCPU) | -| `memory` | string | да | Квота памяти в MB | -| `replicas` | string | да | Количество нод (1 = без реплики, 2 = master + slave) | -| `disk` | string | да | Размер диска в GB | - -### access_configuration — сетевой доступ - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `masterIpSpace` | string | да | ipSpace для внешнего IP master. `"no-needed"` если не нужен | -| `masterAccessList` | array | да | Список IP/сетей для доступа к master. `[]` если не ограничен | -| `slaveIpSpace` | string | да | ipSpace для внешнего IP slave | -| `slaveAccessList` | array | да | Список IP/сетей для доступа к slave | - -### postgres_configuration — параметры PostgreSQL - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `version` | string | да | Версия PostgreSQL: `"16"`, `"17"` | -| `sslRequired` | boolean | да | Требовать SSL-подключения | -| `poolerMaster` | boolean | да | Включить PgBouncer для master | -| `poolerSlave` | boolean | да | Включить PgBouncer для slave | - -### postgres_conf — дополнительные параметры (опционально) - -Массив объектов `[{paramName, paramValue}]`. Пример: -```json -[{"paramName": "log_connections", "paramValue": "''"}] -``` - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `paramName` | string | да | Имя параметра postgresql.conf | -| `paramValue` | string | да | Значение параметра | - -### backup_configuration — резервное копирование - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `s3Uid` | string | да | UUID существующего S3 Object Storage | -| `retain` | string | да | Количество сохраняемых бэкапов | -| `schedule` | string | да | Cron-расписание бэкапов. `"0 0 * * *"` = ежедневно в полночь | - -### autoscale_configuration — автоскейлинг - -| Поле | Тип | Обязательное | Описание | -|---|---|---|---| -| `enabled` | boolean | да | Включить автоскейлинг | -| `schedule` | string | да | Tech window | -| `percent` | string | да | Процент увеличения при скейлинге | -| `quota` | string | да | Максимальный размер диска в GB | - -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/postgres_params_create_ops.md b/docs/30_registry/resources/postgres_params_create_ops.md deleted file mode 100644 index 87d95f8..0000000 --- a/docs/30_registry/resources/postgres_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_params_create.md) | [Parameters](postgres_params_create_params.md) | [Operations](postgres_params_create_ops.md) diff --git a/docs/30_registry/resources/postgres_params_create_params.md b/docs/30_registry/resources/postgres_params_create_params.md deleted file mode 100644 index 87d95f8..0000000 --- a/docs/30_registry/resources/postgres_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_params_create.md) | [Parameters](postgres_params_create_params.md) | [Operations](postgres_params_create_ops.md) diff --git a/docs/30_registry/resources/postgres_params_modify.md b/docs/30_registry/resources/postgres_params_modify.md deleted file mode 100644 index c508297..0000000 --- a/docs/30_registry/resources/postgres_params_modify.md +++ /dev/null @@ -1,58 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -## Modify params - -При modify можно изменить все блоки кроме `startup_configuration` (version, realm — задаются только при create). - -### cluster_configuration - -| Поле | Тип | Описание | -|---|---|---| -| `cpu` | string | Квота CPU в милликорах | -| `memory` | string | Квота памяти в MB | -| `replicas` | string | Количество нод | -| `disk` | string | Размер диска в GB | - -### access_configuration - -| Поле | Тип | Описание | -|---|---|---| -| `masterIpSpace` | string | ipSpace для внешнего IP master | -| `masterAccessList` | array | Список IP/сетей для доступа к master | -| `slaveIpSpace` | string | ipSpace для внешнего IP slave | -| `slaveAccessList` | array | Список IP/сетей для доступа к slave | - -### postgres_configuration - -| Поле | Тип | Описание | -|---|---|---| -| `sslRequired` | boolean | Требовать SSL-подключения | -| `poolerMaster` | boolean | Включить PgBouncer для master | -| `poolerSlave` | boolean | Включить PgBouncer для slave | - -### postgres_conf (опционально) - -Массив `[{paramName, paramValue}]` — дополнительные параметры postgresql.conf. - -### backup_configuration - -| Поле | Тип | Описание | -|---|---|---| -| `s3Uid` | string | UUID S3 Object Storage | -| `retain` | string | Количество сохраняемых бэкапов | -| `schedule` | string | Cron-расписание | - -### autoscale_configuration - -| Поле | Тип | Описание | -|---|---|---| -| `enabled` | boolean | Включить автоскейлинг | -| `schedule` | string | Tech window | -| `percent` | string | Процент увеличения | -| `quota` | string | Максимальный размер диска в GB | diff --git a/docs/30_registry/resources/postgres_params_modify_ops.md b/docs/30_registry/resources/postgres_params_modify_ops.md deleted file mode 100644 index 81ea602..0000000 --- a/docs/30_registry/resources/postgres_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_params_modify.md) | [Parameters](postgres_params_modify_params.md) | [Operations](postgres_params_modify_ops.md) diff --git a/docs/30_registry/resources/postgres_params_modify_params.md b/docs/30_registry/resources/postgres_params_modify_params.md deleted file mode 100644 index 81ea602..0000000 --- a/docs/30_registry/resources/postgres_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_postgres - -Service ID: `90` - -Service Name: PostgreSQL - -[Manual](postgres.md) | [Create params](postgres_params_create.md) | [Modify params](postgres_params_modify.md) | [Output params](postgres_outputs.md) | [Operations](postgres_ops.md) | [Example](postgres_example.md) - -[Overview](postgres_params_modify.md) | [Parameters](postgres_params_modify_params.md) | [Operations](postgres_params_modify_ops.md) diff --git a/docs/30_registry/resources/postgres_recovery.md b/docs/30_registry/resources/postgres_recovery.md deleted file mode 100644 index 80851a5..0000000 --- a/docs/30_registry/resources/postgres_recovery.md +++ /dev/null @@ -1,31 +0,0 @@ -# Resource nubes_postgres_recovery - -Service: nubes_postgres - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -## Example - -```hcl -resource "nubes_postgres_recovery" "example" { - postgres_id = nubes_postgres.example.id - run_id = "change-me" - resource_instances = 1 - resource_memory = 512 - resource_c_p_u = 500 - resource_disk = 1 - resource_realm = "TODO" -} -``` diff --git a/docs/30_registry/resources/postgres_recovery_ops.md b/docs/30_registry/resources/postgres_recovery_ops.md deleted file mode 100644 index 341c6fd..0000000 --- a/docs/30_registry/resources/postgres_recovery_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_postgres_recovery - -Service: nubes_postgres - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) diff --git a/docs/30_registry/resources/postgres_recovery_params.md b/docs/30_registry/resources/postgres_recovery_params.md deleted file mode 100644 index 341c6fd..0000000 --- a/docs/30_registry/resources/postgres_recovery_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_postgres_recovery - -Service: nubes_postgres - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) - -[Overview](postgres_recovery.md) | [Parameters](postgres_recovery_params.md) | [Operations](postgres_recovery_ops.md) diff --git a/docs/30_registry/resources/postgres_restart.md b/docs/30_registry/resources/postgres_restart.md deleted file mode 100644 index efbb781..0000000 --- a/docs/30_registry/resources/postgres_restart.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_postgres_restart - -Service: nubes_postgres - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -## Example - -```hcl -resource "nubes_postgres_restart" "example" { - postgres_id = nubes_postgres.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/postgres_restart_ops.md b/docs/30_registry/resources/postgres_restart_ops.md deleted file mode 100644 index 76cf407..0000000 --- a/docs/30_registry/resources/postgres_restart_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_postgres_restart - -Service: nubes_postgres - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) diff --git a/docs/30_registry/resources/postgres_restart_params.md b/docs/30_registry/resources/postgres_restart_params.md deleted file mode 100644 index 76cf407..0000000 --- a/docs/30_registry/resources/postgres_restart_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_postgres_restart - -Service: nubes_postgres - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) - -[Overview](postgres_restart.md) | [Parameters](postgres_restart_params.md) | [Operations](postgres_restart_ops.md) diff --git a/docs/30_registry/resources/postgres_user.md b/docs/30_registry/resources/postgres_user.md deleted file mode 100644 index e82e589..0000000 --- a/docs/30_registry/resources/postgres_user.md +++ /dev/null @@ -1,24 +0,0 @@ -# Resource nubes_postgres_user - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [User](postgres_user.md) | [Example](postgres_user_example.md) - -## Create params - -**Обязательные параметры** - - - - - - -
IDCodeTypeDescriptionConstraints
733usernamestringregex=^[A-Za-z0-9]+$; maxlength=62; minlength=2
740rolestring`app_user` — стандартный пользователь с базовым набором прав
`ddl_user` — пользователь с расширенными правами, включая управление ролями и базами данных
value_list=app_user, ddl_user
- -## Delete params - - - - - -
IDCodeTypeDescriptionConstraints
739usernamestringПример: `username-admin`
diff --git a/docs/30_registry/resources/postgres_user_example.md b/docs/30_registry/resources/postgres_user_example.md deleted file mode 100644 index 2b4912e..0000000 --- a/docs/30_registry/resources/postgres_user_example.md +++ /dev/null @@ -1,34 +0,0 @@ -# Resource nubes_postgres_user — Example - -Service: `nubes_postgres` (ID: 90) - -[PostgreSQL (основной)](postgres.md) | [Operations](postgres_ops.md) | [User](postgres_user.md) | [Example](postgres_user_example.md) - -## Copy-ready manifest (`postgres_user_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes-test/nubes" - version = "5.0.57" - } - } -} - -provider "nubes" { - api_token = "ваш_токен" - api_endpoint = "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc" -} - -# Родительский ресурс — nubes_postgres должен быть создан заранее -# resource "nubes_postgres" "baza" { ... } - -resource "nubes_postgres_user" "example" { - postgres_id = nubes_postgres.baza.id - username = "myapp" # только A-Z, a-z, 0-9, без подчёркиваний - role = "app_user" # app_user (базовый) или ddl_user (расширенный) -} -``` -} -``` diff --git a/docs/30_registry/resources/rabbitmq.md b/docs/30_registry/resources/rabbitmq.md deleted file mode 100644 index d0e5af3..0000000 --- a/docs/30_registry/resources/rabbitmq.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## MAN - -
-# Инструкция по развертыванию RabbitMQ через платформу

---
## 1. Общая информация
RabbitMQ — это брокер сообщений с открытым исходным кодом, который обеспечивает надёжную доставку сообщений между приложениями.
Позволяет надёжно передавать сообщения между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние, так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.

## Доступные операции
- **create** — Создание кластера
- **modify** — Изменение параметров кластера
- **delete** — Удаление кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера


---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса RabbitMQ:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество реплик в кластере RabbitMQ. При значении больше 1 создаётся кластер с репликацией для обеспечения высокой доступности.
Пример: `1` (single node) или `3` (кластер с репликацией)

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных RabbitMQ в гигабайтах. Пример: `50`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-узлу. При включении создаётся Service типа LoadBalancer и настраивается VIP на порту 5672.
Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP master:**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`


---
## 3. Модификация кластера
Операция **modify** позволяет изменить параметры существующего кластера RabbitMQ.

**Изменяемые параметры:**
* **Квота (megabyte) памяти пода** — можно увеличить или уменьшить
* **Квота (millicore) ядра пода** — можно увеличить или уменьшить
* **Размер (gigabyte) диска для базы данных** — можно только увеличить (уменьшение не поддерживается)
* **Количество узлов в сети** — можно только увеличить (уменьшение не поддерживается)
* **Выделяет внешний IP для доступа к master** — можно включить или выключить
* **Имя ipSpace для публикации внешнего IP master** — можно изменить при включенном внешнем IP

**Ограничения:**
* Уменьшение размера диска не поддерживается
* Уменьшение количества реплик не поддерживается

---
## 4. Выходные параметры
После успешного развертывания ресурса RabbitMQ платформа возвращает ряд параметров в разделе "Поля состояния (сгенерированные значения)":

**clusterDomain**
Домен кластера Kubernetes, в котором развернут RabbitMQ.
Пример: `cluster.local`

**inernalConnect**
Внутренние эндпоинты для подключения к кластеру RabbitMQ из других сервисов, развернутых внутри той же сети.
Содержит:
* **master** — FQDN для подключения к кластеру. Пример: `rabbitmqk8s.{namespace}.svc.{clusterDomain}`

**externalConnect**
Внешние эндпоинты для подключения к кластеру RabbitMQ извне.
Содержит объекты с полями:
* **admin** — доступ к веб-интерфейсу управления:
* `fqdn` — полное доменное имя для веб-интерфейса. Пример: `admin.{namespace}.{domain}`
* `ip` — IP-адрес
* **master** — доступ к AMQP протоколу (если включен внешний IP):
* `fqdn` — полное доменное имя для AMQP. Пример: `write.{namespace}.{domain}`
* `ip` — IP-адрес

**monitoring**
Информация о дашбордах мониторинга:
* **allDashboards** — URL для доступа ко всем дашбордам Grafana

Для подключения используются следующие порты:

* **5672** — AMQP протокол (внутренний и внешний доступ, если включен внешний IP)
* **15672** — веб-интерфейс управления (доступен через Ingress по HTTPS)

**Учётные данные**
Данные для подключения к RabbitMQ доступны в разделе "Учётные данные":
* **adminUser** — имя пользователя администратора
* **adminPass** — пароль администратора


---
## 5. Примеры подключения через консоль (rabbitmqadmin)

### Работа с очередями через rabbitmqadmin

Для работы с RabbitMQ через консоль используется утилита `rabbitmqadmin`. Установите её или используйте образ с предустановленной утилитой.

Задайте переменные окружения с учётными данными:

```bash
export RABBITMQ_USERNAME=<adminUser>
export RABBITMQ_PASSWORD=<adminPass>
export RABBIT_HOST=<host>
```

Где:
* `<adminUser>` и `<adminPass>` — учётные данные из раздела "Учётные данные"
* `<host>` — адрес для подключения:
* Для внешнего подключения: `externalConnect.admin.fqdn` или `externalConnect.master.fqdn`

**Создание очереди:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
declare queue name=healthcheck durable=false
```

**Листинг очередей:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
list queues
```

**Отправка сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
publish exchange=amq.default routing_key=healthcheck payload="ping-$(date +%s)"
```

**Чтение сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
get queue=healthcheck ackmode=ack_requeue_false
```

---
## 6. Дополнительная информация
Для подключения к кластеру RabbitMQ используйте полученные эндпоинты из раздела "Поля состояния (сгенерированные значения)" и учётные данные из раздела "Учётные данные".

Веб-интерфейс управления доступен по адресу, указанному в параметре `externalConnect.admin.fqdn` через HTTPS.

Для внутреннего подключения используйте адрес из `inernalConnect.master` на порту 5672.

--- -
diff --git a/docs/30_registry/resources/rabbitmq_example.md b/docs/30_registry/resources/rabbitmq_example.md deleted file mode 100644 index d3cbece..0000000 --- a/docs/30_registry/resources/rabbitmq_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Copy-ready manifest (`rabbitmq_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_rabbitmq" "baza" { - resource_realm = "TODO" # Выбрать платформу из списка - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 1000 # Пример: `2000` - resource_memory = 1124 # Пример: `2048` - resource_disk = 30 # Пример: `20` - resource_instances = 1 # Пример: `1` - need_external_address_master = false # Флаг, определяющий, нужно ли выделять внешний IP для доступа к master. Пример: `true` или `false` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_rabbitmq.baza.state_params["имя_ключа"] -nubes_rabbitmq.baza.state_out["имя_ключа"] -nubes_rabbitmq.baza.state_params_flat["имя_ключа"] -nubes_rabbitmq.baza.state_out_flat["имя_ключа"] -nubes_rabbitmq.baza.vault_secrets["имя_ключа"] -nubes_rabbitmq.baza.vault_url -nubes_rabbitmq.baza.vault_user_path -nubes_rabbitmq.baza.vault_fields -``` diff --git a/docs/30_registry/resources/rabbitmq_example_ops.md b/docs/30_registry/resources/rabbitmq_example_ops.md deleted file mode 100644 index efb5f4f..0000000 --- a/docs/30_registry/resources/rabbitmq_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_example.md) | [Parameters](rabbitmq_example_params.md) | [Operations](rabbitmq_example_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_example_params.md b/docs/30_registry/resources/rabbitmq_example_params.md deleted file mode 100644 index efb5f4f..0000000 --- a/docs/30_registry/resources/rabbitmq_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_example.md) | [Parameters](rabbitmq_example_params.md) | [Operations](rabbitmq_example_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_instruction.md b/docs/30_registry/resources/rabbitmq_instruction.md deleted file mode 100644 index 5343d74..0000000 --- a/docs/30_registry/resources/rabbitmq_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для rabbitmq - -# Инструкция по развертыванию RabbitMQ через платформу

---
## 1. Общая информация
RabbitMQ — это брокер сообщений с открытым исходным кодом, который обеспечивает надёжную доставку сообщений между приложениями.
Позволяет надёжно передавать сообщения между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние, так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.

## Доступные операции
- **create** — Создание кластера
- **modify** — Изменение параметров кластера
- **delete** — Удаление кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера


---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса RabbitMQ:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество реплик в кластере RabbitMQ. При значении больше 1 создаётся кластер с репликацией для обеспечения высокой доступности.
Пример: `1` (single node) или `3` (кластер с репликацией)

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных RabbitMQ в гигабайтах. Пример: `50`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-узлу. При включении создаётся Service типа LoadBalancer и настраивается VIP на порту 5672.
Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP master:**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`


---
## 3. Модификация кластера
Операция **modify** позволяет изменить параметры существующего кластера RabbitMQ.

**Изменяемые параметры:**
* **Квота (megabyte) памяти пода** — можно увеличить или уменьшить
* **Квота (millicore) ядра пода** — можно увеличить или уменьшить
* **Размер (gigabyte) диска для базы данных** — можно только увеличить (уменьшение не поддерживается)
* **Количество узлов в сети** — можно только увеличить (уменьшение не поддерживается)
* **Выделяет внешний IP для доступа к master** — можно включить или выключить
* **Имя ipSpace для публикации внешнего IP master** — можно изменить при включенном внешнем IP

**Ограничения:**
* Уменьшение размера диска не поддерживается
* Уменьшение количества реплик не поддерживается

---
## 4. Выходные параметры
После успешного развертывания ресурса RabbitMQ платформа возвращает ряд параметров в разделе "Поля состояния (сгенерированные значения)":

**clusterDomain**
Домен кластера Kubernetes, в котором развернут RabbitMQ.
Пример: `cluster.local`

**inernalConnect**
Внутренние эндпоинты для подключения к кластеру RabbitMQ из других сервисов, развернутых внутри той же сети.
Содержит:
* **master** — FQDN для подключения к кластеру. Пример: `rabbitmqk8s.{namespace}.svc.{clusterDomain}`

**externalConnect**
Внешние эндпоинты для подключения к кластеру RabbitMQ извне.
Содержит объекты с полями:
* **admin** — доступ к веб-интерфейсу управления:
* `fqdn` — полное доменное имя для веб-интерфейса. Пример: `admin.{namespace}.{domain}`
* `ip` — IP-адрес
* **master** — доступ к AMQP протоколу (если включен внешний IP):
* `fqdn` — полное доменное имя для AMQP. Пример: `write.{namespace}.{domain}`
* `ip` — IP-адрес

**monitoring**
Информация о дашбордах мониторинга:
* **allDashboards** — URL для доступа ко всем дашбордам Grafana

Для подключения используются следующие порты:

* **5672** — AMQP протокол (внутренний и внешний доступ, если включен внешний IP)
* **15672** — веб-интерфейс управления (доступен через Ingress по HTTPS)

**Учётные данные**
Данные для подключения к RabbitMQ доступны в разделе "Учётные данные":
* **adminUser** — имя пользователя администратора
* **adminPass** — пароль администратора


---
## 5. Примеры подключения через консоль (rabbitmqadmin)

### Работа с очередями через rabbitmqadmin

Для работы с RabbitMQ через консоль используется утилита `rabbitmqadmin`. Установите её или используйте образ с предустановленной утилитой.

Задайте переменные окружения с учётными данными:

```bash
export RABBITMQ_USERNAME=<adminUser>
export RABBITMQ_PASSWORD=<adminPass>
export RABBIT_HOST=<host>
```

Где:
* `<adminUser>` и `<adminPass>` — учётные данные из раздела "Учётные данные"
* `<host>` — адрес для подключения:
* Для внешнего подключения: `externalConnect.admin.fqdn` или `externalConnect.master.fqdn`

**Создание очереди:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
declare queue name=healthcheck durable=false
```

**Листинг очередей:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
list queues
```

**Отправка сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
publish exchange=amq.default routing_key=healthcheck payload="ping-$(date +%s)"
```

**Чтение сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
get queue=healthcheck ackmode=ack_requeue_false
```

---
## 6. Дополнительная информация
Для подключения к кластеру RabbitMQ используйте полученные эндпоинты из раздела "Поля состояния (сгенерированные значения)" и учётные данные из раздела "Учётные данные".

Веб-интерфейс управления доступен по адресу, указанному в параметре `externalConnect.admin.fqdn` через HTTPS.

Для внутреннего подключения используйте адрес из `inernalConnect.master` на порту 5672.

--- diff --git a/docs/30_registry/resources/rabbitmq_man.md b/docs/30_registry/resources/rabbitmq_man.md deleted file mode 100644 index 9c7863d..0000000 --- a/docs/30_registry/resources/rabbitmq_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: rabbitmq - -# Инструкция по развертыванию RabbitMQ через платформу

---
## 1. Общая информация
RabbitMQ — это брокер сообщений с открытым исходным кодом, который обеспечивает надёжную доставку сообщений между приложениями.
Позволяет надёжно передавать сообщения между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние, так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.

## Доступные операции
- **create** — Создание кластера
- **modify** — Изменение параметров кластера
- **delete** — Удаление кластера
- **suspend** — Остановка кластера
- **resume** — Запуск кластера


---
## 2. Параметры развертывания кластера
Ниже перечислены параметры, которые необходимо указать при создании ресурса RabbitMQ:

* **Платформа для развертывания:**
Платформа для развертывания (среда, в которой будет развернут кластер). Пример: `k8s-3.ext.nubes.ru`.

* **Количество узлов в сети:**
Количество реплик в кластере RabbitMQ. При значении больше 1 создаётся кластер с репликацией для обеспечения высокой доступности.
Пример: `1` (single node) или `3` (кластер с репликацией)

* **Квота (megabyte) памяти пода:**
Квота памяти пода в мегабайтах. Пример: `2048`

* **Квота (millicore) ядра пода:**
Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`

* **Размер (gigabyte) диска для базы данных:**
Размер диска для хранения данных RabbitMQ в гигабайтах. Пример: `50`

* **Выделяет внешний IP для доступа к master:**
Флаг, определяющий, нужно ли выделять внешний IP для доступа к master-узлу. При включении создаётся Service типа LoadBalancer и настраивается VIP на порту 5672.
Пример: `true` или `false`

* **Имя ipSpace для публикации внешнего IP master:**
Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`


---
## 3. Модификация кластера
Операция **modify** позволяет изменить параметры существующего кластера RabbitMQ.

**Изменяемые параметры:**
* **Квота (megabyte) памяти пода** — можно увеличить или уменьшить
* **Квота (millicore) ядра пода** — можно увеличить или уменьшить
* **Размер (gigabyte) диска для базы данных** — можно только увеличить (уменьшение не поддерживается)
* **Количество узлов в сети** — можно только увеличить (уменьшение не поддерживается)
* **Выделяет внешний IP для доступа к master** — можно включить или выключить
* **Имя ipSpace для публикации внешнего IP master** — можно изменить при включенном внешнем IP

**Ограничения:**
* Уменьшение размера диска не поддерживается
* Уменьшение количества реплик не поддерживается

---
## 4. Выходные параметры
После успешного развертывания ресурса RabbitMQ платформа возвращает ряд параметров в разделе "Поля состояния (сгенерированные значения)":

**clusterDomain**
Домен кластера Kubernetes, в котором развернут RabbitMQ.
Пример: `cluster.local`

**inernalConnect**
Внутренние эндпоинты для подключения к кластеру RabbitMQ из других сервисов, развернутых внутри той же сети.
Содержит:
* **master** — FQDN для подключения к кластеру. Пример: `rabbitmqk8s.{namespace}.svc.{clusterDomain}`

**externalConnect**
Внешние эндпоинты для подключения к кластеру RabbitMQ извне.
Содержит объекты с полями:
* **admin** — доступ к веб-интерфейсу управления:
* `fqdn` — полное доменное имя для веб-интерфейса. Пример: `admin.{namespace}.{domain}`
* `ip` — IP-адрес
* **master** — доступ к AMQP протоколу (если включен внешний IP):
* `fqdn` — полное доменное имя для AMQP. Пример: `write.{namespace}.{domain}`
* `ip` — IP-адрес

**monitoring**
Информация о дашбордах мониторинга:
* **allDashboards** — URL для доступа ко всем дашбордам Grafana

Для подключения используются следующие порты:

* **5672** — AMQP протокол (внутренний и внешний доступ, если включен внешний IP)
* **15672** — веб-интерфейс управления (доступен через Ingress по HTTPS)

**Учётные данные**
Данные для подключения к RabbitMQ доступны в разделе "Учётные данные":
* **adminUser** — имя пользователя администратора
* **adminPass** — пароль администратора


---
## 5. Примеры подключения через консоль (rabbitmqadmin)

### Работа с очередями через rabbitmqadmin

Для работы с RabbitMQ через консоль используется утилита `rabbitmqadmin`. Установите её или используйте образ с предустановленной утилитой.

Задайте переменные окружения с учётными данными:

```bash
export RABBITMQ_USERNAME=<adminUser>
export RABBITMQ_PASSWORD=<adminPass>
export RABBIT_HOST=<host>
```

Где:
* `<adminUser>` и `<adminPass>` — учётные данные из раздела "Учётные данные"
* `<host>` — адрес для подключения:
* Для внешнего подключения: `externalConnect.admin.fqdn` или `externalConnect.master.fqdn`

**Создание очереди:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
declare queue name=healthcheck durable=false
```

**Листинг очередей:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
list queues
```

**Отправка сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
publish exchange=amq.default routing_key=healthcheck payload="ping-$(date +%s)"
```

**Чтение сообщения:**

```bash
rabbitmqadmin \
-H "$RABBIT_HOST" -P 15672 \
-u "$RABBITMQ_USERNAME" -p "$RABBITMQ_PASSWORD" \
get queue=healthcheck ackmode=ack_requeue_false
```

---
## 6. Дополнительная информация
Для подключения к кластеру RabbitMQ используйте полученные эндпоинты из раздела "Поля состояния (сгенерированные значения)" и учётные данные из раздела "Учётные данные".

Веб-интерфейс управления доступен по адресу, указанному в параметре `externalConnect.admin.fqdn` через HTTPS.

Для внутреннего подключения используйте адрес из `inernalConnect.master` на порту 5672.

--- diff --git a/docs/30_registry/resources/rabbitmq_ops.md b/docs/30_registry/resources/rabbitmq_ops.md deleted file mode 100644 index fe63cf6..0000000 --- a/docs/30_registry/resources/rabbitmq_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](rabbitmq_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](rabbitmq_params_modify.md) -- `resume` -- `suspend` — Пока не работает из за того что RabbitmqCluster нельзя занулить diff --git a/docs/30_registry/resources/rabbitmq_outputs.md b/docs/30_registry/resources/rabbitmq_outputs.md deleted file mode 100644 index e325004..0000000 --- a/docs/30_registry/resources/rabbitmq_outputs.md +++ /dev/null @@ -1,57 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / sless-rabbit / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` -- `state_params["needExternalAddressMaster"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.base"]` -- `state_out_flat["monitoring.base.url"]` -- `state_out_flat["monitoring.loki"]` -- `state_out_flat["monitoring.loki.url"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["clusterDomain"]` -- `state_out_flat["inernalConnect"]` -- `state_out_flat["inernalConnect.slave"]` -- `state_out_flat["inernalConnect.master"]` -- `state_out_flat["externalConnect"]` -- `state_out_flat["externalConnect.admin"]` -- `state_out_flat["externalConnect.admin.ip"]` -- `state_out_flat["externalConnect.admin.fqdn"]` -- `state_out_flat["externalConnect.admin.uuid"]` -- `state_out_flat["externalConnect.admin.isExternal"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/rabbitmq_outputs_ops.md b/docs/30_registry/resources/rabbitmq_outputs_ops.md deleted file mode 100644 index 18fe454..0000000 --- a/docs/30_registry/resources/rabbitmq_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_outputs.md) | [Parameters](rabbitmq_outputs_params.md) | [Operations](rabbitmq_outputs_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_outputs_params.md b/docs/30_registry/resources/rabbitmq_outputs_params.md deleted file mode 100644 index 18fe454..0000000 --- a/docs/30_registry/resources/rabbitmq_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_outputs.md) | [Parameters](rabbitmq_outputs_params.md) | [Operations](rabbitmq_outputs_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_params.md b/docs/30_registry/resources/rabbitmq_params.md deleted file mode 100644 index b743d18..0000000 --- a/docs/30_registry/resources/rabbitmq_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Parameters - -- [Create params](rabbitmq_params_create.md) -- [Modify params](rabbitmq_params_modify.md) diff --git a/docs/30_registry/resources/rabbitmq_params_create.md b/docs/30_registry/resources/rabbitmq_params_create.md deleted file mode 100644 index 1a1b21f..0000000 --- a/docs/30_registry/resources/rabbitmq_params_create.md +++ /dev/null @@ -1,41 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
119resource_realmstringВыбрать платформу из спискаfunc=getAvailableResourceRealms
543ip_space_name_masterstringПример: `internet-no-antiddos-v1`
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
116resource_cpuinteger1000Пример: `2000`minvalue=500; maxvalue=4000
117resource_memoryinteger1124Пример: `2048`minvalue=512; maxvalue=8192
118resource_diskinteger30Пример: `20`minvalue=5; maxvalue=999
224resource_instancesinteger1Пример: `1`minvalue=1; maxvalue=7
225need_external_address_masterbooleanfalseФлаг, определяющий, нужно ли выделять внешний IP для доступа к master. Пример: `true` или `false`value_list=false, true
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/rabbitmq_params_create_ops.md b/docs/30_registry/resources/rabbitmq_params_create_ops.md deleted file mode 100644 index 9bfac2c..0000000 --- a/docs/30_registry/resources/rabbitmq_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_params_create.md) | [Parameters](rabbitmq_params_create_params.md) | [Operations](rabbitmq_params_create_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_params_create_params.md b/docs/30_registry/resources/rabbitmq_params_create_params.md deleted file mode 100644 index 9bfac2c..0000000 --- a/docs/30_registry/resources/rabbitmq_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_params_create.md) | [Parameters](rabbitmq_params_create_params.md) | [Operations](rabbitmq_params_create_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_params_modify.md b/docs/30_registry/resources/rabbitmq_params_modify.md deleted file mode 100644 index bdd6224..0000000 --- a/docs/30_registry/resources/rabbitmq_params_modify.md +++ /dev/null @@ -1,22 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -## Modify params - - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
304resource_cpuintegerПример: `2000`minvalue=500; maxvalue=4000
305resource_memoryintegerПример: `2048`minvalue=512; maxvalue=8192
306resource_diskintegerПример: `20`minvalue=1; maxvalue=999
307resource_instancesintegerПример: `1`minvalue=1; maxvalue=7
308need_external_address_masterbooleanВыделяет внешний (белый) IP для доступа к mastervalue_list=false, true
309need_external_address_slavebooleanВыделяет внешний (белый) IP для доступа к slavevalue_list=false, true
545ip_space_name_masterstringПример: `internet-no-antiddos-v1`
546ip_space_name_slavestringПример: `internet-no-antiddos-v1`
diff --git a/docs/30_registry/resources/rabbitmq_params_modify_ops.md b/docs/30_registry/resources/rabbitmq_params_modify_ops.md deleted file mode 100644 index 5a61a3c..0000000 --- a/docs/30_registry/resources/rabbitmq_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_params_modify.md) | [Parameters](rabbitmq_params_modify_params.md) | [Operations](rabbitmq_params_modify_ops.md) diff --git a/docs/30_registry/resources/rabbitmq_params_modify_params.md b/docs/30_registry/resources/rabbitmq_params_modify_params.md deleted file mode 100644 index 5a61a3c..0000000 --- a/docs/30_registry/resources/rabbitmq_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_rabbitmq - -Service ID: `93` - -Service Name: RabbitMQ - -[Manual](rabbitmq.md) | [Create params](rabbitmq_params_create.md) | [Modify params](rabbitmq_params_modify.md) | [Output params](rabbitmq_outputs.md) | [Operations](rabbitmq_ops.md) | [Example](rabbitmq_example.md) - -[Overview](rabbitmq_params_modify.md) | [Parameters](rabbitmq_params_modify_params.md) | [Operations](rabbitmq_params_modify_ops.md) diff --git a/docs/30_registry/resources/redis.md b/docs/30_registry/resources/redis.md deleted file mode 100644 index 4dfd2ea..0000000 --- a/docs/30_registry/resources/redis.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## MAN - -
-Redis кластер. Под кеши.
Ресурсная платформа: k8s.
Автоматизация: k8s operator
port 6379 -
diff --git a/docs/30_registry/resources/redis_example.md b/docs/30_registry/resources/redis_example.md deleted file mode 100644 index b678dc7..0000000 --- a/docs/30_registry/resources/redis_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Copy-ready manifest (`redis_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_redis" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 1000 # Квота ядра пода (Указывается в mili) - resource_memory = 1024 # Квота памяти пода (Указывается в Megabytes) - resource_disk = 30 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов - need_external_address_master = false # Выделяет внешний IP для доступа к master - need_external_address_slave = false # Выделяет внешний IP для доступа к slave. Будет работать если slave в целом есть -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_redis.baza.state_params["имя_ключа"] -nubes_redis.baza.state_out["имя_ключа"] -nubes_redis.baza.state_params_flat["имя_ключа"] -nubes_redis.baza.state_out_flat["имя_ключа"] -nubes_redis.baza.vault_secrets["имя_ключа"] -nubes_redis.baza.vault_url -nubes_redis.baza.vault_user_path -nubes_redis.baza.vault_fields -``` diff --git a/docs/30_registry/resources/redis_example_ops.md b/docs/30_registry/resources/redis_example_ops.md deleted file mode 100644 index a5e7173..0000000 --- a/docs/30_registry/resources/redis_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_example.md) | [Parameters](redis_example_params.md) | [Operations](redis_example_ops.md) diff --git a/docs/30_registry/resources/redis_example_params.md b/docs/30_registry/resources/redis_example_params.md deleted file mode 100644 index a5e7173..0000000 --- a/docs/30_registry/resources/redis_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_example.md) | [Parameters](redis_example_params.md) | [Operations](redis_example_ops.md) diff --git a/docs/30_registry/resources/redis_instruction.md b/docs/30_registry/resources/redis_instruction.md deleted file mode 100644 index f6b8d53..0000000 --- a/docs/30_registry/resources/redis_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для redis - -Redis кластер. Под кеши.
Ресурсная платформа: k8s.
Автоматизация: k8s operator
port 6379 diff --git a/docs/30_registry/resources/redis_man.md b/docs/30_registry/resources/redis_man.md deleted file mode 100644 index ab8eb16..0000000 --- a/docs/30_registry/resources/redis_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: redis - -Redis кластер. Под кеши.
Ресурсная платформа: k8s.
Автоматизация: k8s operator
port 6379 diff --git a/docs/30_registry/resources/redis_ops.md b/docs/30_registry/resources/redis_ops.md deleted file mode 100644 index d5d813c..0000000 --- a/docs/30_registry/resources/redis_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](redis_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/redis_outputs.md b/docs/30_registry/resources/redis_outputs.md deleted file mode 100644 index 5cfcaf4..0000000 --- a/docs/30_registry/resources/redis_outputs.md +++ /dev/null @@ -1,58 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / inv-redis-test / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceCPU"]` -- `state_params["resourceDisk"]` -- `state_params["resourceRealm"]` -- `state_params["resourceMemory"]` -- `state_params["resourceInstances"]` -- `state_params["needExternalAddressSlave"]` -- `state_params["needExternalAddressMaster"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["externalConnect"]` -- `state_out_flat["externalConnect.slave"]` -- `state_out_flat["externalConnect.slave.ip"]` -- `state_out_flat["externalConnect.slave.fqdn"]` -- `state_out_flat["externalConnect.slave.uuid"]` -- `state_out_flat["externalConnect.slave.isExternal"]` -- `state_out_flat["externalConnect.master"]` -- `state_out_flat["externalConnect.master.ip"]` -- `state_out_flat["externalConnect.master.fqdn"]` -- `state_out_flat["externalConnect.master.uuid"]` -- `state_out_flat["externalConnect.master.isExternal"]` -- `state_out_flat["internalConnect"]` -- `state_out_flat["internalConnect.slave"]` -- `state_out_flat["internalConnect.master"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/redis_outputs_ops.md b/docs/30_registry/resources/redis_outputs_ops.md deleted file mode 100644 index 64dbec8..0000000 --- a/docs/30_registry/resources/redis_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_outputs.md) | [Parameters](redis_outputs_params.md) | [Operations](redis_outputs_ops.md) diff --git a/docs/30_registry/resources/redis_outputs_params.md b/docs/30_registry/resources/redis_outputs_params.md deleted file mode 100644 index 64dbec8..0000000 --- a/docs/30_registry/resources/redis_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_outputs.md) | [Parameters](redis_outputs_params.md) | [Operations](redis_outputs_ops.md) diff --git a/docs/30_registry/resources/redis_params.md b/docs/30_registry/resources/redis_params.md deleted file mode 100644 index 131dd5e..0000000 --- a/docs/30_registry/resources/redis_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Parameters - -- [Create params](redis_params_create.md) -- [Modify params](redis_params_modify.md) diff --git a/docs/30_registry/resources/redis_params_create.md b/docs/30_registry/resources/redis_params_create.md deleted file mode 100644 index 2dccb7e..0000000 --- a/docs/30_registry/resources/redis_params_create.md +++ /dev/null @@ -1,31 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
182resource_realmstringНаименование кластера Kubernetes для подключения
func=getAvailableResourceRealms
548ip_space_name_masterstringИмя ipSpace для публикации VIP master. Не может быть пустым, если включен needExternalAddressMaster
549ip_space_name_slavestringИмя ipSpace для публикации VIP slave. Не может быть пустым, если включен needExternalAddressSlave
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
112resource_cpuinteger1000Квота ядра пода (Указывается в mili)minvalue=500; maxvalue=4000
113resource_memoryinteger1024Квота памяти пода (Указывается в Megabytes)minvalue=512; maxvalue=8192
114resource_diskinteger30Квота диска (Указывается в GIGAbytes)minvalue=10; maxvalue=999
181resource_instancesinteger1Количество узлов в сети. Если выделить больше 1 ноды, будет добавлено дополнительно 3 Sentinel нодыminvalue=1; maxvalue=7
183need_external_address_masterbooleanfalseВыделяет внешний IP для доступа к mastervalue_list=false, true
184need_external_address_slavebooleanfalseВыделяет внешний IP для доступа к slave. Будет работать если slave в целом естьvalue_list=false, true
diff --git a/docs/30_registry/resources/redis_params_create_ops.md b/docs/30_registry/resources/redis_params_create_ops.md deleted file mode 100644 index 97093ba..0000000 --- a/docs/30_registry/resources/redis_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_params_create.md) | [Parameters](redis_params_create_params.md) | [Operations](redis_params_create_ops.md) diff --git a/docs/30_registry/resources/redis_params_create_params.md b/docs/30_registry/resources/redis_params_create_params.md deleted file mode 100644 index 97093ba..0000000 --- a/docs/30_registry/resources/redis_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_params_create.md) | [Parameters](redis_params_create_params.md) | [Operations](redis_params_create_ops.md) diff --git a/docs/30_registry/resources/redis_params_modify.md b/docs/30_registry/resources/redis_params_modify.md deleted file mode 100644 index 7461280..0000000 --- a/docs/30_registry/resources/redis_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/redis_params_modify_ops.md b/docs/30_registry/resources/redis_params_modify_ops.md deleted file mode 100644 index 68a528e..0000000 --- a/docs/30_registry/resources/redis_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_params_modify.md) | [Parameters](redis_params_modify_params.md) | [Operations](redis_params_modify_ops.md) diff --git a/docs/30_registry/resources/redis_params_modify_params.md b/docs/30_registry/resources/redis_params_modify_params.md deleted file mode 100644 index 68a528e..0000000 --- a/docs/30_registry/resources/redis_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_redis - -Service ID: `91` - -Service Name: Redis - -[Manual](redis.md) | [Create params](redis_params_create.md) | [Modify params](redis_params_modify.md) | [Output params](redis_outputs.md) | [Operations](redis_ops.md) | [Example](redis_example.md) - -[Overview](redis_params_modify.md) | [Parameters](redis_params_modify_params.md) | [Operations](redis_params_modify_ops.md) diff --git a/docs/30_registry/resources/s3.md b/docs/30_registry/resources/s3.md deleted file mode 100644 index 15a87a0..0000000 --- a/docs/30_registry/resources/s3.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## MAN - -
-Руководство доступно по ссылке:
https://docs.s3.msk-1.ngcloud.ru/s3/s3.description.html -
diff --git a/docs/30_registry/resources/s3_example.md b/docs/30_registry/resources/s3_example.md deleted file mode 100644 index 34dd5d3..0000000 --- a/docs/30_registry/resources/s3_example.md +++ /dev/null @@ -1,44 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Copy-ready manifest (`s3_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_s3" "baza" { - resource_realm = "TODO" # Платформа для развертывания - display_name = "TODO" # Человеко-читаемое имя (транслит из Elma) - передаётся имя клиента -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_s3.baza.state_params["имя_ключа"] -nubes_s3.baza.state_out["имя_ключа"] -nubes_s3.baza.state_params_flat["имя_ключа"] -nubes_s3.baza.state_out_flat["имя_ключа"] -nubes_s3.baza.vault_secrets["имя_ключа"] -nubes_s3.baza.vault_url -nubes_s3.baza.vault_user_path -nubes_s3.baza.vault_fields -``` diff --git a/docs/30_registry/resources/s3_example_ops.md b/docs/30_registry/resources/s3_example_ops.md deleted file mode 100644 index fe742b9..0000000 --- a/docs/30_registry/resources/s3_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_example.md) | [Parameters](s3_example_params.md) | [Operations](s3_example_ops.md) diff --git a/docs/30_registry/resources/s3_example_params.md b/docs/30_registry/resources/s3_example_params.md deleted file mode 100644 index fe742b9..0000000 --- a/docs/30_registry/resources/s3_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_example.md) | [Parameters](s3_example_params.md) | [Operations](s3_example_ops.md) diff --git a/docs/30_registry/resources/s3_instruction.md b/docs/30_registry/resources/s3_instruction.md deleted file mode 100644 index 4995a20..0000000 --- a/docs/30_registry/resources/s3_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для s3 - -Руководство доступно по ссылке:
https://docs.s3.msk-1.ngcloud.ru/s3/s3.description.html diff --git a/docs/30_registry/resources/s3_man.md b/docs/30_registry/resources/s3_man.md deleted file mode 100644 index ecd56a6..0000000 --- a/docs/30_registry/resources/s3_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: s3 - -Руководство доступно по ссылке:
https://docs.s3.msk-1.ngcloud.ru/s3/s3.description.html diff --git a/docs/30_registry/resources/s3_ops.md b/docs/30_registry/resources/s3_ops.md deleted file mode 100644 index 407643f..0000000 --- a/docs/30_registry/resources/s3_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](s3_params_create.md) -- `create_sub_user` — Создание кластера. Параметры: [Create params](s3_params_create.md) -- `delete` -- `delete_sub_user` — . См. [nubes_s3_sub_user](s3_sub_user.md) -- `modify` — Изменение кластера. Параметры: [Modify params](s3_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/s3_outputs.md b/docs/30_registry/resources/s3_outputs.md deleted file mode 100644 index 9a6da1c..0000000 --- a/docs/30_registry/resources/s3_outputs.md +++ /dev/null @@ -1,48 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / naeel-s3 / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["userName"]` -- `state_params["resourceRealm"]` -- `state_params["maxSizeGbPerUser"]` -- `state_params["maxBucketsPerUser"]` -- `state_params["maxObjectsPerBucket"]` - -### `state_out_flat` ключи - -- `state_out_flat["isTrial"]` -- `state_out_flat["dtEndTrial"]` -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.s3ceph"]` -- `state_out_flat["monitoring.s3ceph.url"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["urlConnect"]` -- `state_out_flat["dtStartTrial"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/s3_outputs_ops.md b/docs/30_registry/resources/s3_outputs_ops.md deleted file mode 100644 index 001175b..0000000 --- a/docs/30_registry/resources/s3_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_outputs.md) | [Parameters](s3_outputs_params.md) | [Operations](s3_outputs_ops.md) diff --git a/docs/30_registry/resources/s3_outputs_params.md b/docs/30_registry/resources/s3_outputs_params.md deleted file mode 100644 index 001175b..0000000 --- a/docs/30_registry/resources/s3_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_outputs.md) | [Parameters](s3_outputs_params.md) | [Operations](s3_outputs_ops.md) diff --git a/docs/30_registry/resources/s3_params.md b/docs/30_registry/resources/s3_params.md deleted file mode 100644 index d61aced..0000000 --- a/docs/30_registry/resources/s3_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Parameters - -- [Create params](s3_params_create.md) -- [Modify params](s3_params_modify.md) diff --git a/docs/30_registry/resources/s3_params_create.md b/docs/30_registry/resources/s3_params_create.md deleted file mode 100644 index 743e44f..0000000 --- a/docs/30_registry/resources/s3_params_create.md +++ /dev/null @@ -1,33 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
163resource_realmкластер S3 для подключенияfunc=getAvailableResourceRealms
320display_namestringЧеловеко-читаемое имя (транслит из Elma) - передаётся имя клиента
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. - -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/s3_params_create_ops.md b/docs/30_registry/resources/s3_params_create_ops.md deleted file mode 100644 index 2c4caf6..0000000 --- a/docs/30_registry/resources/s3_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_params_create.md) | [Parameters](s3_params_create_params.md) | [Operations](s3_params_create_ops.md) diff --git a/docs/30_registry/resources/s3_params_create_params.md b/docs/30_registry/resources/s3_params_create_params.md deleted file mode 100644 index 2c4caf6..0000000 --- a/docs/30_registry/resources/s3_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_params_create.md) | [Parameters](s3_params_create_params.md) | [Operations](s3_params_create_ops.md) diff --git a/docs/30_registry/resources/s3_params_modify.md b/docs/30_registry/resources/s3_params_modify.md deleted file mode 100644 index d9859fc..0000000 --- a/docs/30_registry/resources/s3_params_modify.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -## Modify params - - - - - - - -
IDCodeTypeDescriptionConstraints
50max_size_gb_per_userintegermaxSizeGb. Передаём рукамиminvalue=-1; maxvalue=50000
51max_objects_per_bucketintegerКвота на бакет. Кол-во объектов. Передаём рукамиminvalue=1; maxvalue=10000000
52max_buckets_per_userintegerКвота на пользователя. Количество бакетов пользователя. Передаём рукамиminvalue=1; maxvalue=1000
diff --git a/docs/30_registry/resources/s3_params_modify_ops.md b/docs/30_registry/resources/s3_params_modify_ops.md deleted file mode 100644 index 80f8037..0000000 --- a/docs/30_registry/resources/s3_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_params_modify.md) | [Parameters](s3_params_modify_params.md) | [Operations](s3_params_modify_ops.md) diff --git a/docs/30_registry/resources/s3_params_modify_params.md b/docs/30_registry/resources/s3_params_modify_params.md deleted file mode 100644 index 80f8037..0000000 --- a/docs/30_registry/resources/s3_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3 - -Service ID: `12` - -Service Name: S3 Object Storage - -[Manual](s3.md) | [Create params](s3_params_create.md) | [Modify params](s3_params_modify.md) | [Output params](s3_outputs.md) | [Operations](s3_ops.md) | [Example](s3_example.md) - -[Overview](s3_params_modify.md) | [Parameters](s3_params_modify_params.md) | [Operations](s3_params_modify_ops.md) diff --git a/docs/30_registry/resources/s3_sub_user.md b/docs/30_registry/resources/s3_sub_user.md deleted file mode 100644 index 6e32f35..0000000 --- a/docs/30_registry/resources/s3_sub_user.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_s3_sub_user - -Service: nubes_s3 - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -## Example - -```hcl -resource "nubes_s3_sub_user" "example" { - s3_id = nubes_s3.example.id - sub_user_name = "TODO" - sub_user_access = read -} -``` diff --git a/docs/30_registry/resources/s3_sub_user_ops.md b/docs/30_registry/resources/s3_sub_user_ops.md deleted file mode 100644 index 248aa61..0000000 --- a/docs/30_registry/resources/s3_sub_user_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_s3_sub_user - -Service: nubes_s3 - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) diff --git a/docs/30_registry/resources/s3_sub_user_params.md b/docs/30_registry/resources/s3_sub_user_params.md deleted file mode 100644 index 248aa61..0000000 --- a/docs/30_registry/resources/s3_sub_user_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_s3_sub_user - -Service: nubes_s3 - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) - -[Overview](s3_sub_user.md) | [Parameters](s3_sub_user_params.md) | [Operations](s3_sub_user_ops.md) diff --git a/docs/30_registry/resources/s3bucket.md b/docs/30_registry/resources/s3bucket.md deleted file mode 100644 index 27d17d7..0000000 --- a/docs/30_registry/resources/s3bucket.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/s3bucket_example.md b/docs/30_registry/resources/s3bucket_example.md deleted file mode 100644 index 5bc8258..0000000 --- a/docs/30_registry/resources/s3bucket_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Copy-ready manifest (`s3bucket_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_s3bucket" "baza" { - s3_user_uid = "235e0546-..." # UID Корневой услуги S3. На основе него будет создан бакет. - bucket_name = "TODO" # Имя бакета s3 - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - max_size = -1 # Максимальный размер бакета s3. Если поставить -1, будет безлимит. Размер указывается в Bytes - read_all = false # Публичный доступ на чтение позволяет любому пользователю интернета скачивать объекты из бакета. - list_all = false # Публичный доступ к листингу позволяет любому пользователю интернета получить список объектов в бакете. - cors_all = false # Публичный доступ к чтению настроек позволяет любому пользователю интернета читать конфигурации CORS - placement = "HOT" # Класс хранилища, который используется по умолчанию при загрузке объектов. Чем холоднее, тем дешевле место, но дороже обращения -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_s3bucket.baza.state_params["имя_ключа"] -nubes_s3bucket.baza.state_out["имя_ключа"] -nubes_s3bucket.baza.state_params_flat["имя_ключа"] -nubes_s3bucket.baza.state_out_flat["имя_ключа"] -nubes_s3bucket.baza.vault_secrets["имя_ключа"] -nubes_s3bucket.baza.vault_url -nubes_s3bucket.baza.vault_user_path -nubes_s3bucket.baza.vault_fields -``` diff --git a/docs/30_registry/resources/s3bucket_example_ops.md b/docs/30_registry/resources/s3bucket_example_ops.md deleted file mode 100644 index e9a1095..0000000 --- a/docs/30_registry/resources/s3bucket_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_example.md) | [Parameters](s3bucket_example_params.md) | [Operations](s3bucket_example_ops.md) diff --git a/docs/30_registry/resources/s3bucket_example_params.md b/docs/30_registry/resources/s3bucket_example_params.md deleted file mode 100644 index e9a1095..0000000 --- a/docs/30_registry/resources/s3bucket_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_example.md) | [Parameters](s3bucket_example_params.md) | [Operations](s3bucket_example_ops.md) diff --git a/docs/30_registry/resources/s3bucket_instruction.md b/docs/30_registry/resources/s3bucket_instruction.md deleted file mode 100644 index 24270e7..0000000 --- a/docs/30_registry/resources/s3bucket_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для s3bucket - -_Пока не заполнено. Инструкция будет добавлена разработчиками облака._ diff --git a/docs/30_registry/resources/s3bucket_man.md b/docs/30_registry/resources/s3bucket_man.md deleted file mode 100644 index a3dbb8b..0000000 --- a/docs/30_registry/resources/s3bucket_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: s3bucket - -Manual not available. diff --git a/docs/30_registry/resources/s3bucket_ops.md b/docs/30_registry/resources/s3bucket_ops.md deleted file mode 100644 index 61b2abb..0000000 --- a/docs/30_registry/resources/s3bucket_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](s3bucket_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/s3bucket_outputs.md b/docs/30_registry/resources/s3bucket_outputs.md deleted file mode 100644 index 05217cf..0000000 --- a/docs/30_registry/resources/s3bucket_outputs.md +++ /dev/null @@ -1,37 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / poc-s3evt-src / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["corsAll"]` -- `state_params["listAll"]` -- `state_params["maxSize"]` -- `state_params["readAll"]` -- `state_params["placement"]` -- `state_params["s3UserUid"]` -- `state_params["bucketName"]` - -### `state_out_flat` ключи - -- `state_out_flat["httpConnect"]` diff --git a/docs/30_registry/resources/s3bucket_outputs_ops.md b/docs/30_registry/resources/s3bucket_outputs_ops.md deleted file mode 100644 index 632adca..0000000 --- a/docs/30_registry/resources/s3bucket_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_outputs.md) | [Parameters](s3bucket_outputs_params.md) | [Operations](s3bucket_outputs_ops.md) diff --git a/docs/30_registry/resources/s3bucket_outputs_params.md b/docs/30_registry/resources/s3bucket_outputs_params.md deleted file mode 100644 index 632adca..0000000 --- a/docs/30_registry/resources/s3bucket_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_outputs.md) | [Parameters](s3bucket_outputs_params.md) | [Operations](s3bucket_outputs_ops.md) diff --git a/docs/30_registry/resources/s3bucket_params.md b/docs/30_registry/resources/s3bucket_params.md deleted file mode 100644 index 9977e26..0000000 --- a/docs/30_registry/resources/s3bucket_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Parameters - -- [Create params](s3bucket_params_create.md) -- [Modify params](s3bucket_params_modify.md) diff --git a/docs/30_registry/resources/s3bucket_params_create.md b/docs/30_registry/resources/s3bucket_params_create.md deleted file mode 100644 index 0ae6f44..0000000 --- a/docs/30_registry/resources/s3bucket_params_create.md +++ /dev/null @@ -1,29 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
124s3_user_uiduuidUID Корневой услуги S3. На основе него будет создан бакет.ref_svc_id=12
125bucket_namestringИмя бакета s3
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
126max_size-1Максимальный размер бакета s3. Если поставить 0, будет безлимит. Размер указывается в Bytes
127read_allbooleanfalseПубличный доступ на чтение позволяет любому пользователю интернета скачивать объекты из бакета.value_list=false, true
128list_allbooleanfalseПубличный доступ к листингу позволяет любому пользователю интернета получить список объектов в бакете.value_list=false, true
129cors_allbooleanfalseПубличный доступ к чтению настроек позволяет любому пользователю интернета читать конфигурации CORSvalue_list=false, true
130placementstringHOTКласс хранилища, который используется по умолчанию при загрузке объектов. Чем холоднее, тем дешевле место, но дороже обращенияvalue_list=HOT, COLD
diff --git a/docs/30_registry/resources/s3bucket_params_create_ops.md b/docs/30_registry/resources/s3bucket_params_create_ops.md deleted file mode 100644 index d68b9cd..0000000 --- a/docs/30_registry/resources/s3bucket_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_params_create.md) | [Parameters](s3bucket_params_create_params.md) | [Operations](s3bucket_params_create_ops.md) diff --git a/docs/30_registry/resources/s3bucket_params_create_params.md b/docs/30_registry/resources/s3bucket_params_create_params.md deleted file mode 100644 index d68b9cd..0000000 --- a/docs/30_registry/resources/s3bucket_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_params_create.md) | [Parameters](s3bucket_params_create_params.md) | [Operations](s3bucket_params_create_ops.md) diff --git a/docs/30_registry/resources/s3bucket_params_modify.md b/docs/30_registry/resources/s3bucket_params_modify.md deleted file mode 100644 index ca24765..0000000 --- a/docs/30_registry/resources/s3bucket_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/s3bucket_params_modify_ops.md b/docs/30_registry/resources/s3bucket_params_modify_ops.md deleted file mode 100644 index 2f49167..0000000 --- a/docs/30_registry/resources/s3bucket_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_params_modify.md) | [Parameters](s3bucket_params_modify_params.md) | [Operations](s3bucket_params_modify_ops.md) diff --git a/docs/30_registry/resources/s3bucket_params_modify_params.md b/docs/30_registry/resources/s3bucket_params_modify_params.md deleted file mode 100644 index 2f49167..0000000 --- a/docs/30_registry/resources/s3bucket_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_s3bucket - -Service ID: `13` - -Service Name: S3 бакет - -[Manual](s3bucket.md) | [Create params](s3bucket_params_create.md) | [Modify params](s3bucket_params_modify.md) | [Output params](s3bucket_outputs.md) | [Operations](s3bucket_ops.md) | [Example](s3bucket_example.md) - -[Overview](s3bucket_params_modify.md) | [Parameters](s3bucket_params_modify_params.md) | [Operations](s3bucket_params_modify_ops.md) diff --git a/docs/30_registry/resources/service_24.md b/docs/30_registry/resources/service_24.md deleted file mode 100644 index 924de9b..0000000 --- a/docs/30_registry/resources/service_24.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24.md) | [Parameters](service_24_params.md) | [Operations](service_24_ops.md) - -## MAN - -
-Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED -
diff --git a/docs/30_registry/resources/service_24_example.md b/docs/30_registry/resources/service_24_example.md deleted file mode 100644 index 9f59dc2..0000000 --- a/docs/30_registry/resources/service_24_example.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_example.md) | [Parameters](service_24_example_params.md) | [Operations](service_24_example_ops.md) diff --git a/docs/30_registry/resources/service_24_example_ops.md b/docs/30_registry/resources/service_24_example_ops.md deleted file mode 100644 index 9f59dc2..0000000 --- a/docs/30_registry/resources/service_24_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_example.md) | [Parameters](service_24_example_params.md) | [Operations](service_24_example_ops.md) diff --git a/docs/30_registry/resources/service_24_example_params.md b/docs/30_registry/resources/service_24_example_params.md deleted file mode 100644 index 9f59dc2..0000000 --- a/docs/30_registry/resources/service_24_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_example.md) | [Parameters](service_24_example_params.md) | [Operations](service_24_example_ops.md) diff --git a/docs/30_registry/resources/service_24_man.md b/docs/30_registry/resources/service_24_man.md deleted file mode 100644 index cf527fb..0000000 --- a/docs/30_registry/resources/service_24_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: service_24 - -Правила маршрутизации в Cloud Director. Требует наличие сетей, ВМ
DEPRECATED diff --git a/docs/30_registry/resources/service_24_ops.md b/docs/30_registry/resources/service_24_ops.md deleted file mode 100644 index 3653a82..0000000 --- a/docs/30_registry/resources/service_24_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24.md) | [Parameters](service_24_params.md) | [Operations](service_24_ops.md) diff --git a/docs/30_registry/resources/service_24_outputs.md b/docs/30_registry/resources/service_24_outputs.md deleted file mode 100644 index 2685e03..0000000 --- a/docs/30_registry/resources/service_24_outputs.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_outputs.md) | [Parameters](service_24_outputs_params.md) | [Operations](service_24_outputs_ops.md) diff --git a/docs/30_registry/resources/service_24_outputs_ops.md b/docs/30_registry/resources/service_24_outputs_ops.md deleted file mode 100644 index 2685e03..0000000 --- a/docs/30_registry/resources/service_24_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_outputs.md) | [Parameters](service_24_outputs_params.md) | [Operations](service_24_outputs_ops.md) diff --git a/docs/30_registry/resources/service_24_outputs_params.md b/docs/30_registry/resources/service_24_outputs_params.md deleted file mode 100644 index 2685e03..0000000 --- a/docs/30_registry/resources/service_24_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_outputs.md) | [Parameters](service_24_outputs_params.md) | [Operations](service_24_outputs_ops.md) diff --git a/docs/30_registry/resources/service_24_params.md b/docs/30_registry/resources/service_24_params.md deleted file mode 100644 index 3653a82..0000000 --- a/docs/30_registry/resources/service_24_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24.md) | [Parameters](service_24_params.md) | [Operations](service_24_ops.md) diff --git a/docs/30_registry/resources/service_24_params_create.md b/docs/30_registry/resources/service_24_params_create.md deleted file mode 100644 index 12a7b7f..0000000 --- a/docs/30_registry/resources/service_24_params_create.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_create.md) | [Parameters](service_24_params_create_params.md) | [Operations](service_24_params_create_ops.md) diff --git a/docs/30_registry/resources/service_24_params_create_ops.md b/docs/30_registry/resources/service_24_params_create_ops.md deleted file mode 100644 index 12a7b7f..0000000 --- a/docs/30_registry/resources/service_24_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_create.md) | [Parameters](service_24_params_create_params.md) | [Operations](service_24_params_create_ops.md) diff --git a/docs/30_registry/resources/service_24_params_create_params.md b/docs/30_registry/resources/service_24_params_create_params.md deleted file mode 100644 index 12a7b7f..0000000 --- a/docs/30_registry/resources/service_24_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_create.md) | [Parameters](service_24_params_create_params.md) | [Operations](service_24_params_create_ops.md) diff --git a/docs/30_registry/resources/service_24_params_modify.md b/docs/30_registry/resources/service_24_params_modify.md deleted file mode 100644 index eccbeca..0000000 --- a/docs/30_registry/resources/service_24_params_modify.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_modify.md) | [Parameters](service_24_params_modify_params.md) | [Operations](service_24_params_modify_ops.md) diff --git a/docs/30_registry/resources/service_24_params_modify_ops.md b/docs/30_registry/resources/service_24_params_modify_ops.md deleted file mode 100644 index eccbeca..0000000 --- a/docs/30_registry/resources/service_24_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_modify.md) | [Parameters](service_24_params_modify_params.md) | [Operations](service_24_params_modify_ops.md) diff --git a/docs/30_registry/resources/service_24_params_modify_params.md b/docs/30_registry/resources/service_24_params_modify_params.md deleted file mode 100644 index eccbeca..0000000 --- a/docs/30_registry/resources/service_24_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_service_24 - -Service ID: `24` - -Service Name: DEPRECATED Правила маршрутизации для VM (vc_nat) - -[Manual](service_24.md) | [Create params](service_24_params_create.md) | [Modify params](service_24_params_modify.md) | [Output params](service_24_outputs.md) | [Operations](service_24_ops.md) | [Example](service_24_example.md) - -[Overview](service_24_params_modify.md) | [Parameters](service_24_params_modify_params.md) | [Operations](service_24_params_modify_ops.md) diff --git a/docs/30_registry/resources/superset.md b/docs/30_registry/resources/superset.md deleted file mode 100644 index 93094e9..0000000 --- a/docs/30_registry/resources/superset.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## MAN - -
-Apache Superset как сервис.
Ресурсная платформа: k8s.
Автоматизация: k8s operator.
Авторизация: 2FA keycloak (для доменного логина @mgmt.nubes.ru) -
diff --git a/docs/30_registry/resources/superset_example.md b/docs/30_registry/resources/superset_example.md deleted file mode 100644 index 7a7eafc..0000000 --- a/docs/30_registry/resources/superset_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Copy-ready manifest (`superset_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_superset" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm - emails = "testuser1" # Учётная запись, которой будут выданы админские права. В формате email [ну не совсем. Для доменных учетных записей - без доменного суффикса]. Обязана находиться в Keycloak. Можно передавать несколько через пробел - resource_c_p_u = 500 # Квота ядра пода (Указывается в mili). 1000 Mili = 1 ядро - resource_memory = 512 # Квота памяти пода (Указывается в Megabytes) - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_superset.baza.state_params["имя_ключа"] -nubes_superset.baza.state_out["имя_ключа"] -nubes_superset.baza.state_params_flat["имя_ключа"] -nubes_superset.baza.state_out_flat["имя_ключа"] -nubes_superset.baza.vault_secrets["имя_ключа"] -nubes_superset.baza.vault_url -nubes_superset.baza.vault_user_path -nubes_superset.baza.vault_fields -``` diff --git a/docs/30_registry/resources/superset_example_ops.md b/docs/30_registry/resources/superset_example_ops.md deleted file mode 100644 index 45d5214..0000000 --- a/docs/30_registry/resources/superset_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_example.md) | [Parameters](superset_example_params.md) | [Operations](superset_example_ops.md) diff --git a/docs/30_registry/resources/superset_example_params.md b/docs/30_registry/resources/superset_example_params.md deleted file mode 100644 index 45d5214..0000000 --- a/docs/30_registry/resources/superset_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_example.md) | [Parameters](superset_example_params.md) | [Operations](superset_example_ops.md) diff --git a/docs/30_registry/resources/superset_instruction.md b/docs/30_registry/resources/superset_instruction.md deleted file mode 100644 index 9bc7075..0000000 --- a/docs/30_registry/resources/superset_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для superset - -Apache Superset как сервис.
Ресурсная платформа: k8s.
Автоматизация: k8s operator.
Авторизация: 2FA keycloak (для доменного логина @mgmt.nubes.ru) diff --git a/docs/30_registry/resources/superset_man.md b/docs/30_registry/resources/superset_man.md deleted file mode 100644 index 2c0e9dc..0000000 --- a/docs/30_registry/resources/superset_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: superset - -Apache Superset как сервис.
Ресурсная платформа: k8s.
Автоматизация: k8s operator.
Авторизация: 2FA keycloak (для доменного логина @mgmt.nubes.ru) diff --git a/docs/30_registry/resources/superset_ops.md b/docs/30_registry/resources/superset_ops.md deleted file mode 100644 index 5aa441d..0000000 --- a/docs/30_registry/resources/superset_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](superset_params_create.md) -- `delete` — DEV-Ветка удаления Superset diff --git a/docs/30_registry/resources/superset_outputs.md b/docs/30_registry/resources/superset_outputs.md deleted file mode 100644 index 4d7a1fd..0000000 --- a/docs/30_registry/resources/superset_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/superset_outputs_ops.md b/docs/30_registry/resources/superset_outputs_ops.md deleted file mode 100644 index 175dada..0000000 --- a/docs/30_registry/resources/superset_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_outputs.md) | [Parameters](superset_outputs_params.md) | [Operations](superset_outputs_ops.md) diff --git a/docs/30_registry/resources/superset_outputs_params.md b/docs/30_registry/resources/superset_outputs_params.md deleted file mode 100644 index 175dada..0000000 --- a/docs/30_registry/resources/superset_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_outputs.md) | [Parameters](superset_outputs_params.md) | [Operations](superset_outputs_ops.md) diff --git a/docs/30_registry/resources/superset_params.md b/docs/30_registry/resources/superset_params.md deleted file mode 100644 index 2984f1c..0000000 --- a/docs/30_registry/resources/superset_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Parameters - -- [Create params](superset_params_create.md) -- [Modify params](superset_params_modify.md) diff --git a/docs/30_registry/resources/superset_params_create.md b/docs/30_registry/resources/superset_params_create.md deleted file mode 100644 index 6652cf1..0000000 --- a/docs/30_registry/resources/superset_params_create.md +++ /dev/null @@ -1,29 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
109resource_realmstringНаименование кластера Kubernetes для подключенияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
14domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
20emailsstringtestuser1Учётная запись, которой будут выданы админские права. В формате email [ну не совсем. Для доменных учетных записей - без доменного суффикса]. Обязана находиться в Keycloak. Можно передавать несколько через пробел
96resource_cpuinteger500Квота ядра пода (Указывается в mili). 1000 Mili = 1 ядроminvalue=100; maxvalue=4000
97resource_memoryinteger512Квота памяти пода (Указывается в Megabytes)minvalue=128; maxvalue=8192
98resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
227resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/superset_params_create_ops.md b/docs/30_registry/resources/superset_params_create_ops.md deleted file mode 100644 index eb0acfd..0000000 --- a/docs/30_registry/resources/superset_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_params_create.md) | [Parameters](superset_params_create_params.md) | [Operations](superset_params_create_ops.md) diff --git a/docs/30_registry/resources/superset_params_create_params.md b/docs/30_registry/resources/superset_params_create_params.md deleted file mode 100644 index eb0acfd..0000000 --- a/docs/30_registry/resources/superset_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_params_create.md) | [Parameters](superset_params_create_params.md) | [Operations](superset_params_create_ops.md) diff --git a/docs/30_registry/resources/superset_params_modify.md b/docs/30_registry/resources/superset_params_modify.md deleted file mode 100644 index 5a6e1ca..0000000 --- a/docs/30_registry/resources/superset_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/superset_params_modify_ops.md b/docs/30_registry/resources/superset_params_modify_ops.md deleted file mode 100644 index 4d0ab09..0000000 --- a/docs/30_registry/resources/superset_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_params_modify.md) | [Parameters](superset_params_modify_params.md) | [Operations](superset_params_modify_ops.md) diff --git a/docs/30_registry/resources/superset_params_modify_params.md b/docs/30_registry/resources/superset_params_modify_params.md deleted file mode 100644 index 4d0ab09..0000000 --- a/docs/30_registry/resources/superset_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_superset - -Service ID: `81` - -Service Name: Apache Superset - -[Manual](superset.md) | [Create params](superset_params_create.md) | [Modify params](superset_params_modify.md) | [Output params](superset_outputs.md) | [Operations](superset_ops.md) | [Example](superset_example.md) - -[Overview](superset_params_modify.md) | [Parameters](superset_params_modify_params.md) | [Operations](superset_params_modify_ops.md) diff --git a/docs/30_registry/resources/template.md b/docs/30_registry/resources/template.md deleted file mode 100644 index b4d0dc3..0000000 --- a/docs/30_registry/resources/template.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/template_example.md b/docs/30_registry/resources/template_example.md deleted file mode 100644 index 79a47eb..0000000 --- a/docs/30_registry/resources/template_example.md +++ /dev/null @@ -1,50 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Copy-ready manifest (`template_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_template" "baza" { - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - resource_c_p_u = 100 - resource_memory = 200 - resource_disk = 1 # Квота диска (Указывается в GIGAbytes) - resource_instances = 1 # Количество узлов - domain = "web01" # Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_template.baza.state_params["имя_ключа"] -nubes_template.baza.state_out["имя_ключа"] -nubes_template.baza.state_params_flat["имя_ключа"] -nubes_template.baza.state_out_flat["имя_ключа"] -nubes_template.baza.vault_secrets["имя_ключа"] -nubes_template.baza.vault_url -nubes_template.baza.vault_user_path -nubes_template.baza.vault_fields -``` diff --git a/docs/30_registry/resources/template_example_ops.md b/docs/30_registry/resources/template_example_ops.md deleted file mode 100644 index ca2b6da..0000000 --- a/docs/30_registry/resources/template_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_example.md) | [Parameters](template_example_params.md) | [Operations](template_example_ops.md) diff --git a/docs/30_registry/resources/template_example_params.md b/docs/30_registry/resources/template_example_params.md deleted file mode 100644 index ca2b6da..0000000 --- a/docs/30_registry/resources/template_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_example.md) | [Parameters](template_example_params.md) | [Operations](template_example_ops.md) diff --git a/docs/30_registry/resources/template_man.md b/docs/30_registry/resources/template_man.md deleted file mode 100644 index 95d5083..0000000 --- a/docs/30_registry/resources/template_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: template - -Manual not available. diff --git a/docs/30_registry/resources/template_ops.md b/docs/30_registry/resources/template_ops.md deleted file mode 100644 index 7bea1f5..0000000 --- a/docs/30_registry/resources/template_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](template_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](template_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/template_outputs.md b/docs/30_registry/resources/template_outputs.md deleted file mode 100644 index ab5623d..0000000 --- a/docs/30_registry/resources/template_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/template_outputs_ops.md b/docs/30_registry/resources/template_outputs_ops.md deleted file mode 100644 index 6c16b4f..0000000 --- a/docs/30_registry/resources/template_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_outputs.md) | [Parameters](template_outputs_params.md) | [Operations](template_outputs_ops.md) diff --git a/docs/30_registry/resources/template_outputs_params.md b/docs/30_registry/resources/template_outputs_params.md deleted file mode 100644 index 6c16b4f..0000000 --- a/docs/30_registry/resources/template_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_outputs.md) | [Parameters](template_outputs_params.md) | [Operations](template_outputs_ops.md) diff --git a/docs/30_registry/resources/template_params.md b/docs/30_registry/resources/template_params.md deleted file mode 100644 index 7fdd8d3..0000000 --- a/docs/30_registry/resources/template_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Parameters - -- [Create params](template_params_create.md) -- [Modify params](template_params_modify.md) diff --git a/docs/30_registry/resources/template_params_create.md b/docs/30_registry/resources/template_params_create.md deleted file mode 100644 index aaa56ea..0000000 --- a/docs/30_registry/resources/template_params_create.md +++ /dev/null @@ -1,40 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
206resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
202resource_cpuinteger100minvalue=100; maxvalue=4000
203resource_memoryinteger200minvalue=128; maxvalue=8192
204resource_diskinteger1Квота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
205resource_instancesinteger1Количество узловminvalue=1; maxvalue=7
207domainstringweb01Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealmregex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/template_params_create_ops.md b/docs/30_registry/resources/template_params_create_ops.md deleted file mode 100644 index 5345113..0000000 --- a/docs/30_registry/resources/template_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_params_create.md) | [Parameters](template_params_create_params.md) | [Operations](template_params_create_ops.md) diff --git a/docs/30_registry/resources/template_params_create_params.md b/docs/30_registry/resources/template_params_create_params.md deleted file mode 100644 index 5345113..0000000 --- a/docs/30_registry/resources/template_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_params_create.md) | [Parameters](template_params_create_params.md) | [Operations](template_params_create_ops.md) diff --git a/docs/30_registry/resources/template_params_modify.md b/docs/30_registry/resources/template_params_modify.md deleted file mode 100644 index 9e15054..0000000 --- a/docs/30_registry/resources/template_params_modify.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -## Modify params - - - - - - - - -
IDCodeTypeDescriptionConstraints
208resource_cpuintegerminvalue=100; maxvalue=4000
209resource_memoryintegerminvalue=128; maxvalue=8192
210resource_diskintegerКвота диска (Указывается в GIGAbytes)minvalue=1; maxvalue=999
211resource_instancesintegerКоличество узловminvalue=1; maxvalue=7
diff --git a/docs/30_registry/resources/template_params_modify_ops.md b/docs/30_registry/resources/template_params_modify_ops.md deleted file mode 100644 index d4fbd1c..0000000 --- a/docs/30_registry/resources/template_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_params_modify.md) | [Parameters](template_params_modify_params.md) | [Operations](template_params_modify_ops.md) diff --git a/docs/30_registry/resources/template_params_modify_params.md b/docs/30_registry/resources/template_params_modify_params.md deleted file mode 100644 index d4fbd1c..0000000 --- a/docs/30_registry/resources/template_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_template - -Service ID: `2` - -Service Name: Темплейт k8s - -[Manual](template.md) | [Create params](template_params_create.md) | [Modify params](template_params_modify.md) | [Output params](template_outputs.md) | [Operations](template_ops.md) | [Example](template_example.md) - -[Overview](template_params_modify.md) | [Parameters](template_params_modify_params.md) | [Operations](template_params_modify_ops.md) diff --git a/docs/30_registry/resources/tenant.md b/docs/30_registry/resources/tenant.md deleted file mode 100644 index 409820a..0000000 --- a/docs/30_registry/resources/tenant.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/tenant_example.md b/docs/30_registry/resources/tenant_example.md deleted file mode 100644 index be36e86..0000000 --- a/docs/30_registry/resources/tenant_example.md +++ /dev/null @@ -1,44 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Copy-ready manifest (`tenant_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_tenant" "baza" { - grafana_org_name = "TODO" # WZ-Код клиента - resource_realm = "TODO" # Платформа для развертывания -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_tenant.baza.state_params["имя_ключа"] -nubes_tenant.baza.state_out["имя_ключа"] -nubes_tenant.baza.state_params_flat["имя_ключа"] -nubes_tenant.baza.state_out_flat["имя_ключа"] -nubes_tenant.baza.vault_secrets["имя_ключа"] -nubes_tenant.baza.vault_url -nubes_tenant.baza.vault_user_path -nubes_tenant.baza.vault_fields -``` diff --git a/docs/30_registry/resources/tenant_example_ops.md b/docs/30_registry/resources/tenant_example_ops.md deleted file mode 100644 index aa331e5..0000000 --- a/docs/30_registry/resources/tenant_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_example.md) | [Parameters](tenant_example_params.md) | [Operations](tenant_example_ops.md) diff --git a/docs/30_registry/resources/tenant_example_params.md b/docs/30_registry/resources/tenant_example_params.md deleted file mode 100644 index aa331e5..0000000 --- a/docs/30_registry/resources/tenant_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_example.md) | [Parameters](tenant_example_params.md) | [Operations](tenant_example_ops.md) diff --git a/docs/30_registry/resources/tenant_man.md b/docs/30_registry/resources/tenant_man.md deleted file mode 100644 index 7fb8f45..0000000 --- a/docs/30_registry/resources/tenant_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: tenant - -Manual not available. diff --git a/docs/30_registry/resources/tenant_ops.md b/docs/30_registry/resources/tenant_ops.md deleted file mode 100644 index 5058136..0000000 --- a/docs/30_registry/resources/tenant_ops.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](tenant_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](tenant_params_modify.md) diff --git a/docs/30_registry/resources/tenant_outputs.md b/docs/30_registry/resources/tenant_outputs.md deleted file mode 100644 index a3bb27d..0000000 --- a/docs/30_registry/resources/tenant_outputs.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / Grafana Tenant (WZ03709) / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["resourceRealm"]` - -### `state_out_flat` ключи - -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.pdu"]` -- `state_out_flat["monitoring.pdu.url"]` -- `state_out_flat["monitoring.vms"]` -- `state_out_flat["monitoring.vms.url"]` -- `state_out_flat["monitoring.resourceMetrics"]` -- `state_out_flat["connectionUrl"]` - -### `vault_secrets` ключи - -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/tenant_outputs_ops.md b/docs/30_registry/resources/tenant_outputs_ops.md deleted file mode 100644 index 954e308..0000000 --- a/docs/30_registry/resources/tenant_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_outputs.md) | [Parameters](tenant_outputs_params.md) | [Operations](tenant_outputs_ops.md) diff --git a/docs/30_registry/resources/tenant_outputs_params.md b/docs/30_registry/resources/tenant_outputs_params.md deleted file mode 100644 index 954e308..0000000 --- a/docs/30_registry/resources/tenant_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_outputs.md) | [Parameters](tenant_outputs_params.md) | [Operations](tenant_outputs_ops.md) diff --git a/docs/30_registry/resources/tenant_params.md b/docs/30_registry/resources/tenant_params.md deleted file mode 100644 index 4db7d6b..0000000 --- a/docs/30_registry/resources/tenant_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Parameters - -- [Create params](tenant_params_create.md) -- [Modify params](tenant_params_modify.md) diff --git a/docs/30_registry/resources/tenant_params_create.md b/docs/30_registry/resources/tenant_params_create.md deleted file mode 100644 index 10d4d27..0000000 --- a/docs/30_registry/resources/tenant_params_create.md +++ /dev/null @@ -1,21 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
239grafana_org_namestringWZ-Код клиентаregex=^WZ[\d]+$
240resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. diff --git a/docs/30_registry/resources/tenant_params_create_ops.md b/docs/30_registry/resources/tenant_params_create_ops.md deleted file mode 100644 index a3ae49f..0000000 --- a/docs/30_registry/resources/tenant_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_params_create.md) | [Parameters](tenant_params_create_params.md) | [Operations](tenant_params_create_ops.md) diff --git a/docs/30_registry/resources/tenant_params_create_params.md b/docs/30_registry/resources/tenant_params_create_params.md deleted file mode 100644 index a3ae49f..0000000 --- a/docs/30_registry/resources/tenant_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_params_create.md) | [Parameters](tenant_params_create_params.md) | [Operations](tenant_params_create_ops.md) diff --git a/docs/30_registry/resources/tenant_params_modify.md b/docs/30_registry/resources/tenant_params_modify.md deleted file mode 100644 index cc3e107..0000000 --- a/docs/30_registry/resources/tenant_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/tenant_params_modify_ops.md b/docs/30_registry/resources/tenant_params_modify_ops.md deleted file mode 100644 index 44029bd..0000000 --- a/docs/30_registry/resources/tenant_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_params_modify.md) | [Parameters](tenant_params_modify_params.md) | [Operations](tenant_params_modify_ops.md) diff --git a/docs/30_registry/resources/tenant_params_modify_params.md b/docs/30_registry/resources/tenant_params_modify_params.md deleted file mode 100644 index 44029bd..0000000 --- a/docs/30_registry/resources/tenant_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_tenant - -Service ID: `112` - -Service Name: Тенант в Grafana - -[Manual](tenant.md) | [Create params](tenant_params_create.md) | [Modify params](tenant_params_modify.md) | [Output params](tenant_outputs.md) | [Operations](tenant_ops.md) | [Example](tenant_example.md) - -[Overview](tenant_params_modify.md) | [Parameters](tenant_params_modify_params.md) | [Operations](tenant_params_modify_ops.md) diff --git a/docs/30_registry/resources/tubulus.md b/docs/30_registry/resources/tubulus.md deleted file mode 100644 index 7113ee3..0000000 --- a/docs/30_registry/resources/tubulus.md +++ /dev/null @@ -1,40 +0,0 @@ -# Resource: nubes_tubulus_instance - -Ресурс `nubes_tubulus_instance` управляет жизненным циклом (создание, приостановка, восстановление) виртуального инстанса в платформе Nubes. - -## Пример использования (HCL) - -```text -resource "nubes_tubulus_instance" "example" { - display_name = "nubes-app-server" - description = "Production-ready tubulus instance" - duration_ms = 5000 - fail_in_progress = false - where_fail = 1 -} -``` - -## Параметры (Arguments) - -- `display_name` (string, Required) — Отображаемое имя инстанса в UI Nubes. -- `description` (string, Optional) — Описание назначения ресурса. -- `duration_ms` (int, Optional) — Задержка перед завершением операции (мс). -- `fail_at_start` (bool, Optional) — Если true, мгновенный отказ без записи в CMDB. -- `fail_in_progress` (bool, Optional) — Аварийное завершение после успешного начала операции. -- `where_fail` (int, Optional) — Точка отказа при `fail_in_progress`: 1 (Prepare), 2 (Data Fill), 3 (Post-Vault). -- `body_message` (string, Optional) — Произвольное сообщение для сохранения в Vault. -- `map_example` (string, Optional) — Параметры в формате JSON Map. -- `json_example` (string, Optional) — Произвольный JSON-объект (строка). - -## Атрибуты (Attributes) - -- `id` (string) — Уникальный UUID инстанса в облаке. -- `status` (string) — Текущее состояние ресурса (`running`, `suspended`, `failed`). - -## Жизненный цикл и удаление (Soft Delete Policy) - -Для ресурса в платформе Nubes действует политика **отложенного удаления (Soft Delete)**: - -1. **Destroy / Удаление из манифеста:** При выполнении `terraform destroy` или удалении ресурса из конфигурации, инстанс переводится в статус **Suspended** и переходит в режим **ожидания удаления (Retention Period) на 14 дней**. -2. **Apply / Resume:** Повторное добавление ресурса в конфигурацию до завершения срока удержания инициирует операцию **Resume**, возвращающую инстанс в работу без потери данных. -3. **Управление:** Состояние ресурсов в режиме Soft Delete доступно для мониторинга в разделе «Управление облаком» UI Nubes. diff --git a/docs/30_registry/resources/valoTenant.md b/docs/30_registry/resources/valoTenant.md deleted file mode 100644 index ace8ba2..0000000 --- a/docs/30_registry/resources/valoTenant.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_valoTenant - -Service ID: `149` - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -## Example - -```hcl -resource "nubes_valo_tenant" "example" { - # required params ... - suspend_on_destroy = "suspend" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/valoTenant_instruction.md b/docs/30_registry/resources/valoTenant_instruction.md deleted file mode 100644 index adbce93..0000000 --- a/docs/30_registry/resources/valoTenant_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для valoTenant - -# Инструкция по развертыванию Тенант Valo через платформу

## 1. Общая информация
Тенант Valo — логический изолированный экземпляр сервиса VALO Cloud, предоставляющий защищённое облачное хранилище, синхронизацию данных и доступ к документам с различных устройств. При создании тенант автоматически разворачивается в тестовом режиме сроком на 2 месяца. Перевод в промышленную эксплуатацию выполняется отдельной операцией.

### Доступные операции

* **create** — создание нового тенанта в тестовом режиме сроком на 2 месяца.
* **modify** — изменение настроек тенанта, включая перевод из ТЕСТ в ПРОД.
* **suspend** — выключение (приостановка работы) тенанта.
* **resume** — включение ранее приостановленного тенанта.
* **delete** — удаление тенанта; доступно только после выполнения операции suspend.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создан тенант.
Пример значения: `valo.ngcloud.ru`.

### DNS-Префикс
Описание: Будет добавлено в зону valo.ngcloud.ru
Пример значения: `mysimpledomain`.

### Параметры хранилища
Описание: Сколько места будет выделено под использование в тенанте. Данные хранятся в S3. Размер указывается в Gigabytes
Пример значения: `10`.

### Настройки тенанта
Описание: Ряд конфигурации Valo-тенанта, такие как настройки пользователя и доступного функционала
Пример значения: `опционально в рамках настройки`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
Достаточно развернуть тенант в ТЕСТ. Срок предоставляется в 2 месяца. По истечению срока тенант автоматически переводится в `suspend` на стороне ресурсной платформы

### Промышленное окружение
Для разблокировки используйте операцию `modify`

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Статус тенанта
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация
Тенант всегда создаётся в режиме ТЕСТ и не может быть сразу переведён в ПРОД без операции modify.
Удаление тенанта возможно только после его выключения с помощью операции suspend.
Срок тестового режима составляет 2 месяца с момента создания.
Операции suspend и resume используются для временного управления доступностью сервиса без потери конфигурации.
diff --git a/docs/30_registry/resources/valoTenant_ops.md b/docs/30_registry/resources/valoTenant_ops.md deleted file mode 100644 index 2889e5c..0000000 --- a/docs/30_registry/resources/valoTenant_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_valoTenant - -Service ID: `149` - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) diff --git a/docs/30_registry/resources/valoTenant_params.md b/docs/30_registry/resources/valoTenant_params.md deleted file mode 100644 index 2889e5c..0000000 --- a/docs/30_registry/resources/valoTenant_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_valoTenant - -Service ID: `149` - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) - -[Overview](valoTenant.md) | [Parameters](valoTenant_params.md) | [Operations](valoTenant_ops.md) diff --git a/docs/30_registry/resources/valo_tenant.md b/docs/30_registry/resources/valo_tenant.md deleted file mode 100644 index 6860e2f..0000000 --- a/docs/30_registry/resources/valo_tenant.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## MAN - -
-# Инструкция по развертыванию Тенант Valo через платформу

## 1. Общая информация
Тенант Valo — логический изолированный экземпляр сервиса VALO Cloud, предоставляющий защищённое облачное хранилище, синхронизацию данных и доступ к документам с различных устройств. При создании тенант автоматически разворачивается в тестовом режиме сроком на 2 месяца. Перевод в промышленную эксплуатацию выполняется отдельной операцией.

### Доступные операции

* **create** — создание нового тенанта в тестовом режиме сроком на 2 месяца.
* **modify** — изменение настроек тенанта, включая перевод из ТЕСТ в ПРОД.
* **suspend** — выключение (приостановка работы) тенанта.
* **resume** — включение ранее приостановленного тенанта.
* **delete** — удаление тенанта; доступно только после выполнения операции suspend.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создан тенант.
Пример значения: `valo.ngcloud.ru`.

### DNS-Префикс
Описание: Будет добавлено в зону valo.ngcloud.ru
Пример значения: `mysimpledomain`.

### Параметры хранилища
Описание: Сколько места будет выделено под использование в тенанте. Данные хранятся в S3. Размер указывается в Gigabytes
Пример значения: `10`.

### Настройки тенанта
Описание: Ряд конфигурации Valo-тенанта, такие как настройки пользователя и доступного функционала
Пример значения: `опционально в рамках настройки`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
Достаточно развернуть тенант в ТЕСТ. Срок предоставляется в 2 месяца. По истечению срока тенант автоматически переводится в `suspend` на стороне ресурсной платформы

### Промышленное окружение
Для разблокировки используйте операцию `modify`

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Статус тенанта
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация
Тенант всегда создаётся в режиме ТЕСТ и не может быть сразу переведён в ПРОД без операции modify.
Удаление тенанта возможно только после его выключения с помощью операции suspend.
Срок тестового режима составляет 2 месяца с момента создания.
Операции suspend и resume используются для временного управления доступностью сервиса без потери конфигурации.
-
diff --git a/docs/30_registry/resources/valo_tenant_example.md b/docs/30_registry/resources/valo_tenant_example.md deleted file mode 100644 index 2ddb9a7..0000000 --- a/docs/30_registry/resources/valo_tenant_example.md +++ /dev/null @@ -1,48 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Copy-ready manifest (`valo_tenant_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_valo_tenant" "baza" { - resource_realm = "TODO" - domain = "TODO" # Будет добавлено в зону valo.ngcloud.ru - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - valo_options = {} - s3_storage = 10 # Параметр указывается в `Gb` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_valo_tenant.baza.state_params["имя_ключа"] -nubes_valo_tenant.baza.state_out["имя_ключа"] -nubes_valo_tenant.baza.state_params_flat["имя_ключа"] -nubes_valo_tenant.baza.state_out_flat["имя_ключа"] -nubes_valo_tenant.baza.vault_secrets["имя_ключа"] -nubes_valo_tenant.baza.vault_url -nubes_valo_tenant.baza.vault_user_path -nubes_valo_tenant.baza.vault_fields -``` diff --git a/docs/30_registry/resources/valo_tenant_example_ops.md b/docs/30_registry/resources/valo_tenant_example_ops.md deleted file mode 100644 index f43b351..0000000 --- a/docs/30_registry/resources/valo_tenant_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_example.md) | [Parameters](valo_tenant_example_params.md) | [Operations](valo_tenant_example_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_example_params.md b/docs/30_registry/resources/valo_tenant_example_params.md deleted file mode 100644 index f43b351..0000000 --- a/docs/30_registry/resources/valo_tenant_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_example.md) | [Parameters](valo_tenant_example_params.md) | [Operations](valo_tenant_example_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_man.md b/docs/30_registry/resources/valo_tenant_man.md deleted file mode 100644 index a91a07d..0000000 --- a/docs/30_registry/resources/valo_tenant_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: valo_tenant - -# Инструкция по развертыванию Тенант Valo через платформу

## 1. Общая информация
Тенант Valo — логический изолированный экземпляр сервиса VALO Cloud, предоставляющий защищённое облачное хранилище, синхронизацию данных и доступ к документам с различных устройств. При создании тенант автоматически разворачивается в тестовом режиме сроком на 2 месяца. Перевод в промышленную эксплуатацию выполняется отдельной операцией.

### Доступные операции

* **create** — создание нового тенанта в тестовом режиме сроком на 2 месяца.
* **modify** — изменение настроек тенанта, включая перевод из ТЕСТ в ПРОД.
* **suspend** — выключение (приостановка работы) тенанта.
* **resume** — включение ранее приостановленного тенанта.
* **delete** — удаление тенанта; доступно только после выполнения операции suspend.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создан тенант.
Пример значения: `valo.ngcloud.ru`.

### DNS-Префикс
Описание: Будет добавлено в зону valo.ngcloud.ru
Пример значения: `mysimpledomain`.

### Параметры хранилища
Описание: Сколько места будет выделено под использование в тенанте. Данные хранятся в S3. Размер указывается в Gigabytes
Пример значения: `10`.

### Настройки тенанта
Описание: Ряд конфигурации Valo-тенанта, такие как настройки пользователя и доступного функционала
Пример значения: `опционально в рамках настройки`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
Достаточно развернуть тенант в ТЕСТ. Срок предоставляется в 2 месяца. По истечению срока тенант автоматически переводится в `suspend` на стороне ресурсной платформы

### Промышленное окружение
Для разблокировки используйте операцию `modify`

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Статус тенанта
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация
Тенант всегда создаётся в режиме ТЕСТ и не может быть сразу переведён в ПРОД без операции modify.
Удаление тенанта возможно только после его выключения с помощью операции suspend.
Срок тестового режима составляет 2 месяца с момента создания.
Операции suspend и resume используются для временного управления доступностью сервиса без потери конфигурации.
diff --git a/docs/30_registry/resources/valo_tenant_ops.md b/docs/30_registry/resources/valo_tenant_ops.md deleted file mode 100644 index 89cb168..0000000 --- a/docs/30_registry/resources/valo_tenant_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](valo_tenant_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](valo_tenant_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/valo_tenant_outputs.md b/docs/30_registry/resources/valo_tenant_outputs.md deleted file mode 100644 index 2d4ea5d..0000000 --- a/docs/30_registry/resources/valo_tenant_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/valo_tenant_outputs_ops.md b/docs/30_registry/resources/valo_tenant_outputs_ops.md deleted file mode 100644 index 71fa982..0000000 --- a/docs/30_registry/resources/valo_tenant_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_outputs.md) | [Parameters](valo_tenant_outputs_params.md) | [Operations](valo_tenant_outputs_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_outputs_params.md b/docs/30_registry/resources/valo_tenant_outputs_params.md deleted file mode 100644 index 71fa982..0000000 --- a/docs/30_registry/resources/valo_tenant_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_outputs.md) | [Parameters](valo_tenant_outputs_params.md) | [Operations](valo_tenant_outputs_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_params.md b/docs/30_registry/resources/valo_tenant_params.md deleted file mode 100644 index 2c3d14f..0000000 --- a/docs/30_registry/resources/valo_tenant_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Parameters - -- [Create params](valo_tenant_params_create.md) -- [Modify params](valo_tenant_params_modify.md) diff --git a/docs/30_registry/resources/valo_tenant_params_create.md b/docs/30_registry/resources/valo_tenant_params_create.md deleted file mode 100644 index a0e9538..0000000 --- a/docs/30_registry/resources/valo_tenant_params_create.md +++ /dev/null @@ -1,38 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
655resource_realmstringfunc=getAvailableResourceRealms
656domainstringБудет добавлено в зону valo.ngcloud.ruregex=^[a-z0-9](?:[a-z0-9-]{3,61}[a-z0-9])?$; maxlength=61; minlength=3
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - -
IDCodeTypeDefaultDescriptionConstraints
657valo_optionsmap-fixed{}
658s3_storageinteger10Данные хранятся в отдельном экземпляре S3minvalue=1; maxvalue=999
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/valo_tenant_params_create_ops.md b/docs/30_registry/resources/valo_tenant_params_create_ops.md deleted file mode 100644 index 9509798..0000000 --- a/docs/30_registry/resources/valo_tenant_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_params_create.md) | [Parameters](valo_tenant_params_create_params.md) | [Operations](valo_tenant_params_create_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_params_create_params.md b/docs/30_registry/resources/valo_tenant_params_create_params.md deleted file mode 100644 index 9509798..0000000 --- a/docs/30_registry/resources/valo_tenant_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_params_create.md) | [Parameters](valo_tenant_params_create_params.md) | [Operations](valo_tenant_params_create_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_params_modify.md b/docs/30_registry/resources/valo_tenant_params_modify.md deleted file mode 100644 index 4b07bec..0000000 --- a/docs/30_registry/resources/valo_tenant_params_modify.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -## Modify params - - - - - - -
IDCodeTypeDescriptionConstraints
659valo_optionsmap-fixed
660s3_storageintegerДанные хранятся в отдельном экземпляре S3
diff --git a/docs/30_registry/resources/valo_tenant_params_modify_ops.md b/docs/30_registry/resources/valo_tenant_params_modify_ops.md deleted file mode 100644 index 40ce98a..0000000 --- a/docs/30_registry/resources/valo_tenant_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_params_modify.md) | [Parameters](valo_tenant_params_modify_params.md) | [Operations](valo_tenant_params_modify_ops.md) diff --git a/docs/30_registry/resources/valo_tenant_params_modify_params.md b/docs/30_registry/resources/valo_tenant_params_modify_params.md deleted file mode 100644 index 40ce98a..0000000 --- a/docs/30_registry/resources/valo_tenant_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_valo_tenant - -Service ID: `149` - -Service Name: VALO Cloud - -[Manual](valo_tenant.md) | [Create params](valo_tenant_params_create.md) | [Modify params](valo_tenant_params_modify.md) | [Output params](valo_tenant_outputs.md) | [Operations](valo_tenant_ops.md) | [Example](valo_tenant_example.md) - -[Overview](valo_tenant_params_modify.md) | [Parameters](valo_tenant_params_modify_params.md) | [Operations](valo_tenant_params_modify_ops.md) diff --git a/docs/30_registry/resources/vapp.md b/docs/30_registry/resources/vapp.md deleted file mode 100644 index 630f47c..0000000 --- a/docs/30_registry/resources/vapp.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## MAN - -
-# Инструкция по развертыванию Виртуальный каталог ВМ (vApp) через платформу

## 1. Общая информация

**Виртуальный каталог ВМ (vApp)** — это логическая каталог, объединённая в единый управляемый объект. Сервис предназначен для совместного развертывания, управления жизненным циклом и сетевого взаимодействия набора связанных ВМ. Основные функции включают:
- централизованное управление включением, выключением и приостановкой группы ВМ;
- унифицированный сетевой доступ через привязанный Edge-шлюз;

### Доступные операции

**create** — Создание нового vApp с привязкой к заданным услугам VDC и Edge
**delete** — Удаление существующего vApp. Требуется предварительный перевод vApp в состояние *suspend*. Полное удаление возможно через 14 дней.
**suspend** — Остановка vApp (выключение всех ВМ внутри каталога)
**resume** — Запуск vApp (включение всех ВМ внутри каталога)

---

## 2. Параметры развертывания

Параметры берутся из операции **create**.

### UUID Услуги VDC
Уникальный идентификатор услуги «Виртуальный датацентр (vDC)».
Используется для определения вычислительной инфраструктуры, в которой будет развернут vApp.

### UUID Услуги Edge
Уникальный идентификатор услуги «Сетевой шлюз периметра (Edge)».
Обеспечивает маршрутизацию и сетевое подключение. Может быть привязан к группе VDC, поэтому выбирается отдельно.

### Имя vApp
Строгое имя, соответствующее маске формирования DNS-имени.
Используется как часть в DNS-имени при создании виртуальных машин.

---

## 3. Рекомендованные характеристики
Так как является промежуточным этапом для создания ВМ, все характеристики описываются в услуге `Виртуальная машина`

---

## 4. Выходные параметры

### Параметры vApp
Заданные при создании vApp

---

## 5. Дополнительная информация

- Привязка к VDC и Edge осуществляется раздельно, поскольку один Edge может обслуживать несколько VDC (через услугу `Группа виртуальных датацентров (groupvDC)`). Это гарантирует возможность развернуть ВМ в единой сети, но в разных виртуальных датацентрах.
- Перед удалением vApp необходимо вручную перевести его в состояние **suspend**. Удаление возможно только спустя 14 дней после этого шага.
- Операция delete удаляет весь vApp полностью, включая все виртуальные машины, связанные с ним.
- Рекомендуется заранее планировать сетевые связи и назначения DNS-имён для обеспечения корректной работы сервисов, развернутых внутри vApp.
- При проектировании инфраструктуры следует учитывать зависимости между Edge-шлюзом, VDC и размещаемыми ВМ, чтобы избежать ограничений при масштабировании и интеграции. -
diff --git a/docs/30_registry/resources/vapp_example.md b/docs/30_registry/resources/vapp_example.md deleted file mode 100644 index bb266ed..0000000 --- a/docs/30_registry/resources/vapp_example.md +++ /dev/null @@ -1,45 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Copy-ready manifest (`vapp_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vapp" "baza" { - nsxt_uid = "TODO" # UUID Услуги `Сетевой шлюз периметра (Edge)` - vapp_name = "TODO" # Уникальное в рамках организации - vdc_uid = "TODO" # UUID Услуги `Виртуальный датацентр (vDC)` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vapp.baza.state_params["имя_ключа"] -nubes_vapp.baza.state_out["имя_ключа"] -nubes_vapp.baza.state_params_flat["имя_ключа"] -nubes_vapp.baza.state_out_flat["имя_ключа"] -nubes_vapp.baza.vault_secrets["имя_ключа"] -nubes_vapp.baza.vault_url -nubes_vapp.baza.vault_user_path -nubes_vapp.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vapp_example_ops.md b/docs/30_registry/resources/vapp_example_ops.md deleted file mode 100644 index a72a0d3..0000000 --- a/docs/30_registry/resources/vapp_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_example.md) | [Parameters](vapp_example_params.md) | [Operations](vapp_example_ops.md) diff --git a/docs/30_registry/resources/vapp_example_params.md b/docs/30_registry/resources/vapp_example_params.md deleted file mode 100644 index a72a0d3..0000000 --- a/docs/30_registry/resources/vapp_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_example.md) | [Parameters](vapp_example_params.md) | [Operations](vapp_example_ops.md) diff --git a/docs/30_registry/resources/vapp_instruction.md b/docs/30_registry/resources/vapp_instruction.md deleted file mode 100644 index 7d0e29c..0000000 --- a/docs/30_registry/resources/vapp_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vapp - -# Инструкция по развертыванию Виртуальный каталог ВМ (vApp) через платформу

## 1. Общая информация

**Виртуальный каталог ВМ (vApp)** — это логическая каталог, объединённая в единый управляемый объект. Сервис предназначен для совместного развертывания, управления жизненным циклом и сетевого взаимодействия набора связанных ВМ. Основные функции включают:
- централизованное управление включением, выключением и приостановкой группы ВМ;
- унифицированный сетевой доступ через привязанный Edge-шлюз;

### Доступные операции

**create** — Создание нового vApp с привязкой к заданным услугам VDC и Edge
**delete** — Удаление существующего vApp. Требуется предварительный перевод vApp в состояние *suspend*. Полное удаление возможно через 14 дней.
**suspend** — Остановка vApp (выключение всех ВМ внутри каталога)
**resume** — Запуск vApp (включение всех ВМ внутри каталога)

---

## 2. Параметры развертывания

Параметры берутся из операции **create**.

### UUID Услуги VDC
Уникальный идентификатор услуги «Виртуальный датацентр (vDC)».
Используется для определения вычислительной инфраструктуры, в которой будет развернут vApp.

### UUID Услуги Edge
Уникальный идентификатор услуги «Сетевой шлюз периметра (Edge)».
Обеспечивает маршрутизацию и сетевое подключение. Может быть привязан к группе VDC, поэтому выбирается отдельно.

### Имя vApp
Строгое имя, соответствующее маске формирования DNS-имени.
Используется как часть в DNS-имени при создании виртуальных машин.

---

## 3. Рекомендованные характеристики
Так как является промежуточным этапом для создания ВМ, все характеристики описываются в услуге `Виртуальная машина`

---

## 4. Выходные параметры

### Параметры vApp
Заданные при создании vApp

---

## 5. Дополнительная информация

- Привязка к VDC и Edge осуществляется раздельно, поскольку один Edge может обслуживать несколько VDC (через услугу `Группа виртуальных датацентров (groupvDC)`). Это гарантирует возможность развернуть ВМ в единой сети, но в разных виртуальных датацентрах.
- Перед удалением vApp необходимо вручную перевести его в состояние **suspend**. Удаление возможно только спустя 14 дней после этого шага.
- Операция delete удаляет весь vApp полностью, включая все виртуальные машины, связанные с ним.
- Рекомендуется заранее планировать сетевые связи и назначения DNS-имён для обеспечения корректной работы сервисов, развернутых внутри vApp.
- При проектировании инфраструктуры следует учитывать зависимости между Edge-шлюзом, VDC и размещаемыми ВМ, чтобы избежать ограничений при масштабировании и интеграции. diff --git a/docs/30_registry/resources/vapp_man.md b/docs/30_registry/resources/vapp_man.md deleted file mode 100644 index 3ed2768..0000000 --- a/docs/30_registry/resources/vapp_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vapp - -# Инструкция по развертыванию Виртуальный каталог ВМ (vApp) через платформу

## 1. Общая информация

**Виртуальный каталог ВМ (vApp)** — это логическая каталог, объединённая в единый управляемый объект. Сервис предназначен для совместного развертывания, управления жизненным циклом и сетевого взаимодействия набора связанных ВМ. Основные функции включают:
- централизованное управление включением, выключением и приостановкой группы ВМ;
- унифицированный сетевой доступ через привязанный Edge-шлюз;

### Доступные операции

**create** — Создание нового vApp с привязкой к заданным услугам VDC и Edge
**delete** — Удаление существующего vApp. Требуется предварительный перевод vApp в состояние *suspend*. Полное удаление возможно через 14 дней.
**suspend** — Остановка vApp (выключение всех ВМ внутри каталога)
**resume** — Запуск vApp (включение всех ВМ внутри каталога)

---

## 2. Параметры развертывания

Параметры берутся из операции **create**.

### UUID Услуги VDC
Уникальный идентификатор услуги «Виртуальный датацентр (vDC)».
Используется для определения вычислительной инфраструктуры, в которой будет развернут vApp.

### UUID Услуги Edge
Уникальный идентификатор услуги «Сетевой шлюз периметра (Edge)».
Обеспечивает маршрутизацию и сетевое подключение. Может быть привязан к группе VDC, поэтому выбирается отдельно.

### Имя vApp
Строгое имя, соответствующее маске формирования DNS-имени.
Используется как часть в DNS-имени при создании виртуальных машин.

---

## 3. Рекомендованные характеристики
Так как является промежуточным этапом для создания ВМ, все характеристики описываются в услуге `Виртуальная машина`

---

## 4. Выходные параметры

### Параметры vApp
Заданные при создании vApp

---

## 5. Дополнительная информация

- Привязка к VDC и Edge осуществляется раздельно, поскольку один Edge может обслуживать несколько VDC (через услугу `Группа виртуальных датацентров (groupvDC)`). Это гарантирует возможность развернуть ВМ в единой сети, но в разных виртуальных датацентрах.
- Перед удалением vApp необходимо вручную перевести его в состояние **suspend**. Удаление возможно только спустя 14 дней после этого шага.
- Операция delete удаляет весь vApp полностью, включая все виртуальные машины, связанные с ним.
- Рекомендуется заранее планировать сетевые связи и назначения DNS-имён для обеспечения корректной работы сервисов, развернутых внутри vApp.
- При проектировании инфраструктуры следует учитывать зависимости между Edge-шлюзом, VDC и размещаемыми ВМ, чтобы избежать ограничений при масштабировании и интеграции. diff --git a/docs/30_registry/resources/vapp_ops.md b/docs/30_registry/resources/vapp_ops.md deleted file mode 100644 index 5e1eba0..0000000 --- a/docs/30_registry/resources/vapp_ops.md +++ /dev/null @@ -1,14 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vapp_params_create.md) -- `delete` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/vapp_outputs.md b/docs/30_registry/resources/vapp_outputs.md deleted file mode 100644 index cdfe95f..0000000 --- a/docs/30_registry/resources/vapp_outputs.md +++ /dev/null @@ -1,29 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / vm-sless-demo-vapp / suspended) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["vdcUid"]` -- `state_params["nsxtUid"]` -- `state_params["vappName"]` diff --git a/docs/30_registry/resources/vapp_outputs_ops.md b/docs/30_registry/resources/vapp_outputs_ops.md deleted file mode 100644 index c7f3b6b..0000000 --- a/docs/30_registry/resources/vapp_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_outputs.md) | [Parameters](vapp_outputs_params.md) | [Operations](vapp_outputs_ops.md) diff --git a/docs/30_registry/resources/vapp_outputs_params.md b/docs/30_registry/resources/vapp_outputs_params.md deleted file mode 100644 index c7f3b6b..0000000 --- a/docs/30_registry/resources/vapp_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_outputs.md) | [Parameters](vapp_outputs_params.md) | [Operations](vapp_outputs_ops.md) diff --git a/docs/30_registry/resources/vapp_params.md b/docs/30_registry/resources/vapp_params.md deleted file mode 100644 index 4c7addc..0000000 --- a/docs/30_registry/resources/vapp_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Parameters - -- [Create params](vapp_params_create.md) -- [Modify params](vapp_params_modify.md) diff --git a/docs/30_registry/resources/vapp_params_create.md b/docs/30_registry/resources/vapp_params_create.md deleted file mode 100644 index 3b23cff..0000000 --- a/docs/30_registry/resources/vapp_params_create.md +++ /dev/null @@ -1,34 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - -
IDCodeTypeDescriptionConstraints
190nsxt_uiduuidК какой сети может быть подключен виртуальный каталогref_svc_id=22
191vapp_namestringИмеет строгую маску `^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$`

Используется в формировании DNS-Имени (для виртуальных машин)
regex=^[a-z0-9][a-z0-9.-]{3,61}[a-z0-9]$; minlength=3
623vdc_uiduuidВ каких ресурсах будет создан виртуальный каталогref_svc_id=21
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. - -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vapp_params_create_ops.md b/docs/30_registry/resources/vapp_params_create_ops.md deleted file mode 100644 index 234acac..0000000 --- a/docs/30_registry/resources/vapp_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_params_create.md) | [Parameters](vapp_params_create_params.md) | [Operations](vapp_params_create_ops.md) diff --git a/docs/30_registry/resources/vapp_params_create_params.md b/docs/30_registry/resources/vapp_params_create_params.md deleted file mode 100644 index 234acac..0000000 --- a/docs/30_registry/resources/vapp_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_params_create.md) | [Parameters](vapp_params_create_params.md) | [Operations](vapp_params_create_ops.md) diff --git a/docs/30_registry/resources/vapp_params_modify.md b/docs/30_registry/resources/vapp_params_modify.md deleted file mode 100644 index 4fca747..0000000 --- a/docs/30_registry/resources/vapp_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/vapp_params_modify_ops.md b/docs/30_registry/resources/vapp_params_modify_ops.md deleted file mode 100644 index 3382f81..0000000 --- a/docs/30_registry/resources/vapp_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_params_modify.md) | [Parameters](vapp_params_modify_params.md) | [Operations](vapp_params_modify_ops.md) diff --git a/docs/30_registry/resources/vapp_params_modify_params.md b/docs/30_registry/resources/vapp_params_modify_params.md deleted file mode 100644 index 3382f81..0000000 --- a/docs/30_registry/resources/vapp_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vapp - -Service ID: `26` - -Service Name: Виртуальный каталог ВМ (vApp) - -[Manual](vapp.md) | [Create params](vapp_params_create.md) | [Modify params](vapp_params_modify.md) | [Output params](vapp_outputs.md) | [Operations](vapp_ops.md) | [Example](vapp_example.md) - -[Overview](vapp_params_modify.md) | [Parameters](vapp_params_modify_params.md) | [Operations](vapp_params_modify_ops.md) diff --git a/docs/30_registry/resources/vcComplex.md b/docs/30_registry/resources/vcComplex.md deleted file mode 100644 index ef94243..0000000 --- a/docs/30_registry/resources/vcComplex.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vcComplex - -Service ID: `113` - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -## Example - -```hcl -resource "nubes_vc_complex" "example" { - # required params ... - suspend_on_destroy = "state_only" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/vcComplex_instruction.md b/docs/30_registry/resources/vcComplex_instruction.md deleted file mode 100644 index 2271dc2..0000000 --- a/docs/30_registry/resources/vcComplex_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vcComplex - -# Создает окружение для ВМ.

## Создает сервисы:
**Организация**
**Виртуальный датацентр**
**Каталог**
**Сетевой шлюз периметра**

diff --git a/docs/30_registry/resources/vcComplex_ops.md b/docs/30_registry/resources/vcComplex_ops.md deleted file mode 100644 index 82fd525..0000000 --- a/docs/30_registry/resources/vcComplex_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcComplex - -Service ID: `113` - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) diff --git a/docs/30_registry/resources/vcComplex_params.md b/docs/30_registry/resources/vcComplex_params.md deleted file mode 100644 index 82fd525..0000000 --- a/docs/30_registry/resources/vcComplex_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcComplex - -Service ID: `113` - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) - -[Overview](vcComplex.md) | [Parameters](vcComplex_params.md) | [Operations](vcComplex_ops.md) diff --git a/docs/30_registry/resources/vcOrg.md b/docs/30_registry/resources/vcOrg.md deleted file mode 100644 index 8187e3b..0000000 --- a/docs/30_registry/resources/vcOrg.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vcOrg - -Service ID: `19` - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -## Example - -```hcl -resource "nubes_vc_org" "example" { - # required params ... - suspend_on_destroy = "suspend" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/vcOrgSaas.md b/docs/30_registry/resources/vcOrgSaas.md deleted file mode 100644 index e9dfeb4..0000000 --- a/docs/30_registry/resources/vcOrgSaas.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vcOrgSaas - -Service ID: `20` - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -## Example - -```hcl -resource "nubes_vc_org_saas" "example" { - # required params ... - suspend_on_destroy = "suspend" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/vcOrgSaas_instruction.md b/docs/30_registry/resources/vcOrgSaas_instruction.md deleted file mode 100644 index 4f5f616..0000000 --- a/docs/30_registry/resources/vcOrgSaas_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vcOrgSaas - -Верхнеуровневая сущность создаваемая для Заказчика.
Внутри Организация вы можете создать: Виртуальные датацентры, Каталоги. diff --git a/docs/30_registry/resources/vcOrgSaas_ops.md b/docs/30_registry/resources/vcOrgSaas_ops.md deleted file mode 100644 index 8d6bb3c..0000000 --- a/docs/30_registry/resources/vcOrgSaas_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcOrgSaas - -Service ID: `20` - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) diff --git a/docs/30_registry/resources/vcOrgSaas_params.md b/docs/30_registry/resources/vcOrgSaas_params.md deleted file mode 100644 index 8d6bb3c..0000000 --- a/docs/30_registry/resources/vcOrgSaas_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcOrgSaas - -Service ID: `20` - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) - -[Overview](vcOrgSaas.md) | [Parameters](vcOrgSaas_params.md) | [Operations](vcOrgSaas_ops.md) diff --git a/docs/30_registry/resources/vcOrg_instruction.md b/docs/30_registry/resources/vcOrg_instruction.md deleted file mode 100644 index 3134432..0000000 --- a/docs/30_registry/resources/vcOrg_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vcOrg - -# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.
**modify** — Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).
**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.
**resume** — Разморозка организации, восстановление функций управления.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создана организация.
Пример значения: `ngcloud.ru`.

### Тип организации
Описание: тип создаваемой организации.
Варианты:
- `iaas` — организация с прямым доступом к облаку и авторизацией через Keycloak.
- `saas` — организация под управлением Nubes, без прямого доступа к облаку.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.

### Промышленное окружение
- Тип организации: `saas` (упрощённая модель использования).

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Url организации
Для быстрого доступа в тенант

### Статус организации
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация

- Для конфигурации внешних IP внутри организации необходимо предварительно создать:
-- хотя бы один **Виртуальный датацентр (VDC)** привязанный к этой организации;
-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к vdc выше.
- Удаление организации возможно только через 14 дней после перевода в состояние suspend.
- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок и иных объектов.
- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.
- Для iaas-организаций доступ осуществляется через Keycloak. diff --git a/docs/30_registry/resources/vcOrg_ops.md b/docs/30_registry/resources/vcOrg_ops.md deleted file mode 100644 index 93f32b1..0000000 --- a/docs/30_registry/resources/vcOrg_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcOrg - -Service ID: `19` - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) diff --git a/docs/30_registry/resources/vcOrg_params.md b/docs/30_registry/resources/vcOrg_params.md deleted file mode 100644 index 93f32b1..0000000 --- a/docs/30_registry/resources/vcOrg_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcOrg - -Service ID: `19` - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) - -[Overview](vcOrg.md) | [Parameters](vcOrg_params.md) | [Operations](vcOrg_ops.md) diff --git a/docs/30_registry/resources/vcVdcGroup.md b/docs/30_registry/resources/vcVdcGroup.md deleted file mode 100644 index 6ea3bdb..0000000 --- a/docs/30_registry/resources/vcVdcGroup.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vcVdcGroup - -Service ID: `29` - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -## Example - -```hcl -resource "nubes_vc_vdc_group" "example" { - # required params ... - suspend_on_destroy = "state_only" - adopt_existing_on_create = true -} -``` diff --git a/docs/30_registry/resources/vcVdcGroup_instruction.md b/docs/30_registry/resources/vcVdcGroup_instruction.md deleted file mode 100644 index 7ecb003..0000000 --- a/docs/30_registry/resources/vcVdcGroup_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vcVdcGroup - -# Инструкция по развертыванию Группа виртуальных датацентров (groupvDC) через платформу

## 1. Общая информация

Сервис **Группа виртуальных датацентров (groupvDC)** предназначен для логического объединения нескольких виртуальных датацентров (vDC) в единую группу. Это позволяет растягивать SDN между разными vDC и централизованно управлять сетевой связностью. Управление инфраструктурой осуществляется через Cloud Director.
Сервис применяется в случаях, когда требуется обеспечить единое сетевое пространство для распределенных виртуальных датацентров.

### Доступные операции

**create** — Создание новой группы виртуальных датацентров.
**delete** — Удаление существующей группы vDC.
**add_vdc** — Добавление дополнительного виртуального датацентра в группу.
**remove_vdc** — Удаление ранее добавленного виртуального датацентра из группы.

---

## 2. Параметры развертывания

Параметры операции **create**:

### UUID VDC
Идентификатор виртуального датацентра, который будет являться первичным в группе.
Описание: требуется предварительно создать виртуальный датацентр с помощью услуги `Виртуальный датацентр (vDC)`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Для тестового окружения создавать группу VDC нет необходимости, так как это создаёт дополнительный слой абстракции в Cloud Director

### Промышленное окружение
- Для промышленного окружения, если в тенанте существуют разные VDC, создание groupvdc позволит снизить сетевые издержки (за счёт общей сети)

---

## 4. Выходные параметры

### Параметры groupvdc
Набор параметров, указанных пользователем при создании

---

## 5. Дополнительная информация
- Группа vDC используется для растягивания SDN между несколькими виртуальными датацентрами. Управление всеми сетевыми элементами внутри группы выполняется Cloud Director.
- Удалить первичный vDC (тот, что был указан при операции **create**) невозможно. Для его удаления необходимо удалить всю группу и создать новую.
- Перед добавлением любого vDC в группу он должен быть предварительно развернут через сервис `Виртуальный датацентр (vDC)`.
- Сети создаются не в этой услуге, а в услуге `Сетевой шлюз периметра (Edge)`. В ней необходимо будет выбрать тип `groupvdc` diff --git a/docs/30_registry/resources/vcVdcGroup_ops.md b/docs/30_registry/resources/vcVdcGroup_ops.md deleted file mode 100644 index 70e8b5a..0000000 --- a/docs/30_registry/resources/vcVdcGroup_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcVdcGroup - -Service ID: `29` - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) diff --git a/docs/30_registry/resources/vcVdcGroup_params.md b/docs/30_registry/resources/vcVdcGroup_params.md deleted file mode 100644 index 70e8b5a..0000000 --- a/docs/30_registry/resources/vcVdcGroup_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vcVdcGroup - -Service ID: `29` - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) - -[Overview](vcVdcGroup.md) | [Parameters](vcVdcGroup_params.md) | [Operations](vcVdcGroup_ops.md) diff --git a/docs/30_registry/resources/vc_complex.md b/docs/30_registry/resources/vc_complex.md deleted file mode 100644 index c83cece..0000000 --- a/docs/30_registry/resources/vc_complex.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## MAN - -
-# Создает окружение для ВМ.

## Создает сервисы:
**Организация**
**Виртуальный датацентр**
**Каталог**
**Сетевой шлюз периметра**

-
diff --git a/docs/30_registry/resources/vc_complex_example.md b/docs/30_registry/resources/vc_complex_example.md deleted file mode 100644 index 05f8e92..0000000 --- a/docs/30_registry/resources/vc_complex_example.md +++ /dev/null @@ -1,59 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Copy-ready manifest (`vc_complex_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_complex" "baza" { - resource_realm = "TODO" # Платформа для развертывания - vapp_name = "TODO" # Имя vApp - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - vdc_provider_gateway = "sandbox-v1cl1-pvdc" # Взять из свойств ресурсной платформы. Путь .vcd.providerVdc - взять KEY providerGateway Cloud Director. Влияет ресурсы будут предоставлены. Является полем (List) в свойствах рес. платформы ЛК, но сам параметр передаётся только как один String - virtual_services_count = 1 # Кол-во виртуальных сервисов, которые выделяются на AVI. Во избежании коллапса пока выделяется до 4 - ip_space_name = "internet-ipv4-v1" # Имя ip Space для внешнего IP. Целесообразнее брать самый дешёвый, так как это vip для исходящего трафика. Необходимо задавать если включен needExternalAddressSNAT - storage_config = [{"name": "", "size": 1024}] # Описывается как массив объектов, где описывается имя политики и её размер - vdc_network_pool = "nsxt-sandbox-geneve-np" - cpu_guaranteed = 20 - mem_guaranteed = 20 - segroup_name = "SEGROUP-SANDBOX-CL1-SHARED-01" # Наименование segroup, в котором будут выделяться пулы на AVI - need_external_address_s_n_a_t = true # Выделяет внешний IP на Edge. Используется для SNAT всего трафика - need_enable_a_v_i = false # Включает AVI в Cloud Director - cpu_allocated = 1 # шт - mem_allocated = 10 # gb - v_i_p_count = 0 # ш -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_complex.baza.state_params["имя_ключа"] -nubes_vc_complex.baza.state_out["имя_ключа"] -nubes_vc_complex.baza.state_params_flat["имя_ключа"] -nubes_vc_complex.baza.state_out_flat["имя_ключа"] -nubes_vc_complex.baza.vault_secrets["имя_ключа"] -nubes_vc_complex.baza.vault_url -nubes_vc_complex.baza.vault_user_path -nubes_vc_complex.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_complex_example_ops.md b/docs/30_registry/resources/vc_complex_example_ops.md deleted file mode 100644 index 9626df3..0000000 --- a/docs/30_registry/resources/vc_complex_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_example.md) | [Parameters](vc_complex_example_params.md) | [Operations](vc_complex_example_ops.md) diff --git a/docs/30_registry/resources/vc_complex_example_params.md b/docs/30_registry/resources/vc_complex_example_params.md deleted file mode 100644 index 9626df3..0000000 --- a/docs/30_registry/resources/vc_complex_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_example.md) | [Parameters](vc_complex_example_params.md) | [Operations](vc_complex_example_ops.md) diff --git a/docs/30_registry/resources/vc_complex_man.md b/docs/30_registry/resources/vc_complex_man.md deleted file mode 100644 index 7a0d89b..0000000 --- a/docs/30_registry/resources/vc_complex_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_complex - -# Создает окружение для ВМ.

## Создает сервисы:
**Организация**
**Виртуальный датацентр**
**Каталог**
**Сетевой шлюз периметра**

diff --git a/docs/30_registry/resources/vc_complex_ops.md b/docs/30_registry/resources/vc_complex_ops.md deleted file mode 100644 index 9d016bc..0000000 --- a/docs/30_registry/resources/vc_complex_ops.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_complex_params_create.md) diff --git a/docs/30_registry/resources/vc_complex_outputs.md b/docs/30_registry/resources/vc_complex_outputs.md deleted file mode 100644 index 629a059..0000000 --- a/docs/30_registry/resources/vc_complex_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vc_complex_outputs_ops.md b/docs/30_registry/resources/vc_complex_outputs_ops.md deleted file mode 100644 index bd35f68..0000000 --- a/docs/30_registry/resources/vc_complex_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_outputs.md) | [Parameters](vc_complex_outputs_params.md) | [Operations](vc_complex_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_complex_outputs_params.md b/docs/30_registry/resources/vc_complex_outputs_params.md deleted file mode 100644 index bd35f68..0000000 --- a/docs/30_registry/resources/vc_complex_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_outputs.md) | [Parameters](vc_complex_outputs_params.md) | [Operations](vc_complex_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_complex_params.md b/docs/30_registry/resources/vc_complex_params.md deleted file mode 100644 index 82b3c13..0000000 --- a/docs/30_registry/resources/vc_complex_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Parameters - -- [Create params](vc_complex_params_create.md) -- [Modify params](vc_complex_params_modify.md) diff --git a/docs/30_registry/resources/vc_complex_params_create.md b/docs/30_registry/resources/vc_complex_params_create.md deleted file mode 100644 index 6b0b9ec..0000000 --- a/docs/30_registry/resources/vc_complex_params_create.md +++ /dev/null @@ -1,37 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
332resource_realmstringНаименование ресурсной платформыfunc=getAvailableResourceRealms
334vapp_namestringИмя vAppregex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
358vdc_provider_gatewaystringsandbox-v1cl1-pvdcВзять из свойств ресурсной платформы.
Путь .vcd.providerVdc - взять KEY

providerGateway Cloud Director. Влияет ресурсы будут предоставлены. Является полем (List&lt;String&gt;) в свойствах рес. платформы ЛК, но сам параметр передаётся только как один String
359virtual_services_count1Кол-во виртуальных сервисов, которые выделяются на AVI. Во избежании коллапса пока выделяется до 4minvalue=1; maxvalue=4
360ip_space_namestringinternet-ipv4-v1Имя ip Space для внешнего IP. Целесообразнее брать самый дешёвый, так как это vip для исходящего трафика. Необходимо задавать если включен needExternalAddressSNAT
399storage_configjson[{"name": "", "size": 1024}]Описывается как массив объектов, где описывается имя политики и её размер
400vdc_network_poolstringnsxt-sandbox-geneve-np
401cpu_guaranteedinteger20value_list=20, 50, 80
402mem_guaranteedinteger20value_list=20, 50, 80
403segroup_namestringSEGROUP-SANDBOX-CL1-SHARED-01Наименование segroup, в котором будут выделяться пулы на AVI
404need_external_address_snatbooleantrueВыделяет внешний IP на Edge. Используется для SNAT всего трафикаvalue_list=false, true
405need_enable_avibooleanfalseВключает AVI в Cloud Directorvalue_list=false, true
566cpu_allocatedstring1штminvalue=1
567mem_allocatedinteger10gbminvalue=1
568v_ipcountinteger0шminvalue=0; maxvalue=20
diff --git a/docs/30_registry/resources/vc_complex_params_create_ops.md b/docs/30_registry/resources/vc_complex_params_create_ops.md deleted file mode 100644 index f02c929..0000000 --- a/docs/30_registry/resources/vc_complex_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_params_create.md) | [Parameters](vc_complex_params_create_params.md) | [Operations](vc_complex_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_complex_params_create_params.md b/docs/30_registry/resources/vc_complex_params_create_params.md deleted file mode 100644 index f02c929..0000000 --- a/docs/30_registry/resources/vc_complex_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_params_create.md) | [Parameters](vc_complex_params_create_params.md) | [Operations](vc_complex_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_complex_params_modify.md b/docs/30_registry/resources/vc_complex_params_modify.md deleted file mode 100644 index b6a1be3..0000000 --- a/docs/30_registry/resources/vc_complex_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/vc_complex_params_modify_ops.md b/docs/30_registry/resources/vc_complex_params_modify_ops.md deleted file mode 100644 index d323744..0000000 --- a/docs/30_registry/resources/vc_complex_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_params_modify.md) | [Parameters](vc_complex_params_modify_params.md) | [Operations](vc_complex_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_complex_params_modify_params.md b/docs/30_registry/resources/vc_complex_params_modify_params.md deleted file mode 100644 index d323744..0000000 --- a/docs/30_registry/resources/vc_complex_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_complex - -Service ID: `113` - -Service Name: Быстрый старт - -[Manual](vc_complex.md) | [Create params](vc_complex_params_create.md) | [Modify params](vc_complex_params_modify.md) | [Output params](vc_complex_outputs.md) | [Operations](vc_complex_ops.md) | [Example](vc_complex_example.md) - -[Overview](vc_complex_params_modify.md) | [Parameters](vc_complex_params_modify_params.md) | [Operations](vc_complex_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt.md b/docs/30_registry/resources/vc_nsxt.md deleted file mode 100644 index 0c8056d..0000000 --- a/docs/30_registry/resources/vc_nsxt.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## MAN - -
-# Инструкция по развертыванию Сетевой шлюз периметра (Edge) через платформу

## 1. Общая информация

Сервис **Сетевой шлюз периметра (Edge)** предназначен для создания периметрового сетевого шлюза в рамках одного виртуального датацентра (vDC) или группы виртуальных датацентров (groupvDC).
При создании автоматически разворачивается routed-сеть с адресным пространством `10.10.102.0/24`.
Сервис обеспечивает сетевую изоляцию, маршрутизацию, а также может включать функциональность балансировщика нагрузки AVI (ALB) для последующей интеграции, включая поддержку кластеров Штурвал.

### Доступные операции

**create** — Создание нового Edge с привязкой к vDC или groupvDC и развёртыванием routed-сети.
**delete** — Удаление ранее созданного Edge. Недоступно при наличии зависимых услуг (vApp, VM, Кластер Штурвал).
**modify** — Изменение параметров и сетевых настроек существующего Edge.

---

## 2. Параметры развертывания

Ниже приведены параметры операции **create**.

### Тип родительской услуги
Определяет контекст размещения Edge.
Допустимые значения: `vdc`, `groupvdc`.
Использование:
- При выборе `vdc` обязателен параметр **UUID VDC**.
- При выборе `groupvdc` обязателен параметр **UUID Группы VDC**.

### UUID VDC
Идентификатор виртуального датацентра.
Необходимо предварительно создать vDC через услугу «Виртуальный датацентр (vDC)».
Указывается только при выборе родительского типа `vdc`.

### UUID Группы VDC
Идентификатор группы виртуальных датацентров.
Создаётся через услугу «Группа виртуальных датацентров (groupvDC)».
Используется при выборе родительского типа `groupvdc`.

### Включить ALB
Флаг активации AVI Load Balancer в Cloud Director.
Пример значения: `true`/`false`.
Нужен для развёртывания кластера Штурвал и возможности создания Virtual Services.

### Наименование segroup
Имя сервиса групп (segroup) на уровне ресурсной платформы.
Обязательно при включённом ALB.
Определяет группу, в которой будут выделяться пулы AVI для Virtual Services.

### virtualServicesCount
Количество резервируемых виртуальных сервисов (Virtual Services) на AVI.
Типичное значение: 1–10 в зависимости от нагрузки.

---

## 3. Рекомендованные характеристики

### Тестовое окружение (Test)

- Тип родительской услуги: `vdc`
- virtualServicesCount: 1–2
- ALB: выключен по умолчанию (включать только при необходимости тестирования Штурвала)
- segroup: задаётся только при включённом ALB
- VDC гарантии CPU/RAM: минимальные (поскольку изменить их после создания нельзя)

### Промышленное окружение (Production)

- Тип родительской услуги: `groupvdc` при работе с распределёнными нагрузками или `vdc` для локализованных проектов
- virtualServicesCount: 3–10, исходя из предполагаемого количества публикаций
- ALB: включён, если требуется высокая доступность сервисов или используется кластер Штурвал
- segroup: рекомендуется использовать выделенную группу под проект
- VDC гарантии CPU/RAM: повышенные, с учётом того, что изменить их после создания невозможно без пересоздания vDC

---

## 4. Выходные параметры

### Имя Edge
Уникальное название созданного сетевого шлюза, используется для ссылок и дальнейших операций.

### Имя routed-сети
Автоматически созданная routed-сеть с подсетью `10.10.102.0/24`, используется для подключения ресурсов.

### Параметры Edge
Набор параметров, указанных пользователем при создании: тип услуги, ALB, segroup, virtualServicesCount и др.
Используются в операциях modify и для анализа состояния сервиса.

---

## 5. Дополнительная информация

- В рамках сервиса **один раз при создании задаётся гарантированная доля CPU/RAM vDC**. Изменить её невозможно — требуется пересоздание vDC.
- Удаление Edge недоступно при наличии зависимых ресурсов (vApp, VM, кластер Штурвал).
- При использовании ALB необходимо корректно указывать segroup, чтобы обеспечить корректное выделение пулов AVI.
- При выборе режима `groupvdc` следует учитывать распределение нагрузки между несколькими vDC.
- SNAT для всех ресурсов внутри Edge можно активировать через операцию modify (параметры выделения VIP и ipSpace).

-
diff --git a/docs/30_registry/resources/vc_nsxt_example.md b/docs/30_registry/resources/vc_nsxt_example.md deleted file mode 100644 index 8778e08..0000000 --- a/docs/30_registry/resources/vc_nsxt_example.md +++ /dev/null @@ -1,47 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Copy-ready manifest (`vc_nsxt_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_nsxt" "baza" { - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - need_enable_a_v_i = false # Включение Load Balancer - virtual_services_count = 1 # Кол-во виртуальных сервисов, которые выделяются на AVI - vdc_type = "vdc" # Тип родительской услуги -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_nsxt.baza.state_params["имя_ключа"] -nubes_vc_nsxt.baza.state_out["имя_ключа"] -nubes_vc_nsxt.baza.state_params_flat["имя_ключа"] -nubes_vc_nsxt.baza.state_out_flat["имя_ключа"] -nubes_vc_nsxt.baza.vault_secrets["имя_ключа"] -nubes_vc_nsxt.baza.vault_url -nubes_vc_nsxt.baza.vault_user_path -nubes_vc_nsxt.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_nsxt_example_ops.md b/docs/30_registry/resources/vc_nsxt_example_ops.md deleted file mode 100644 index 0e598ae..0000000 --- a/docs/30_registry/resources/vc_nsxt_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_example.md) | [Parameters](vc_nsxt_example_params.md) | [Operations](vc_nsxt_example_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_example_params.md b/docs/30_registry/resources/vc_nsxt_example_params.md deleted file mode 100644 index 0e598ae..0000000 --- a/docs/30_registry/resources/vc_nsxt_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_example.md) | [Parameters](vc_nsxt_example_params.md) | [Operations](vc_nsxt_example_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_instruction.md b/docs/30_registry/resources/vc_nsxt_instruction.md deleted file mode 100644 index 7571132..0000000 --- a/docs/30_registry/resources/vc_nsxt_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vc_nsxt - -# Инструкция по развертыванию Сетевой шлюз периметра (Edge) через платформу

## 1. Общая информация

Сервис **Сетевой шлюз периметра (Edge)** предназначен для создания периметрового сетевого шлюза в рамках одного виртуального датацентра (vDC) или группы виртуальных датацентров (groupvDC).
При создании автоматически разворачивается routed-сеть с адресным пространством `10.10.102.0/24`.
Сервис обеспечивает сетевую изоляцию, маршрутизацию, а также может включать функциональность балансировщика нагрузки AVI (ALB) для последующей интеграции, включая поддержку кластеров Штурвал.

### Доступные операции

**create** — Создание нового Edge с привязкой к vDC или groupvDC и развёртыванием routed-сети.
**delete** — Удаление ранее созданного Edge. Недоступно при наличии зависимых услуг (vApp, VM, Кластер Штурвал).
**modify** — Изменение параметров и сетевых настроек существующего Edge.

---

## 2. Параметры развертывания

Ниже приведены параметры операции **create**.

### Тип родительской услуги
Определяет контекст размещения Edge.
Допустимые значения: `vdc`, `groupvdc`.
Использование:
- При выборе `vdc` обязателен параметр **UUID VDC**.
- При выборе `groupvdc` обязателен параметр **UUID Группы VDC**.

### UUID VDC
Идентификатор виртуального датацентра.
Необходимо предварительно создать vDC через услугу «Виртуальный датацентр (vDC)».
Указывается только при выборе родительского типа `vdc`.

### UUID Группы VDC
Идентификатор группы виртуальных датацентров.
Создаётся через услугу «Группа виртуальных датацентров (groupvDC)».
Используется при выборе родительского типа `groupvdc`.

### Включить ALB
Флаг активации AVI Load Balancer в Cloud Director.
Пример значения: `true`/`false`.
Нужен для развёртывания кластера Штурвал и возможности создания Virtual Services.

### Наименование segroup
Имя сервиса групп (segroup) на уровне ресурсной платформы.
Обязательно при включённом ALB.
Определяет группу, в которой будут выделяться пулы AVI для Virtual Services.

### virtualServicesCount
Количество резервируемых виртуальных сервисов (Virtual Services) на AVI.
Типичное значение: 1–10 в зависимости от нагрузки.

---

## 3. Рекомендованные характеристики

### Тестовое окружение (Test)

- Тип родительской услуги: `vdc`
- virtualServicesCount: 1–2
- ALB: выключен по умолчанию (включать только при необходимости тестирования Штурвала)
- segroup: задаётся только при включённом ALB
- VDC гарантии CPU/RAM: минимальные (поскольку изменить их после создания нельзя)

### Промышленное окружение (Production)

- Тип родительской услуги: `groupvdc` при работе с распределёнными нагрузками или `vdc` для локализованных проектов
- virtualServicesCount: 3–10, исходя из предполагаемого количества публикаций
- ALB: включён, если требуется высокая доступность сервисов или используется кластер Штурвал
- segroup: рекомендуется использовать выделенную группу под проект
- VDC гарантии CPU/RAM: повышенные, с учётом того, что изменить их после создания невозможно без пересоздания vDC

---

## 4. Выходные параметры

### Имя Edge
Уникальное название созданного сетевого шлюза, используется для ссылок и дальнейших операций.

### Имя routed-сети
Автоматически созданная routed-сеть с подсетью `10.10.102.0/24`, используется для подключения ресурсов.

### Параметры Edge
Набор параметров, указанных пользователем при создании: тип услуги, ALB, segroup, virtualServicesCount и др.
Используются в операциях modify и для анализа состояния сервиса.

---

## 5. Дополнительная информация

- В рамках сервиса **один раз при создании задаётся гарантированная доля CPU/RAM vDC**. Изменить её невозможно — требуется пересоздание vDC.
- Удаление Edge недоступно при наличии зависимых ресурсов (vApp, VM, кластер Штурвал).
- При использовании ALB необходимо корректно указывать segroup, чтобы обеспечить корректное выделение пулов AVI.
- При выборе режима `groupvdc` следует учитывать распределение нагрузки между несколькими vDC.
- SNAT для всех ресурсов внутри Edge можно активировать через операцию modify (параметры выделения VIP и ipSpace).

diff --git a/docs/30_registry/resources/vc_nsxt_man.md b/docs/30_registry/resources/vc_nsxt_man.md deleted file mode 100644 index aa7b87d..0000000 --- a/docs/30_registry/resources/vc_nsxt_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_nsxt - -# Инструкция по развертыванию Сетевой шлюз периметра (Edge) через платформу

## 1. Общая информация

Сервис **Сетевой шлюз периметра (Edge)** предназначен для создания периметрового сетевого шлюза в рамках одного виртуального датацентра (vDC) или группы виртуальных датацентров (groupvDC).
При создании автоматически разворачивается routed-сеть с адресным пространством `10.10.102.0/24`.
Сервис обеспечивает сетевую изоляцию, маршрутизацию, а также может включать функциональность балансировщика нагрузки AVI (ALB) для последующей интеграции, включая поддержку кластеров Штурвал.

### Доступные операции

**create** — Создание нового Edge с привязкой к vDC или groupvDC и развёртыванием routed-сети.
**delete** — Удаление ранее созданного Edge. Недоступно при наличии зависимых услуг (vApp, VM, Кластер Штурвал).
**modify** — Изменение параметров и сетевых настроек существующего Edge.

---

## 2. Параметры развертывания

Ниже приведены параметры операции **create**.

### Тип родительской услуги
Определяет контекст размещения Edge.
Допустимые значения: `vdc`, `groupvdc`.
Использование:
- При выборе `vdc` обязателен параметр **UUID VDC**.
- При выборе `groupvdc` обязателен параметр **UUID Группы VDC**.

### UUID VDC
Идентификатор виртуального датацентра.
Необходимо предварительно создать vDC через услугу «Виртуальный датацентр (vDC)».
Указывается только при выборе родительского типа `vdc`.

### UUID Группы VDC
Идентификатор группы виртуальных датацентров.
Создаётся через услугу «Группа виртуальных датацентров (groupvDC)».
Используется при выборе родительского типа `groupvdc`.

### Включить ALB
Флаг активации AVI Load Balancer в Cloud Director.
Пример значения: `true`/`false`.
Нужен для развёртывания кластера Штурвал и возможности создания Virtual Services.

### Наименование segroup
Имя сервиса групп (segroup) на уровне ресурсной платформы.
Обязательно при включённом ALB.
Определяет группу, в которой будут выделяться пулы AVI для Virtual Services.

### virtualServicesCount
Количество резервируемых виртуальных сервисов (Virtual Services) на AVI.
Типичное значение: 1–10 в зависимости от нагрузки.

---

## 3. Рекомендованные характеристики

### Тестовое окружение (Test)

- Тип родительской услуги: `vdc`
- virtualServicesCount: 1–2
- ALB: выключен по умолчанию (включать только при необходимости тестирования Штурвала)
- segroup: задаётся только при включённом ALB
- VDC гарантии CPU/RAM: минимальные (поскольку изменить их после создания нельзя)

### Промышленное окружение (Production)

- Тип родительской услуги: `groupvdc` при работе с распределёнными нагрузками или `vdc` для локализованных проектов
- virtualServicesCount: 3–10, исходя из предполагаемого количества публикаций
- ALB: включён, если требуется высокая доступность сервисов или используется кластер Штурвал
- segroup: рекомендуется использовать выделенную группу под проект
- VDC гарантии CPU/RAM: повышенные, с учётом того, что изменить их после создания невозможно без пересоздания vDC

---

## 4. Выходные параметры

### Имя Edge
Уникальное название созданного сетевого шлюза, используется для ссылок и дальнейших операций.

### Имя routed-сети
Автоматически созданная routed-сеть с подсетью `10.10.102.0/24`, используется для подключения ресурсов.

### Параметры Edge
Набор параметров, указанных пользователем при создании: тип услуги, ALB, segroup, virtualServicesCount и др.
Используются в операциях modify и для анализа состояния сервиса.

---

## 5. Дополнительная информация

- В рамках сервиса **один раз при создании задаётся гарантированная доля CPU/RAM vDC**. Изменить её невозможно — требуется пересоздание vDC.
- Удаление Edge недоступно при наличии зависимых ресурсов (vApp, VM, кластер Штурвал).
- При использовании ALB необходимо корректно указывать segroup, чтобы обеспечить корректное выделение пулов AVI.
- При выборе режима `groupvdc` следует учитывать распределение нагрузки между несколькими vDC.
- SNAT для всех ресурсов внутри Edge можно активировать через операцию modify (параметры выделения VIP и ipSpace).

diff --git a/docs/30_registry/resources/vc_nsxt_ops.md b/docs/30_registry/resources/vc_nsxt_ops.md deleted file mode 100644 index 03af84f..0000000 --- a/docs/30_registry/resources/vc_nsxt_ops.md +++ /dev/null @@ -1,14 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_nsxt_params_create.md) -- `delete` — Невозможно удалить если routed-сеть в Edge связана с: - vApp - VM - Kubernetes-кластер Штурвал Запустить операцию возможно, но будет ошибка -- `modify` — Изменение кластера. Параметры: [Modify params](vc_nsxt_params_modify.md) -- `reconcile` diff --git a/docs/30_registry/resources/vc_nsxt_outputs.md b/docs/30_registry/resources/vc_nsxt_outputs.md deleted file mode 100644 index 32383a1..0000000 --- a/docs/30_registry/resources/vc_nsxt_outputs.md +++ /dev/null @@ -1,39 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / naeel_vc_nsxt / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["vdcUid"]` -- `state_params["vdcType"]` -- `state_params["ipSpaceName"]` -- `state_params["vdcGroupUid"]` -- `state_params["needEnableAVI"]` -- `state_params["virtualServicesCount"]` -- `state_params["needExternalAddressSNAT"]` - -### `state_out_flat` ключи - -- `state_out_flat["nsxName"]` -- `state_out_flat["vdcName"]` -- `state_out_flat["routedNet"]` diff --git a/docs/30_registry/resources/vc_nsxt_outputs_ops.md b/docs/30_registry/resources/vc_nsxt_outputs_ops.md deleted file mode 100644 index 76e9295..0000000 --- a/docs/30_registry/resources/vc_nsxt_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_outputs.md) | [Parameters](vc_nsxt_outputs_params.md) | [Operations](vc_nsxt_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_outputs_params.md b/docs/30_registry/resources/vc_nsxt_outputs_params.md deleted file mode 100644 index 76e9295..0000000 --- a/docs/30_registry/resources/vc_nsxt_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_outputs.md) | [Parameters](vc_nsxt_outputs_params.md) | [Operations](vc_nsxt_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_params.md b/docs/30_registry/resources/vc_nsxt_params.md deleted file mode 100644 index 2cf1cc1..0000000 --- a/docs/30_registry/resources/vc_nsxt_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Parameters - -- [Create params](vc_nsxt_params_create.md) -- [Modify params](vc_nsxt_params_modify.md) diff --git a/docs/30_registry/resources/vc_nsxt_params_create.md b/docs/30_registry/resources/vc_nsxt_params_create.md deleted file mode 100644 index 9f77ac0..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_create.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
8vdc_uidstringНеобходимо, если выбран тип подключаемой VDC: `vdc`ref_svc_id=21
622vdc_group_uidstringНеобходимо, если выбран тип подключаемой VDC: `groupvdc`ref_svc_id=29
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
340need_enable_avibooleanfalseПараметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указатьvalue_list=false, true
341virtual_services_countinteger1Во избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB`
minvalue=1; maxvalue=4
621vdc_typestringvdcПри выборе vdc обеспечивает сетевую доступность только в рамках этого vdc
При выборе groupvdc обеспечивает сетевую доступность между всеми vdc, которые включены в groupvdc
value_list=vdc, vdcGroup
diff --git a/docs/30_registry/resources/vc_nsxt_params_create_ops.md b/docs/30_registry/resources/vc_nsxt_params_create_ops.md deleted file mode 100644 index 27cb85d..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_params_create.md) | [Parameters](vc_nsxt_params_create_params.md) | [Operations](vc_nsxt_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_params_create_params.md b/docs/30_registry/resources/vc_nsxt_params_create_params.md deleted file mode 100644 index 27cb85d..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_params_create.md) | [Parameters](vc_nsxt_params_create_params.md) | [Operations](vc_nsxt_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_params_modify.md b/docs/30_registry/resources/vc_nsxt_params_modify.md deleted file mode 100644 index 0a1fc0e..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_modify.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -## Modify params - - - - - - - - -
IDCodeTypeDescriptionConstraints
368need_enable_avibooleanПараметры `Наименование segroup`, `Кол-во VS на AVI` необходимо также указатьvalue_list=false, true
369virtual_services_countintegerВо избежании коллапса пока выделяется до 4
Необходимо указывать, если включён параметр `Включить ALB`
minvalue=1; maxvalue=4
371need_external_address_snatbooleanПараметр `ip Space для VIP` станет обязательным, если указан `true`value_list=false, true
372ip_space_namestringНеобходимо указывать, если включён параметр `Выделить VIP для SNAT`
diff --git a/docs/30_registry/resources/vc_nsxt_params_modify_ops.md b/docs/30_registry/resources/vc_nsxt_params_modify_ops.md deleted file mode 100644 index 316b8c7..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_params_modify.md) | [Parameters](vc_nsxt_params_modify_params.md) | [Operations](vc_nsxt_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_params_modify_params.md b/docs/30_registry/resources/vc_nsxt_params_modify_params.md deleted file mode 100644 index 316b8c7..0000000 --- a/docs/30_registry/resources/vc_nsxt_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_nsxt - -Service ID: `22` - -Service Name: Сетевой шлюз периметра (Edge) - -[Manual](vc_nsxt.md) | [Create params](vc_nsxt_params_create.md) | [Modify params](vc_nsxt_params_modify.md) | [Output params](vc_nsxt_outputs.md) | [Operations](vc_nsxt_ops.md) | [Example](vc_nsxt_example.md) - -[Overview](vc_nsxt_params_modify.md) | [Parameters](vc_nsxt_params_modify_params.md) | [Operations](vc_nsxt_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_reconcile.md b/docs/30_registry/resources/vc_nsxt_reconcile.md deleted file mode 100644 index 6c0ebf7..0000000 --- a/docs/30_registry/resources/vc_nsxt_reconcile.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_vc_nsxt_reconcile - -Service: nubes_vc_nsxt - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -## Example - -```hcl -resource "nubes_vc_nsxt_reconcile" "example" { - vc_nsxt_id = nubes_vc_nsxt.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/vc_nsxt_reconcile_ops.md b/docs/30_registry/resources/vc_nsxt_reconcile_ops.md deleted file mode 100644 index dd44ddf..0000000 --- a/docs/30_registry/resources/vc_nsxt_reconcile_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_nsxt_reconcile - -Service: nubes_vc_nsxt - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_nsxt_reconcile_params.md b/docs/30_registry/resources/vc_nsxt_reconcile_params.md deleted file mode 100644 index dd44ddf..0000000 --- a/docs/30_registry/resources/vc_nsxt_reconcile_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_nsxt_reconcile - -Service: nubes_vc_nsxt - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) - -[Overview](vc_nsxt_reconcile.md) | [Parameters](vc_nsxt_reconcile_params.md) | [Operations](vc_nsxt_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_org.md b/docs/30_registry/resources/vc_org.md deleted file mode 100644 index e500201..0000000 --- a/docs/30_registry/resources/vc_org.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## MAN - -
-# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.
**modify** — Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).
**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.
**resume** — Разморозка организации, восстановление функций управления.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создана организация.
Пример значения: `ngcloud.ru`.

### Тип организации
Описание: тип создаваемой организации.
Варианты:
- `iaas` — организация с прямым доступом к облаку и авторизацией через Keycloak.
- `saas` — организация под управлением Nubes, без прямого доступа к облаку.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.

### Промышленное окружение
- Тип организации: `saas` (упрощённая модель использования).

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Url организации
Для быстрого доступа в тенант

### Статус организации
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация

- Для конфигурации внешних IP внутри организации необходимо предварительно создать:
-- хотя бы один **Виртуальный датацентр (VDC)** привязанный к этой организации;
-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к vdc выше.
- Удаление организации возможно только через 14 дней после перевода в состояние suspend.
- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок и иных объектов.
- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.
- Для iaas-организаций доступ осуществляется через Keycloak. -
diff --git a/docs/30_registry/resources/vc_org_example.md b/docs/30_registry/resources/vc_org_example.md deleted file mode 100644 index 14605c5..0000000 --- a/docs/30_registry/resources/vc_org_example.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Copy-ready manifest (`vc_org_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_org" "baza" { - resource_realm = "TODO" # Облако в котором будет развёрнут тенант - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - organization_type = "iaas" # Доступ к организации предоставляется только при выборе `iaas` -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_org.baza.state_params["имя_ключа"] -nubes_vc_org.baza.state_out["имя_ключа"] -nubes_vc_org.baza.state_params_flat["имя_ключа"] -nubes_vc_org.baza.state_out_flat["имя_ключа"] -nubes_vc_org.baza.vault_secrets["имя_ключа"] -nubes_vc_org.baza.vault_url -nubes_vc_org.baza.vault_user_path -nubes_vc_org.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_org_example_ops.md b/docs/30_registry/resources/vc_org_example_ops.md deleted file mode 100644 index b8a7b2a..0000000 --- a/docs/30_registry/resources/vc_org_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_example.md) | [Parameters](vc_org_example_params.md) | [Operations](vc_org_example_ops.md) diff --git a/docs/30_registry/resources/vc_org_example_params.md b/docs/30_registry/resources/vc_org_example_params.md deleted file mode 100644 index b8a7b2a..0000000 --- a/docs/30_registry/resources/vc_org_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_example.md) | [Parameters](vc_org_example_params.md) | [Operations](vc_org_example_ops.md) diff --git a/docs/30_registry/resources/vc_org_man.md b/docs/30_registry/resources/vc_org_man.md deleted file mode 100644 index bd356a1..0000000 --- a/docs/30_registry/resources/vc_org_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_org - -# Инструкция по развертыванию Организация в Cloud Director через платформу

## 1. Общая информация

Сервис **Организация в Cloud Director** предназначен для управления изолированными организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.

### Доступные операции

**create** — Создание новой организации с заданными характеристиками и типом доступа.
**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.
**modify** — Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).
**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.
**resume** — Разморозка организации, восстановление функций управления.

---

## 2. Параметры развертывания

Параметры входных данных операции **create**:

### Платформа для развертывания
Описание: платформа, на которой будет создана организация.
Пример значения: `ngcloud.ru`.

### Тип организации
Описание: тип создаваемой организации.
Варианты:
- `iaas` — организация с прямым доступом к облаку и авторизацией через Keycloak.
- `saas` — организация под управлением Nubes, без прямого доступа к облаку.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.

### Промышленное окружение
- Тип организации: `saas` (упрощённая модель использования).

---

## 4. Выходные параметры

Услуга предоставляет следующие выходные параметры (формируются в процессе операций):

### Url организации
Для быстрого доступа в тенант

### Статус организации
Отражает текущее состояние и параметры.

---

## 5. Дополнительная информация

- Для конфигурации внешних IP внутри организации необходимо предварительно создать:
-- хотя бы один **Виртуальный датацентр (VDC)** привязанный к этой организации;
-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к vdc выше.
- Удаление организации возможно только через 14 дней после перевода в состояние suspend.
- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок и иных объектов.
- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.
- Для iaas-организаций доступ осуществляется через Keycloak. diff --git a/docs/30_registry/resources/vc_org_ops.md b/docs/30_registry/resources/vc_org_ops.md deleted file mode 100644 index a0c2067..0000000 --- a/docs/30_registry/resources/vc_org_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_org_params_create.md) -- `delete` — Удалить возможно только через 14 дней после выполнения операции `suspend` **ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого тенанта** Если существуют инстансы VDC, Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов -- `modify` — Изменение кластера. Параметры: [Modify params](vc_org_params_modify.md) -- `reconcile` -- `resume` -- `suspend` — Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри тенанта diff --git a/docs/30_registry/resources/vc_org_outputs.md b/docs/30_registry/resources/vc_org_outputs.md deleted file mode 100644 index ad835d5..0000000 --- a/docs/30_registry/resources/vc_org_outputs.md +++ /dev/null @@ -1,39 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / NaeelOrg / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["vIPConfigure"]` -- `state_params["resourceRealm"]` -- `state_params["organizationType"]` - -### `state_out_flat` ключи - -- `state_out_flat["urlConnect"]` - -### `vault_secrets` ключи - -- `vault_secrets["url"]` -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/vc_org_outputs_ops.md b/docs/30_registry/resources/vc_org_outputs_ops.md deleted file mode 100644 index 8932c4b..0000000 --- a/docs/30_registry/resources/vc_org_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_outputs.md) | [Parameters](vc_org_outputs_params.md) | [Operations](vc_org_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_org_outputs_params.md b/docs/30_registry/resources/vc_org_outputs_params.md deleted file mode 100644 index 8932c4b..0000000 --- a/docs/30_registry/resources/vc_org_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_outputs.md) | [Parameters](vc_org_outputs_params.md) | [Operations](vc_org_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_org_params.md b/docs/30_registry/resources/vc_org_params.md deleted file mode 100644 index e187b07..0000000 --- a/docs/30_registry/resources/vc_org_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Parameters - -- [Create params](vc_org_params_create.md) -- [Modify params](vc_org_params_modify.md) diff --git a/docs/30_registry/resources/vc_org_params_create.md b/docs/30_registry/resources/vc_org_params_create.md deleted file mode 100644 index 28f12f0..0000000 --- a/docs/30_registry/resources/vc_org_params_create.md +++ /dev/null @@ -1,36 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
418resource_realmstringВыбрать платформу из списка

**Если список не отображается**
обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы
func=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - -
IDCodeTypeDefaultDescriptionConstraints
556organization_typestringiaasДоступ к организации предоставляется только при выборе `iaas`value_list=iaas, saas
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_org_params_create_ops.md b/docs/30_registry/resources/vc_org_params_create_ops.md deleted file mode 100644 index bb2d5b6..0000000 --- a/docs/30_registry/resources/vc_org_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_params_create.md) | [Parameters](vc_org_params_create_params.md) | [Operations](vc_org_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_org_params_create_params.md b/docs/30_registry/resources/vc_org_params_create_params.md deleted file mode 100644 index bb2d5b6..0000000 --- a/docs/30_registry/resources/vc_org_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_params_create.md) | [Parameters](vc_org_params_create_params.md) | [Operations](vc_org_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_org_params_modify.md b/docs/30_registry/resources/vc_org_params_modify.md deleted file mode 100644 index 4142f72..0000000 --- a/docs/30_registry/resources/vc_org_params_modify.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -## Modify params - - - - - -
IDCodeTypeDescriptionConstraints
662v_ipconfigurearray-map-fixed
diff --git a/docs/30_registry/resources/vc_org_params_modify_ops.md b/docs/30_registry/resources/vc_org_params_modify_ops.md deleted file mode 100644 index 9824143..0000000 --- a/docs/30_registry/resources/vc_org_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_params_modify.md) | [Parameters](vc_org_params_modify_params.md) | [Operations](vc_org_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_org_params_modify_params.md b/docs/30_registry/resources/vc_org_params_modify_params.md deleted file mode 100644 index 9824143..0000000 --- a/docs/30_registry/resources/vc_org_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org - -Service ID: `19` - -Service Name: Организация в Cloud Director - -[Manual](vc_org.md) | [Create params](vc_org_params_create.md) | [Modify params](vc_org_params_modify.md) | [Output params](vc_org_outputs.md) | [Operations](vc_org_ops.md) | [Example](vc_org_example.md) - -[Overview](vc_org_params_modify.md) | [Parameters](vc_org_params_modify_params.md) | [Operations](vc_org_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_org_reconcile.md b/docs/30_registry/resources/vc_org_reconcile.md deleted file mode 100644 index bf245a7..0000000 --- a/docs/30_registry/resources/vc_org_reconcile.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_vc_org_reconcile - -Service: nubes_vc_org - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -## Example - -```hcl -resource "nubes_vc_org_reconcile" "example" { - vc_org_id = nubes_vc_org.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/vc_org_reconcile_ops.md b/docs/30_registry/resources/vc_org_reconcile_ops.md deleted file mode 100644 index bba437d..0000000 --- a/docs/30_registry/resources/vc_org_reconcile_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_org_reconcile - -Service: nubes_vc_org - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_org_reconcile_params.md b/docs/30_registry/resources/vc_org_reconcile_params.md deleted file mode 100644 index bba437d..0000000 --- a/docs/30_registry/resources/vc_org_reconcile_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_org_reconcile - -Service: nubes_vc_org - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) - -[Overview](vc_org_reconcile.md) | [Parameters](vc_org_reconcile_params.md) | [Operations](vc_org_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas.md b/docs/30_registry/resources/vc_org_saas.md deleted file mode 100644 index 95ae27c..0000000 --- a/docs/30_registry/resources/vc_org_saas.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## MAN - -
-Верхнеуровневая сущность создаваемая для Заказчика.
Внутри Организация вы можете создать: Виртуальные датацентры, Каталоги. -
diff --git a/docs/30_registry/resources/vc_org_saas_example.md b/docs/30_registry/resources/vc_org_saas_example.md deleted file mode 100644 index 8184286..0000000 --- a/docs/30_registry/resources/vc_org_saas_example.md +++ /dev/null @@ -1,43 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Copy-ready manifest (`vc_org_saas_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_org_saas" "baza" { - resource_realm = "TODO" # Платформа для развертывания -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_org_saas.baza.state_params["имя_ключа"] -nubes_vc_org_saas.baza.state_out["имя_ключа"] -nubes_vc_org_saas.baza.state_params_flat["имя_ключа"] -nubes_vc_org_saas.baza.state_out_flat["имя_ключа"] -nubes_vc_org_saas.baza.vault_secrets["имя_ключа"] -nubes_vc_org_saas.baza.vault_url -nubes_vc_org_saas.baza.vault_user_path -nubes_vc_org_saas.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_org_saas_example_ops.md b/docs/30_registry/resources/vc_org_saas_example_ops.md deleted file mode 100644 index ac1491d..0000000 --- a/docs/30_registry/resources/vc_org_saas_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_example.md) | [Parameters](vc_org_saas_example_params.md) | [Operations](vc_org_saas_example_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_example_params.md b/docs/30_registry/resources/vc_org_saas_example_params.md deleted file mode 100644 index ac1491d..0000000 --- a/docs/30_registry/resources/vc_org_saas_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_example.md) | [Parameters](vc_org_saas_example_params.md) | [Operations](vc_org_saas_example_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_man.md b/docs/30_registry/resources/vc_org_saas_man.md deleted file mode 100644 index d52cd21..0000000 --- a/docs/30_registry/resources/vc_org_saas_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_org_saas - -Верхнеуровневая сущность создаваемая для Заказчика.
Внутри Организация вы можете создать: Виртуальные датацентры, Каталоги. diff --git a/docs/30_registry/resources/vc_org_saas_ops.md b/docs/30_registry/resources/vc_org_saas_ops.md deleted file mode 100644 index bcc4618..0000000 --- a/docs/30_registry/resources/vc_org_saas_ops.md +++ /dev/null @@ -1,14 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_org_saas_params_create.md) -- `delete` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/vc_org_saas_outputs.md b/docs/30_registry/resources/vc_org_saas_outputs.md deleted file mode 100644 index 15052c9..0000000 --- a/docs/30_registry/resources/vc_org_saas_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vc_org_saas_outputs_ops.md b/docs/30_registry/resources/vc_org_saas_outputs_ops.md deleted file mode 100644 index 8d53946..0000000 --- a/docs/30_registry/resources/vc_org_saas_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_outputs.md) | [Parameters](vc_org_saas_outputs_params.md) | [Operations](vc_org_saas_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_outputs_params.md b/docs/30_registry/resources/vc_org_saas_outputs_params.md deleted file mode 100644 index 8d53946..0000000 --- a/docs/30_registry/resources/vc_org_saas_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_outputs.md) | [Parameters](vc_org_saas_outputs_params.md) | [Operations](vc_org_saas_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_params.md b/docs/30_registry/resources/vc_org_saas_params.md deleted file mode 100644 index a9c08f3..0000000 --- a/docs/30_registry/resources/vc_org_saas_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Parameters - -- [Create params](vc_org_saas_params_create.md) -- [Modify params](vc_org_saas_params_modify.md) diff --git a/docs/30_registry/resources/vc_org_saas_params_create.md b/docs/30_registry/resources/vc_org_saas_params_create.md deleted file mode 100644 index d73866d..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_create.md +++ /dev/null @@ -1,32 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
185resource_realmstringНаименование ресурсной платформыfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. - -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_org_saas_params_create_ops.md b/docs/30_registry/resources/vc_org_saas_params_create_ops.md deleted file mode 100644 index 74dc370..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_params_create.md) | [Parameters](vc_org_saas_params_create_params.md) | [Operations](vc_org_saas_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_params_create_params.md b/docs/30_registry/resources/vc_org_saas_params_create_params.md deleted file mode 100644 index 74dc370..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_params_create.md) | [Parameters](vc_org_saas_params_create_params.md) | [Operations](vc_org_saas_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_params_modify.md b/docs/30_registry/resources/vc_org_saas_params_modify.md deleted file mode 100644 index ad45c99..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/vc_org_saas_params_modify_ops.md b/docs/30_registry/resources/vc_org_saas_params_modify_ops.md deleted file mode 100644 index 9f6afbe..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_params_modify.md) | [Parameters](vc_org_saas_params_modify_params.md) | [Operations](vc_org_saas_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_org_saas_params_modify_params.md b/docs/30_registry/resources/vc_org_saas_params_modify_params.md deleted file mode 100644 index 9f6afbe..0000000 --- a/docs/30_registry/resources/vc_org_saas_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_org_saas - -Service ID: `20` - -Service Name: Организация [DEPRECATED] - -[Manual](vc_org_saas.md) | [Create params](vc_org_saas_params_create.md) | [Modify params](vc_org_saas_params_modify.md) | [Output params](vc_org_saas_outputs.md) | [Operations](vc_org_saas_ops.md) | [Example](vc_org_saas_example.md) - -[Overview](vc_org_saas_params_modify.md) | [Parameters](vc_org_saas_params_modify_params.md) | [Operations](vc_org_saas_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vdc.md b/docs/30_registry/resources/vc_vdc.md deleted file mode 100644 index 2d8fa57..0000000 --- a/docs/30_registry/resources/vc_vdc.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## MAN - -
-# Инструкция по развертыванию Виртуальный датацентр (vDC) через платформу

## 1. Общая информация

**Виртуальный датацентр (vDC)** — это логическая изолированная среда в VMware Cloud Director, предназначенная для размещения и управления виртуальными машинами, сетевой инфраструктурой и ресурсами хранения. Сервис обеспечивает выделение вычислительных ресурсов под конкретную организацию и предоставляет гибкие параметры масштабирования, контроля потребления и разделения ресурсов.

### Доступные операции

**create** — Создание виртуального датацентра (vDC) с заданными параметрами CPU, RAM, Storage и сетевой конфигурацией.
**delete** — Удаление vDC. Требуется предварительный перевод vDC в состояние *suspend*. Полное удаление возможно через 14 дней.
**modify** — Внесение изменений в параметры ресурсов (CPU/RAM/Storage), выделенных для vDC.
**suspend** — Заморозка vDC. Новые ресурсы или изменения внутри vDC становятся невозможными, работа ВМ не останавливается.
**resume** — Разморозка vDC. Восстановление возможности управления сущностями внутри vDC.

---

## 2. Параметры развертывания

Ниже перечислены входные параметры операции **create**.

### UUID Организации
Уникальный идентификатор организации в Cloud Director. Перед созданием vDC требуется предварительное создание услугу `Организация в Cloud Director`.

### Provider VDC в Cloud Director
Свойство ресурсной платформы, определяющее, какой пул физических ресурсов будет использоваться.

### Network Pool в Cloud Director
Определяет возможности сетевой конфигурации, включая создание Edge Gateway и выход во внешние сети.

### Гарантированная доля ЯДЕР
Гарантированный процент вычислительных ресурсов (CPU), закрепленный за vDC. Значение устанавливается разово при создании.

### Гарантированная доля ОЗУ
Гарантированный процент оперативной памяти, закрепленный за vDC. Также задаётся один раз при создании.

### Сколько аллоцировать на VDC ЯДЕР
Количество виртуальных ядер, выделяемых в рамках vDC.

### Сколько аллоцировать на VDC ОЗУ
Количество оперативной памяти в GB, выделяемой для vDC.

### Конфигурация Storage
Набор дисковых политик и их объёмов, выделяемых для vDC. Указывается имя политики и требуемый размер (GB).

---

## 3. Рекомендованные характеристики

### Тестовое окружение

- Количество ядер CPU: 10–20
- Аллоцируемая RAM: 16–64 GB
- Гарантированная доля CPU: 20%
- Гарантированная доля RAM: 20%
- Storage:
- Политика `SATA`
- Объём: 100–300 GB

### Промышленное окружение

- Количество ядер CPU: 16–128
- Аллоцируемая RAM: 64–512 GB
- Гарантированная доля CPU: 50%
- Гарантированная доля RAM: 50%
- Storage:
- Политики уровня `SSD`
- Объём: 1–10 TB, выбор несколько политик под разные нагрузки

---

## 4. Выходные параметры

Выходные параметры формируются операцией **create** (и используются другими операциями):

### Имя vDC
Уникальный идентификатор созданного виртуального датацентра. Используется в дальнейших операциях (modify, suspend, delete).

### Параметры выделенных ресурсов
Подтверждение итогового объёма CPU/RAM/Storage, выделенных vDC. Используются для учёта и контроля потребления.

---

## 5. Дополнительная информация

- Перед созданием vDC необходимо обеспечить наличие корректно созданной организации и доступных пула ресурсов ресурсной платформы.
- Гарантированная доля CPU и RAM задаётся **однократно при создании vDC**. После развертывания изменить эти значения невозможно; для изменения необходимо пересоздать vDC.
- Удаление vDC возможно только через **14 дней после перевода в состояние *suspend***. Удаление очищает все связанные сущности (ВМ, сети, каталоги), поэтому необходимо убедиться, что данные перенесены.
- Платформа Cloud Director использует концепцию изолированных организационных ресурсов, поэтому корректная настройка Provider VDC и Network Pool является обязательной при создании vDC.
- При изменении параметров (modify) изменяются только показатели CPU, RAM и Storage. Сетевые параметры и гарантированные доли остаются неизменными.
-
diff --git a/docs/30_registry/resources/vc_vdc_example.md b/docs/30_registry/resources/vc_vdc_example.md deleted file mode 100644 index 96e7852..0000000 --- a/docs/30_registry/resources/vc_vdc_example.md +++ /dev/null @@ -1,52 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Copy-ready manifest (`vc_vdc_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_vdc" "baza" { - organization_uid = "TODO" # Для создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director` - provider_vdc = "TODO" # Приписка `2.8` - Скорость vCPU - 2800MHz И так далее... - storage_config = "TODO" # Первая политика в списке указывается как "По умолчанию" - network_provider = "TODO" - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - cpu_guaranteed = 20 # % резервирования - mem_guaranteed = 20 # % резервирования - cpu_allocated = 10 # шт - mem_allocated = 20 # gb -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_vdc.baza.state_params["имя_ключа"] -nubes_vc_vdc.baza.state_out["имя_ключа"] -nubes_vc_vdc.baza.state_params_flat["имя_ключа"] -nubes_vc_vdc.baza.state_out_flat["имя_ключа"] -nubes_vc_vdc.baza.vault_secrets["имя_ключа"] -nubes_vc_vdc.baza.vault_url -nubes_vc_vdc.baza.vault_user_path -nubes_vc_vdc.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_vdc_example_ops.md b/docs/30_registry/resources/vc_vdc_example_ops.md deleted file mode 100644 index 25d2a07..0000000 --- a/docs/30_registry/resources/vc_vdc_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_example.md) | [Parameters](vc_vdc_example_params.md) | [Operations](vc_vdc_example_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_example_params.md b/docs/30_registry/resources/vc_vdc_example_params.md deleted file mode 100644 index 25d2a07..0000000 --- a/docs/30_registry/resources/vc_vdc_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_example.md) | [Parameters](vc_vdc_example_params.md) | [Operations](vc_vdc_example_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group.md b/docs/30_registry/resources/vc_vdc_group.md deleted file mode 100644 index 1ff3cd6..0000000 --- a/docs/30_registry/resources/vc_vdc_group.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## MAN - -
-# Инструкция по развертыванию Группа виртуальных датацентров (groupvDC) через платформу

## 1. Общая информация

Сервис **Группа виртуальных датацентров (groupvDC)** предназначен для логического объединения нескольких виртуальных датацентров (vDC) в единую группу. Это позволяет растягивать SDN между разными vDC и централизованно управлять сетевой связностью. Управление инфраструктурой осуществляется через Cloud Director.
Сервис применяется в случаях, когда требуется обеспечить единое сетевое пространство для распределенных виртуальных датацентров.

### Доступные операции

**create** — Создание новой группы виртуальных датацентров.
**delete** — Удаление существующей группы vDC.
**add_vdc** — Добавление дополнительного виртуального датацентра в группу.
**remove_vdc** — Удаление ранее добавленного виртуального датацентра из группы.

---

## 2. Параметры развертывания

Параметры операции **create**:

### UUID VDC
Идентификатор виртуального датацентра, который будет являться первичным в группе.
Описание: требуется предварительно создать виртуальный датацентр с помощью услуги `Виртуальный датацентр (vDC)`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Для тестового окружения создавать группу VDC нет необходимости, так как это создаёт дополнительный слой абстракции в Cloud Director

### Промышленное окружение
- Для промышленного окружения, если в тенанте существуют разные VDC, создание groupvdc позволит снизить сетевые издержки (за счёт общей сети)

---

## 4. Выходные параметры

### Параметры groupvdc
Набор параметров, указанных пользователем при создании

---

## 5. Дополнительная информация
- Группа vDC используется для растягивания SDN между несколькими виртуальными датацентрами. Управление всеми сетевыми элементами внутри группы выполняется Cloud Director.
- Удалить первичный vDC (тот, что был указан при операции **create**) невозможно. Для его удаления необходимо удалить всю группу и создать новую.
- Перед добавлением любого vDC в группу он должен быть предварительно развернут через сервис `Виртуальный датацентр (vDC)`.
- Сети создаются не в этой услуге, а в услуге `Сетевой шлюз периметра (Edge)`. В ней необходимо будет выбрать тип `groupvdc` -
diff --git a/docs/30_registry/resources/vc_vdc_group_add_vdc.md b/docs/30_registry/resources/vc_vdc_group_add_vdc.md deleted file mode 100644 index f2e4725..0000000 --- a/docs/30_registry/resources/vc_vdc_group_add_vdc.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vc_vdc_group_add_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -## Example - -```hcl -resource "nubes_vc_vdc_group_add_vdc" "example" { - vc_vdc_group_id = nubes_vc_vdc_group.example.id - run_id = "change-me" - vdc_uid = "TODO" -} -``` diff --git a/docs/30_registry/resources/vc_vdc_group_add_vdc_ops.md b/docs/30_registry/resources/vc_vdc_group_add_vdc_ops.md deleted file mode 100644 index 4af2d89..0000000 --- a/docs/30_registry/resources/vc_vdc_group_add_vdc_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_add_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_add_vdc_params.md b/docs/30_registry/resources/vc_vdc_group_add_vdc_params.md deleted file mode 100644 index 4af2d89..0000000 --- a/docs/30_registry/resources/vc_vdc_group_add_vdc_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_add_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) - -[Overview](vc_vdc_group_add_vdc.md) | [Parameters](vc_vdc_group_add_vdc_params.md) | [Operations](vc_vdc_group_add_vdc_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_example.md b/docs/30_registry/resources/vc_vdc_group_example.md deleted file mode 100644 index ee8efe3..0000000 --- a/docs/30_registry/resources/vc_vdc_group_example.md +++ /dev/null @@ -1,43 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Copy-ready manifest (`vc_vdc_group_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_vdc_group" "baza" { - vdc_uid = "TODO" -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_vdc_group.baza.state_params["имя_ключа"] -nubes_vc_vdc_group.baza.state_out["имя_ключа"] -nubes_vc_vdc_group.baza.state_params_flat["имя_ключа"] -nubes_vc_vdc_group.baza.state_out_flat["имя_ключа"] -nubes_vc_vdc_group.baza.vault_secrets["имя_ключа"] -nubes_vc_vdc_group.baza.vault_url -nubes_vc_vdc_group.baza.vault_user_path -nubes_vc_vdc_group.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_vdc_group_example_ops.md b/docs/30_registry/resources/vc_vdc_group_example_ops.md deleted file mode 100644 index f4360c4..0000000 --- a/docs/30_registry/resources/vc_vdc_group_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_example.md) | [Parameters](vc_vdc_group_example_params.md) | [Operations](vc_vdc_group_example_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_example_params.md b/docs/30_registry/resources/vc_vdc_group_example_params.md deleted file mode 100644 index f4360c4..0000000 --- a/docs/30_registry/resources/vc_vdc_group_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_example.md) | [Parameters](vc_vdc_group_example_params.md) | [Operations](vc_vdc_group_example_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_man.md b/docs/30_registry/resources/vc_vdc_group_man.md deleted file mode 100644 index 1c22520..0000000 --- a/docs/30_registry/resources/vc_vdc_group_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_vdc_group - -# Инструкция по развертыванию Группа виртуальных датацентров (groupvDC) через платформу

## 1. Общая информация

Сервис **Группа виртуальных датацентров (groupvDC)** предназначен для логического объединения нескольких виртуальных датацентров (vDC) в единую группу. Это позволяет растягивать SDN между разными vDC и централизованно управлять сетевой связностью. Управление инфраструктурой осуществляется через Cloud Director.
Сервис применяется в случаях, когда требуется обеспечить единое сетевое пространство для распределенных виртуальных датацентров.

### Доступные операции

**create** — Создание новой группы виртуальных датацентров.
**delete** — Удаление существующей группы vDC.
**add_vdc** — Добавление дополнительного виртуального датацентра в группу.
**remove_vdc** — Удаление ранее добавленного виртуального датацентра из группы.

---

## 2. Параметры развертывания

Параметры операции **create**:

### UUID VDC
Идентификатор виртуального датацентра, который будет являться первичным в группе.
Описание: требуется предварительно создать виртуальный датацентр с помощью услуги `Виртуальный датацентр (vDC)`.

---

## 3. Рекомендованные характеристики

### Тестовое окружение
- Для тестового окружения создавать группу VDC нет необходимости, так как это создаёт дополнительный слой абстракции в Cloud Director

### Промышленное окружение
- Для промышленного окружения, если в тенанте существуют разные VDC, создание groupvdc позволит снизить сетевые издержки (за счёт общей сети)

---

## 4. Выходные параметры

### Параметры groupvdc
Набор параметров, указанных пользователем при создании

---

## 5. Дополнительная информация
- Группа vDC используется для растягивания SDN между несколькими виртуальными датацентрами. Управление всеми сетевыми элементами внутри группы выполняется Cloud Director.
- Удалить первичный vDC (тот, что был указан при операции **create**) невозможно. Для его удаления необходимо удалить всю группу и создать новую.
- Перед добавлением любого vDC в группу он должен быть предварительно развернут через сервис `Виртуальный датацентр (vDC)`.
- Сети создаются не в этой услуге, а в услуге `Сетевой шлюз периметра (Edge)`. В ней необходимо будет выбрать тип `groupvdc` diff --git a/docs/30_registry/resources/vc_vdc_group_ops.md b/docs/30_registry/resources/vc_vdc_group_ops.md deleted file mode 100644 index 9552c15..0000000 --- a/docs/30_registry/resources/vc_vdc_group_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Operations - -- `add_vdc` — **Не нужно** выбирать UUID VDC, который уже был добавлен в группу -- `create` — Создание кластера. Параметры: [Create params](vc_vdc_group_params_create.md) -- `delete` -- `reconcile` -- `remove_vdc` diff --git a/docs/30_registry/resources/vc_vdc_group_outputs.md b/docs/30_registry/resources/vc_vdc_group_outputs.md deleted file mode 100644 index 5714cde..0000000 --- a/docs/30_registry/resources/vc_vdc_group_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vc_vdc_group_outputs_ops.md b/docs/30_registry/resources/vc_vdc_group_outputs_ops.md deleted file mode 100644 index 237c001..0000000 --- a/docs/30_registry/resources/vc_vdc_group_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_outputs.md) | [Parameters](vc_vdc_group_outputs_params.md) | [Operations](vc_vdc_group_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_outputs_params.md b/docs/30_registry/resources/vc_vdc_group_outputs_params.md deleted file mode 100644 index 237c001..0000000 --- a/docs/30_registry/resources/vc_vdc_group_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_outputs.md) | [Parameters](vc_vdc_group_outputs_params.md) | [Operations](vc_vdc_group_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_params.md b/docs/30_registry/resources/vc_vdc_group_params.md deleted file mode 100644 index d292ab9..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Parameters - -- [Create params](vc_vdc_group_params_create.md) -- [Modify params](vc_vdc_group_params_modify.md) diff --git a/docs/30_registry/resources/vc_vdc_group_params_create.md b/docs/30_registry/resources/vc_vdc_group_params_create.md deleted file mode 100644 index 624e982..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_create.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - -
IDCodeTypeDescriptionConstraints
618vdc_uiduuidref_svc_id=21
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** -None. diff --git a/docs/30_registry/resources/vc_vdc_group_params_create_ops.md b/docs/30_registry/resources/vc_vdc_group_params_create_ops.md deleted file mode 100644 index 55caa4d..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_params_create.md) | [Parameters](vc_vdc_group_params_create_params.md) | [Operations](vc_vdc_group_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_params_create_params.md b/docs/30_registry/resources/vc_vdc_group_params_create_params.md deleted file mode 100644 index 55caa4d..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_params_create.md) | [Parameters](vc_vdc_group_params_create_params.md) | [Operations](vc_vdc_group_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_params_modify.md b/docs/30_registry/resources/vc_vdc_group_params_modify.md deleted file mode 100644 index 721de57..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/vc_vdc_group_params_modify_ops.md b/docs/30_registry/resources/vc_vdc_group_params_modify_ops.md deleted file mode 100644 index b2aa996..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_params_modify.md) | [Parameters](vc_vdc_group_params_modify_params.md) | [Operations](vc_vdc_group_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_params_modify_params.md b/docs/30_registry/resources/vc_vdc_group_params_modify_params.md deleted file mode 100644 index b2aa996..0000000 --- a/docs/30_registry/resources/vc_vdc_group_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc_group - -Service ID: `29` - -Service Name: Группа датацентров - -[Manual](vc_vdc_group.md) | [Create params](vc_vdc_group_params_create.md) | [Modify params](vc_vdc_group_params_modify.md) | [Output params](vc_vdc_group_outputs.md) | [Operations](vc_vdc_group_ops.md) | [Example](vc_vdc_group_example.md) - -[Overview](vc_vdc_group_params_modify.md) | [Parameters](vc_vdc_group_params_modify_params.md) | [Operations](vc_vdc_group_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_reconcile.md b/docs/30_registry/resources/vc_vdc_group_reconcile.md deleted file mode 100644 index 8cb4e8c..0000000 --- a/docs/30_registry/resources/vc_vdc_group_reconcile.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_vc_vdc_group_reconcile - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -## Example - -```hcl -resource "nubes_vc_vdc_group_reconcile" "example" { - vc_vdc_group_id = nubes_vc_vdc_group.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/vc_vdc_group_reconcile_ops.md b/docs/30_registry/resources/vc_vdc_group_reconcile_ops.md deleted file mode 100644 index cdc0e72..0000000 --- a/docs/30_registry/resources/vc_vdc_group_reconcile_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_reconcile - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_reconcile_params.md b/docs/30_registry/resources/vc_vdc_group_reconcile_params.md deleted file mode 100644 index cdc0e72..0000000 --- a/docs/30_registry/resources/vc_vdc_group_reconcile_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_reconcile - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) - -[Overview](vc_vdc_group_reconcile.md) | [Parameters](vc_vdc_group_reconcile_params.md) | [Operations](vc_vdc_group_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_remove_vdc.md b/docs/30_registry/resources/vc_vdc_group_remove_vdc.md deleted file mode 100644 index 98b709e..0000000 --- a/docs/30_registry/resources/vc_vdc_group_remove_vdc.md +++ /dev/null @@ -1,27 +0,0 @@ -# Resource nubes_vc_vdc_group_remove_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -## Example - -```hcl -resource "nubes_vc_vdc_group_remove_vdc" "example" { - vc_vdc_group_id = nubes_vc_vdc_group.example.id - run_id = "change-me" - vdc_name = "TODO" -} -``` diff --git a/docs/30_registry/resources/vc_vdc_group_remove_vdc_ops.md b/docs/30_registry/resources/vc_vdc_group_remove_vdc_ops.md deleted file mode 100644 index 4928d9b..0000000 --- a/docs/30_registry/resources/vc_vdc_group_remove_vdc_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_remove_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_group_remove_vdc_params.md b/docs/30_registry/resources/vc_vdc_group_remove_vdc_params.md deleted file mode 100644 index 4928d9b..0000000 --- a/docs/30_registry/resources/vc_vdc_group_remove_vdc_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_group_remove_vdc - -Service: nubes_vc_vdc_group - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) - -[Overview](vc_vdc_group_remove_vdc.md) | [Parameters](vc_vdc_group_remove_vdc_params.md) | [Operations](vc_vdc_group_remove_vdc_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_instruction.md b/docs/30_registry/resources/vc_vdc_instruction.md deleted file mode 100644 index e7ec17d..0000000 --- a/docs/30_registry/resources/vc_vdc_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vc_vdc - -# Инструкция по развертыванию Виртуальный датацентр (vDC) через платформу

## 1. Общая информация

**Виртуальный датацентр (vDC)** — это логическая изолированная среда в VMware Cloud Director, предназначенная для размещения и управления виртуальными машинами, сетевой инфраструктурой и ресурсами хранения. Сервис обеспечивает выделение вычислительных ресурсов под конкретную организацию и предоставляет гибкие параметры масштабирования, контроля потребления и разделения ресурсов.

### Доступные операции

**create** — Создание виртуального датацентра (vDC) с заданными параметрами CPU, RAM, Storage и сетевой конфигурацией.
**delete** — Удаление vDC. Требуется предварительный перевод vDC в состояние *suspend*. Полное удаление возможно через 14 дней.
**modify** — Внесение изменений в параметры ресурсов (CPU/RAM/Storage), выделенных для vDC.
**suspend** — Заморозка vDC. Новые ресурсы или изменения внутри vDC становятся невозможными, работа ВМ не останавливается.
**resume** — Разморозка vDC. Восстановление возможности управления сущностями внутри vDC.

---

## 2. Параметры развертывания

Ниже перечислены входные параметры операции **create**.

### UUID Организации
Уникальный идентификатор организации в Cloud Director. Перед созданием vDC требуется предварительное создание услугу `Организация в Cloud Director`.

### Provider VDC в Cloud Director
Свойство ресурсной платформы, определяющее, какой пул физических ресурсов будет использоваться.

### Network Pool в Cloud Director
Определяет возможности сетевой конфигурации, включая создание Edge Gateway и выход во внешние сети.

### Гарантированная доля ЯДЕР
Гарантированный процент вычислительных ресурсов (CPU), закрепленный за vDC. Значение устанавливается разово при создании.

### Гарантированная доля ОЗУ
Гарантированный процент оперативной памяти, закрепленный за vDC. Также задаётся один раз при создании.

### Сколько аллоцировать на VDC ЯДЕР
Количество виртуальных ядер, выделяемых в рамках vDC.

### Сколько аллоцировать на VDC ОЗУ
Количество оперативной памяти в GB, выделяемой для vDC.

### Конфигурация Storage
Набор дисковых политик и их объёмов, выделяемых для vDC. Указывается имя политики и требуемый размер (GB).

---

## 3. Рекомендованные характеристики

### Тестовое окружение

- Количество ядер CPU: 10–20
- Аллоцируемая RAM: 16–64 GB
- Гарантированная доля CPU: 20%
- Гарантированная доля RAM: 20%
- Storage:
- Политика `SATA`
- Объём: 100–300 GB

### Промышленное окружение

- Количество ядер CPU: 16–128
- Аллоцируемая RAM: 64–512 GB
- Гарантированная доля CPU: 50%
- Гарантированная доля RAM: 50%
- Storage:
- Политики уровня `SSD`
- Объём: 1–10 TB, выбор несколько политик под разные нагрузки

---

## 4. Выходные параметры

Выходные параметры формируются операцией **create** (и используются другими операциями):

### Имя vDC
Уникальный идентификатор созданного виртуального датацентра. Используется в дальнейших операциях (modify, suspend, delete).

### Параметры выделенных ресурсов
Подтверждение итогового объёма CPU/RAM/Storage, выделенных vDC. Используются для учёта и контроля потребления.

---

## 5. Дополнительная информация

- Перед созданием vDC необходимо обеспечить наличие корректно созданной организации и доступных пула ресурсов ресурсной платформы.
- Гарантированная доля CPU и RAM задаётся **однократно при создании vDC**. После развертывания изменить эти значения невозможно; для изменения необходимо пересоздать vDC.
- Удаление vDC возможно только через **14 дней после перевода в состояние *suspend***. Удаление очищает все связанные сущности (ВМ, сети, каталоги), поэтому необходимо убедиться, что данные перенесены.
- Платформа Cloud Director использует концепцию изолированных организационных ресурсов, поэтому корректная настройка Provider VDC и Network Pool является обязательной при создании vDC.
- При изменении параметров (modify) изменяются только показатели CPU, RAM и Storage. Сетевые параметры и гарантированные доли остаются неизменными.
diff --git a/docs/30_registry/resources/vc_vdc_man.md b/docs/30_registry/resources/vc_vdc_man.md deleted file mode 100644 index 2c5db99..0000000 --- a/docs/30_registry/resources/vc_vdc_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_vdc - -# Инструкция по развертыванию Виртуальный датацентр (vDC) через платформу

## 1. Общая информация

**Виртуальный датацентр (vDC)** — это логическая изолированная среда в VMware Cloud Director, предназначенная для размещения и управления виртуальными машинами, сетевой инфраструктурой и ресурсами хранения. Сервис обеспечивает выделение вычислительных ресурсов под конкретную организацию и предоставляет гибкие параметры масштабирования, контроля потребления и разделения ресурсов.

### Доступные операции

**create** — Создание виртуального датацентра (vDC) с заданными параметрами CPU, RAM, Storage и сетевой конфигурацией.
**delete** — Удаление vDC. Требуется предварительный перевод vDC в состояние *suspend*. Полное удаление возможно через 14 дней.
**modify** — Внесение изменений в параметры ресурсов (CPU/RAM/Storage), выделенных для vDC.
**suspend** — Заморозка vDC. Новые ресурсы или изменения внутри vDC становятся невозможными, работа ВМ не останавливается.
**resume** — Разморозка vDC. Восстановление возможности управления сущностями внутри vDC.

---

## 2. Параметры развертывания

Ниже перечислены входные параметры операции **create**.

### UUID Организации
Уникальный идентификатор организации в Cloud Director. Перед созданием vDC требуется предварительное создание услугу `Организация в Cloud Director`.

### Provider VDC в Cloud Director
Свойство ресурсной платформы, определяющее, какой пул физических ресурсов будет использоваться.

### Network Pool в Cloud Director
Определяет возможности сетевой конфигурации, включая создание Edge Gateway и выход во внешние сети.

### Гарантированная доля ЯДЕР
Гарантированный процент вычислительных ресурсов (CPU), закрепленный за vDC. Значение устанавливается разово при создании.

### Гарантированная доля ОЗУ
Гарантированный процент оперативной памяти, закрепленный за vDC. Также задаётся один раз при создании.

### Сколько аллоцировать на VDC ЯДЕР
Количество виртуальных ядер, выделяемых в рамках vDC.

### Сколько аллоцировать на VDC ОЗУ
Количество оперативной памяти в GB, выделяемой для vDC.

### Конфигурация Storage
Набор дисковых политик и их объёмов, выделяемых для vDC. Указывается имя политики и требуемый размер (GB).

---

## 3. Рекомендованные характеристики

### Тестовое окружение

- Количество ядер CPU: 10–20
- Аллоцируемая RAM: 16–64 GB
- Гарантированная доля CPU: 20%
- Гарантированная доля RAM: 20%
- Storage:
- Политика `SATA`
- Объём: 100–300 GB

### Промышленное окружение

- Количество ядер CPU: 16–128
- Аллоцируемая RAM: 64–512 GB
- Гарантированная доля CPU: 50%
- Гарантированная доля RAM: 50%
- Storage:
- Политики уровня `SSD`
- Объём: 1–10 TB, выбор несколько политик под разные нагрузки

---

## 4. Выходные параметры

Выходные параметры формируются операцией **create** (и используются другими операциями):

### Имя vDC
Уникальный идентификатор созданного виртуального датацентра. Используется в дальнейших операциях (modify, suspend, delete).

### Параметры выделенных ресурсов
Подтверждение итогового объёма CPU/RAM/Storage, выделенных vDC. Используются для учёта и контроля потребления.

---

## 5. Дополнительная информация

- Перед созданием vDC необходимо обеспечить наличие корректно созданной организации и доступных пула ресурсов ресурсной платформы.
- Гарантированная доля CPU и RAM задаётся **однократно при создании vDC**. После развертывания изменить эти значения невозможно; для изменения необходимо пересоздать vDC.
- Удаление vDC возможно только через **14 дней после перевода в состояние *suspend***. Удаление очищает все связанные сущности (ВМ, сети, каталоги), поэтому необходимо убедиться, что данные перенесены.
- Платформа Cloud Director использует концепцию изолированных организационных ресурсов, поэтому корректная настройка Provider VDC и Network Pool является обязательной при создании vDC.
- При изменении параметров (modify) изменяются только показатели CPU, RAM и Storage. Сетевые параметры и гарантированные доли остаются неизменными.
diff --git a/docs/30_registry/resources/vc_vdc_ops.md b/docs/30_registry/resources/vc_vdc_ops.md deleted file mode 100644 index b1a1776..0000000 --- a/docs/30_registry/resources/vc_vdc_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_vdc_params_create.md) -- `delete` — Удалить возможно только через 14 дней после выполнения операции `suspend` **ОСТОРЖНО: Удаление приводит к полному удалению всех сущностей внутри этого VDC** Если существуют инстансы Edge, vApp, Vm или Kubernetes-кластер Штурвал, которые были созданы, из ЛК удалены не будут. Необходимо обратиться к `технической поддержке` для удаления инстансов -- `modify` — Изменение кластера. Параметры: [Modify params](vc_vdc_params_modify.md) -- `reconcile` -- `resume` -- `suspend` — Операция **не останавливает ВМки** в облаке, но не даёт редактировать все сущности внутри VDC diff --git a/docs/30_registry/resources/vc_vdc_outputs.md b/docs/30_registry/resources/vc_vdc_outputs.md deleted file mode 100644 index 1ac579a..0000000 --- a/docs/30_registry/resources/vc_vdc_outputs.md +++ /dev/null @@ -1,39 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / naeel-vdc / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["providerVdc"]` -- `state_params["cpuAllocated"]` -- `state_params["memAllocated"]` -- `state_params["cpuGuaranteed"]` -- `state_params["memGuaranteed"]` -- `state_params["storageConfig"]` -- `state_params["networkProvider"]` -- `state_params["organizationUid"]` - -### `state_out_flat` ключи - -- `state_out_flat["vdcName"]` -- `state_out_flat["sizingPolicies"]` diff --git a/docs/30_registry/resources/vc_vdc_outputs_ops.md b/docs/30_registry/resources/vc_vdc_outputs_ops.md deleted file mode 100644 index 90041f2..0000000 --- a/docs/30_registry/resources/vc_vdc_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_outputs.md) | [Parameters](vc_vdc_outputs_params.md) | [Operations](vc_vdc_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_outputs_params.md b/docs/30_registry/resources/vc_vdc_outputs_params.md deleted file mode 100644 index 90041f2..0000000 --- a/docs/30_registry/resources/vc_vdc_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_outputs.md) | [Parameters](vc_vdc_outputs_params.md) | [Operations](vc_vdc_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_params.md b/docs/30_registry/resources/vc_vdc_params.md deleted file mode 100644 index 03c0037..0000000 --- a/docs/30_registry/resources/vc_vdc_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Parameters - -- [Create params](vc_vdc_params_create.md) -- [Modify params](vc_vdc_params_modify.md) diff --git a/docs/30_registry/resources/vc_vdc_params_create.md b/docs/30_registry/resources/vc_vdc_params_create.md deleted file mode 100644 index c9e89a7..0000000 --- a/docs/30_registry/resources/vc_vdc_params_create.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
30organization_uiduuidДля создания VDC предварительно необходимо создать организацию через услугу `Организация в Cloud Director`ref_svc_id=19
335provider_vdcstringПриписка `2.8` - Скорость vCPU - 2800MHz
И так далее...
361storage_configarray-map-fixedПервая политика в списке указывается как &quot;По умолчанию&quot;
746network_providerstring
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
397cpu_guaranteedinteger20Свойство нельзя изменить после созданияvalue_list=20, 50, 80
398mem_guaranteedinteger20После создания нельзя изменитьvalue_list=20, 50, 80
557cpu_allocatedinteger10штminvalue=1; maxvalue=200
558mem_allocatedinteger20gbminvalue=1; maxvalue=4096
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_vdc_params_create_ops.md b/docs/30_registry/resources/vc_vdc_params_create_ops.md deleted file mode 100644 index 99856bb..0000000 --- a/docs/30_registry/resources/vc_vdc_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_params_create.md) | [Parameters](vc_vdc_params_create_params.md) | [Operations](vc_vdc_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_params_create_params.md b/docs/30_registry/resources/vc_vdc_params_create_params.md deleted file mode 100644 index 99856bb..0000000 --- a/docs/30_registry/resources/vc_vdc_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_params_create.md) | [Parameters](vc_vdc_params_create_params.md) | [Operations](vc_vdc_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_params_modify.md b/docs/30_registry/resources/vc_vdc_params_modify.md deleted file mode 100644 index 4bb0906..0000000 --- a/docs/30_registry/resources/vc_vdc_params_modify.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -## Modify params - - - - - - - -
IDCodeTypeDescriptionConstraints
560cpu_allocatedintegerштminvalue=1; maxvalue=999
561mem_allocatedintegergbminvalue=1; maxvalue=1024
562storage_configarray-map-fixedПервая политика в списке указывается как &quot;По умолчанию&quot;
diff --git a/docs/30_registry/resources/vc_vdc_params_modify_ops.md b/docs/30_registry/resources/vc_vdc_params_modify_ops.md deleted file mode 100644 index 5613be0..0000000 --- a/docs/30_registry/resources/vc_vdc_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_params_modify.md) | [Parameters](vc_vdc_params_modify_params.md) | [Operations](vc_vdc_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_params_modify_params.md b/docs/30_registry/resources/vc_vdc_params_modify_params.md deleted file mode 100644 index 5613be0..0000000 --- a/docs/30_registry/resources/vc_vdc_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vdc - -Service ID: `21` - -Service Name: Виртуальный датацентр (vDC) - -[Manual](vc_vdc.md) | [Create params](vc_vdc_params_create.md) | [Modify params](vc_vdc_params_modify.md) | [Output params](vc_vdc_outputs.md) | [Operations](vc_vdc_ops.md) | [Example](vc_vdc_example.md) - -[Overview](vc_vdc_params_modify.md) | [Parameters](vc_vdc_params_modify_params.md) | [Operations](vc_vdc_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_reconcile.md b/docs/30_registry/resources/vc_vdc_reconcile.md deleted file mode 100644 index e2341ce..0000000 --- a/docs/30_registry/resources/vc_vdc_reconcile.md +++ /dev/null @@ -1,26 +0,0 @@ -# Resource nubes_vc_vdc_reconcile - -Service: nubes_vc_vdc - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -## Example - -```hcl -resource "nubes_vc_vdc_reconcile" "example" { - vc_vdc_id = nubes_vc_vdc.example.id - run_id = "change-me" -} -``` diff --git a/docs/30_registry/resources/vc_vdc_reconcile_ops.md b/docs/30_registry/resources/vc_vdc_reconcile_ops.md deleted file mode 100644 index 321ed37..0000000 --- a/docs/30_registry/resources/vc_vdc_reconcile_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_reconcile - -Service: nubes_vc_vdc - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_vdc_reconcile_params.md b/docs/30_registry/resources/vc_vdc_reconcile_params.md deleted file mode 100644 index 321ed37..0000000 --- a/docs/30_registry/resources/vc_vdc_reconcile_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vdc_reconcile - -Service: nubes_vc_vdc - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) - -[Overview](vc_vdc_reconcile.md) | [Parameters](vc_vdc_reconcile_params.md) | [Operations](vc_vdc_reconcile_ops.md) diff --git a/docs/30_registry/resources/vc_vm.md b/docs/30_registry/resources/vc_vm.md deleted file mode 100644 index e0c84ef..0000000 --- a/docs/30_registry/resources/vc_vm.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## MAN - -
-Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ -
diff --git a/docs/30_registry/resources/vc_vm_example.md b/docs/30_registry/resources/vc_vm_example.md deleted file mode 100644 index 0843937..0000000 --- a/docs/30_registry/resources/vc_vm_example.md +++ /dev/null @@ -1,52 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Copy-ready manifest (`vc_vm_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_vm" "baza" { - vapp_uid = "TODO" # InstanceUid vApp. vApp должен быть создан - ip_space_name = "TODO" # Брать из свойств ресурсной платформы .vcd.ipSpace Имя IP-space для выделения внешнего IP (IP выделяется обязательно) - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - vm_name = "vm0001" # Имя ВМ. Не поддерживает спец-символы - vm_cpu = 2 # CPU - vm_ram = 2 # RAM (GB) - vm_disksize = 10 # Размер диска под сервис (GB) - template_name = "RockyLinux_9-16G" # ОС - access_ip_list = "79.111.119.78/32 185.247.187.1/32" # Вставить содержимое из 'curl ifconfig.io' IP адреса в CIDR формате через пробел для настройки аксес листов -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_vm.baza.state_params["имя_ключа"] -nubes_vc_vm.baza.state_out["имя_ключа"] -nubes_vc_vm.baza.state_params_flat["имя_ключа"] -nubes_vc_vm.baza.state_out_flat["имя_ключа"] -nubes_vc_vm.baza.vault_secrets["имя_ключа"] -nubes_vc_vm.baza.vault_url -nubes_vc_vm.baza.vault_user_path -nubes_vc_vm.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_vm_example_ops.md b/docs/30_registry/resources/vc_vm_example_ops.md deleted file mode 100644 index 2a11796..0000000 --- a/docs/30_registry/resources/vc_vm_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_example.md) | [Parameters](vc_vm_example_params.md) | [Operations](vc_vm_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_example_params.md b/docs/30_registry/resources/vc_vm_example_params.md deleted file mode 100644 index 2a11796..0000000 --- a/docs/30_registry/resources/vc_vm_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_example.md) | [Parameters](vc_vm_example_params.md) | [Operations](vc_vm_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_instruction.md b/docs/30_registry/resources/vc_vm_instruction.md deleted file mode 100644 index fa9fcd7..0000000 --- a/docs/30_registry/resources/vc_vm_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vc_vm - -Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ diff --git a/docs/30_registry/resources/vc_vm_man.md b/docs/30_registry/resources/vc_vm_man.md deleted file mode 100644 index acf03e7..0000000 --- a/docs/30_registry/resources/vc_vm_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_vm - -Виртуальная машина без каких-либо особенностей.
Данная услуга запускает vc_ip для выдачи белого адреса и подключения к ВМ diff --git a/docs/30_registry/resources/vc_vm_ops.md b/docs/30_registry/resources/vc_vm_ops.md deleted file mode 100644 index ff1e0cf..0000000 --- a/docs/30_registry/resources/vc_vm_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_vm_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](vc_vm_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/vc_vm_outputs.md b/docs/30_registry/resources/vc_vm_outputs.md deleted file mode 100644 index d5163ba..0000000 --- a/docs/30_registry/resources/vc_vm_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vc_vm_outputs_ops.md b/docs/30_registry/resources/vc_vm_outputs_ops.md deleted file mode 100644 index 8b2dc16..0000000 --- a/docs/30_registry/resources/vc_vm_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_outputs.md) | [Parameters](vc_vm_outputs_params.md) | [Operations](vc_vm_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_outputs_params.md b/docs/30_registry/resources/vc_vm_outputs_params.md deleted file mode 100644 index 8b2dc16..0000000 --- a/docs/30_registry/resources/vc_vm_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_outputs.md) | [Parameters](vc_vm_outputs_params.md) | [Operations](vc_vm_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_params.md b/docs/30_registry/resources/vc_vm_params.md deleted file mode 100644 index 0ff6c3e..0000000 --- a/docs/30_registry/resources/vc_vm_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Parameters - -- [Create params](vc_vm_params_create.md) -- [Modify params](vc_vm_params_modify.md) diff --git a/docs/30_registry/resources/vc_vm_params_create.md b/docs/30_registry/resources/vc_vm_params_create.md deleted file mode 100644 index 5bed0ba..0000000 --- a/docs/30_registry/resources/vc_vm_params_create.md +++ /dev/null @@ -1,42 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - -
IDCodeTypeDescriptionConstraints
33vapp_uiduuidInstanceUid vApp. vApp должен быть созданref_svc_id=26
406ip_space_namestringБрать из свойств ресурсной платформы
.vcd.ipSpace

Имя IP-space для выделения внешнего IP (IP выделяется обязательно)
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
35vm_namestringvm0001Имя ВМ. Не поддерживает спец-символыregex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
36vm_cpustring2CPU
37vm_ramstring2RAM (GB)
38vm_disksizestring10Размер диска под сервис (GB)
176template_namestringRockyLinux_9-16GОСvalue_list=RockyLinux_9-16G, OracleLinux_9-16G, Ubuntu_24-20G, Ubuntu_22-20G
177access_ip_liststring79.111.119.78/32 185.247.187.1/32IP адреса в CIDR формате через пробел для настройки аксес листов
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_vm_params_create_ops.md b/docs/30_registry/resources/vc_vm_params_create_ops.md deleted file mode 100644 index 2e3dad1..0000000 --- a/docs/30_registry/resources/vc_vm_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_params_create.md) | [Parameters](vc_vm_params_create_params.md) | [Operations](vc_vm_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_params_create_params.md b/docs/30_registry/resources/vc_vm_params_create_params.md deleted file mode 100644 index 2e3dad1..0000000 --- a/docs/30_registry/resources/vc_vm_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_params_create.md) | [Parameters](vc_vm_params_create_params.md) | [Operations](vc_vm_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_params_modify.md b/docs/30_registry/resources/vc_vm_params_modify.md deleted file mode 100644 index 0ec4505..0000000 --- a/docs/30_registry/resources/vc_vm_params_modify.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -## Modify params - - - - - - - - -
IDCodeTypeDescriptionConstraints
186vm_cpuintegerCPU
187vm_ramintegerRAM
188vm_disksizeintegerРазмер диска под сервис (GB)
189access_ip_liststringIP адреса в CIDR формате через пробел для настройки аксес листов
diff --git a/docs/30_registry/resources/vc_vm_params_modify_ops.md b/docs/30_registry/resources/vc_vm_params_modify_ops.md deleted file mode 100644 index 00534e1..0000000 --- a/docs/30_registry/resources/vc_vm_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_params_modify.md) | [Parameters](vc_vm_params_modify_params.md) | [Operations](vc_vm_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_params_modify_params.md b/docs/30_registry/resources/vc_vm_params_modify_params.md deleted file mode 100644 index 00534e1..0000000 --- a/docs/30_registry/resources/vc_vm_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm - -Service ID: `23` - -Service Name: VM в Cloud Director (старый формат) (vc_vm) - -[Manual](vc_vm.md) | [Create params](vc_vm_params_create.md) | [Modify params](vc_vm_params_modify.md) | [Output params](vc_vm_outputs.md) | [Operations](vc_vm_ops.md) | [Example](vc_vm_example.md) - -[Overview](vc_vm_params_modify.md) | [Parameters](vc_vm_params_modify_params.md) | [Operations](vc_vm_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2.md b/docs/30_registry/resources/vc_vm_v2.md deleted file mode 100644 index ada3402..0000000 --- a/docs/30_registry/resources/vc_vm_v2.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## MAN - -
-Manual not available. -
diff --git a/docs/30_registry/resources/vc_vm_v2_example.md b/docs/30_registry/resources/vc_vm_v2_example.md deleted file mode 100644 index ca921a9..0000000 --- a/docs/30_registry/resources/vc_vm_v2_example.md +++ /dev/null @@ -1,45 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Copy-ready manifest (`vc_vm_v2_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_vm_v2" "baza" { - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - server_list_json = [{}] # Необходимо изменить vappUid и ipSpaceName Пример конфигурации взять по ссылке ниже Объект серверов вида [{}] (Map(Object)) Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2) -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_vm_v2.baza.state_params["имя_ключа"] -nubes_vc_vm_v2.baza.state_out["имя_ключа"] -nubes_vc_vm_v2.baza.state_params_flat["имя_ключа"] -nubes_vc_vm_v2.baza.state_out_flat["имя_ключа"] -nubes_vc_vm_v2.baza.vault_secrets["имя_ключа"] -nubes_vc_vm_v2.baza.vault_url -nubes_vc_vm_v2.baza.vault_user_path -nubes_vc_vm_v2.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_vm_v2_example_ops.md b/docs/30_registry/resources/vc_vm_v2_example_ops.md deleted file mode 100644 index f2f8496..0000000 --- a/docs/30_registry/resources/vc_vm_v2_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_example.md) | [Parameters](vc_vm_v2_example_params.md) | [Operations](vc_vm_v2_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_example_params.md b/docs/30_registry/resources/vc_vm_v2_example_params.md deleted file mode 100644 index f2f8496..0000000 --- a/docs/30_registry/resources/vc_vm_v2_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_example.md) | [Parameters](vc_vm_v2_example_params.md) | [Operations](vc_vm_v2_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_man.md b/docs/30_registry/resources/vc_vm_v2_man.md deleted file mode 100644 index 368673d..0000000 --- a/docs/30_registry/resources/vc_vm_v2_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_vm_v2 - -Manual not available. diff --git a/docs/30_registry/resources/vc_vm_v2_ops.md b/docs/30_registry/resources/vc_vm_v2_ops.md deleted file mode 100644 index 9d940af..0000000 --- a/docs/30_registry/resources/vc_vm_v2_ops.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_vm_v2_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](vc_vm_v2_params_modify.md) -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/vc_vm_v2_outputs.md b/docs/30_registry/resources/vc_vm_v2_outputs.md deleted file mode 100644 index 3b9bace..0000000 --- a/docs/30_registry/resources/vc_vm_v2_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vc_vm_v2_outputs_ops.md b/docs/30_registry/resources/vc_vm_v2_outputs_ops.md deleted file mode 100644 index 5e03807..0000000 --- a/docs/30_registry/resources/vc_vm_v2_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_outputs.md) | [Parameters](vc_vm_v2_outputs_params.md) | [Operations](vc_vm_v2_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_outputs_params.md b/docs/30_registry/resources/vc_vm_v2_outputs_params.md deleted file mode 100644 index 5e03807..0000000 --- a/docs/30_registry/resources/vc_vm_v2_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_outputs.md) | [Parameters](vc_vm_v2_outputs_params.md) | [Operations](vc_vm_v2_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_params.md b/docs/30_registry/resources/vc_vm_v2_params.md deleted file mode 100644 index e60c762..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Parameters - -- [Create params](vc_vm_v2_params_create.md) -- [Modify params](vc_vm_v2_params_modify.md) diff --git a/docs/30_registry/resources/vc_vm_v2_params_create.md b/docs/30_registry/resources/vc_vm_v2_params_create.md deleted file mode 100644 index b1c20cc..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_create.md +++ /dev/null @@ -1,32 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - -None. - -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - -
IDCodeTypeDefaultDescriptionConstraints
301server_list_jsonjson[{}]Необходимо изменить vappUid и ipSpaceName
Пример конфигурации взять по ссылке ниже

Объект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2)
maxlength=65536; minlength=10
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_vm_v2_params_create_ops.md b/docs/30_registry/resources/vc_vm_v2_params_create_ops.md deleted file mode 100644 index e7ba4f2..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_params_create.md) | [Parameters](vc_vm_v2_params_create_params.md) | [Operations](vc_vm_v2_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_params_create_params.md b/docs/30_registry/resources/vc_vm_v2_params_create_params.md deleted file mode 100644 index e7ba4f2..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_params_create.md) | [Parameters](vc_vm_v2_params_create_params.md) | [Operations](vc_vm_v2_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_params_modify.md b/docs/30_registry/resources/vc_vm_v2_params_modify.md deleted file mode 100644 index eedbec8..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_modify.md +++ /dev/null @@ -1,15 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -## Modify params - - - - - -
IDCodeTypeDescriptionConstraints
302server_list_jsonjsonОбъект серверов вида [{}] (Map(Object))
Более подробнее смотреть в README.md (https://gitea.mgmt.nubes.ru/cloudServices/vcVmV2)
maxlength=65536; minlength=10
diff --git a/docs/30_registry/resources/vc_vm_v2_params_modify_ops.md b/docs/30_registry/resources/vc_vm_v2_params_modify_ops.md deleted file mode 100644 index 04ef2e4..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_params_modify.md) | [Parameters](vc_vm_v2_params_modify_params.md) | [Operations](vc_vm_v2_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v2_params_modify_params.md b/docs/30_registry/resources/vc_vm_v2_params_modify_params.md deleted file mode 100644 index 04ef2e4..0000000 --- a/docs/30_registry/resources/vc_vm_v2_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v2 - -Service ID: `27` - -Service Name: VM в Cloud Director (vc_vmV2) - -[Manual](vc_vm_v2.md) | [Create params](vc_vm_v2_params_create.md) | [Modify params](vc_vm_v2_params_modify.md) | [Output params](vc_vm_v2_outputs.md) | [Operations](vc_vm_v2_ops.md) | [Example](vc_vm_v2_example.md) - -[Overview](vc_vm_v2_params_modify.md) | [Parameters](vc_vm_v2_params_modify_params.md) | [Operations](vc_vm_v2_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3.md b/docs/30_registry/resources/vc_vm_v3.md deleted file mode 100644 index 95856d8..0000000 --- a/docs/30_registry/resources/vc_vm_v3.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## MAN - -
-# Документация по разворачиванию ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины

---

## Параметры для развёртывания ВМ

### Обязательные параметры:

**vappUid**
UUID vApp, в которой будет создаваться виртуальная машина.
*Пример: WZ00400*

**vmName**
Уникальное имя виртуальной машины.
*Пример: test-vm*

**vmCpu**
Количество ядер процессора. Должно быть больше 0.
*Пример: 1*

**vmRam**
Объем оперативной памяти в гигабайтах. Должно быть больше 0.
*Пример: 1*


**accessPortList**
Белый список портов для доступа к виртуальной машине извне в формате JSON.
*Пример: ["22","10050]*

**imageVm**
Образ операционной системы для развёртывания.
*Доступные значения: RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G*

**userLogin**
Логин пользователя для SSH-доступа.
*По умолчанию: myuser*

**userPublicKey**
Публичный SSH-ключ пользователя в формате OpenSSH.
*Пример: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...*

**needAddZabbixTemplate**
Значение истина\ложь, определяющее будет ли добавлен хост в zabbix.
*Пример: true*

### Опциональные параметры:

**accessIpList**
Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, вм будет доступена со всех адресов.
*Пример: ["192.168.1.1", "10.0.0.5"]*

**vmDisk**
Размер дополнительного диска в гигабайтах. Должно быть больше 0.
*Пример: 50*

**ipSpaceName**
Внешний IP-адрес. Если не требуется — укажите значение "no-needed" (В нем не будет работать сбор метрик zabbix).

**cloudInit**
YAML-скрипт для кастомизации системы через cloud-init.

---

## Доступные образы операционных систем

### RockyLinux_9-16G-cloudinit
Базовый образ на основе Rocky Linux 9 (Rocky-9.6-x86_64-minimal) для серверных задач.
- Размер системного диска: 16 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Ubuntu_22-20G
Образ на основе Ubuntu Server 22.04 LTS для облачного окружения.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Debian_13-20G
Образ на основе Debian 13 (Trixie) для стабильной серверной работы.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

---

## Пример использования Cloud-init

```yaml
users:
- name: myuser
sudo: ALL=(ALL) NOPASSWD:ALL
groups: sudo
shell: /bin/bash
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...

packages:
- nginx

runcmd:
- systemctl enable --now nginx
- systemctl restart nginx
```

---

## Результат выполнения

После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа.

---

## Важные примечания

### Особенности работы:
- Для отключения внешнего IP укажите значение "no-needed" в параметре ipSpaceName
- Параметр cloudInit является опциональным

### Ограничения:
- Не рекомендуется использовать продолжительные инструкции в cloud-init (таймаут 5 минут)
- Не поддерживается запись файлов через cloud-init
- Не реализовано создание резервных копий ВМ

---

## Диагностика проблем с cloud-init

### Основной лог-файл:
```bash
/var/log/cloud-init.log
```

### Пакет не устанавливается:
- Проверьте доступность пакета в репозитории
- Убедитесь в правильности написания имени пакета
- Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux)

### Команда не выполняется:
- Проверьте наличие требуемой утилиты в системе
- Убедитесь в правильности синтаксиса команды
- Попробуйте выполнить команду вручную для диагностики -
diff --git a/docs/30_registry/resources/vc_vm_v3_example.md b/docs/30_registry/resources/vc_vm_v3_example.md deleted file mode 100644 index 88c5579..0000000 --- a/docs/30_registry/resources/vc_vm_v3_example.md +++ /dev/null @@ -1,53 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Copy-ready manifest (`vc_vm_v3_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vc_vm_v3" "baza" { - vapp_uid = "TODO" - ip_space_name = "TODO" - image_vm = "TODO" - user_public_key = "TODO" # Публичная часть SSH-Ключа для пользователя - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - vm_name = "web01" - vm_cpu = 1 # шт - vm_ram = 1 # Gb - user_login = "myuser" # Учётка SSH - access_port_list = ["22"] # По каким портам открыть доступ к ВМ. Порты 22, 10050 проставляются автоматически Пока доступно: 22 - SSH, 80 - HTTP, 443 - HTTPS, 10050 - ZABBIX -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vc_vm_v3.baza.state_params["имя_ключа"] -nubes_vc_vm_v3.baza.state_out["имя_ключа"] -nubes_vc_vm_v3.baza.state_params_flat["имя_ключа"] -nubes_vc_vm_v3.baza.state_out_flat["имя_ключа"] -nubes_vc_vm_v3.baza.vault_secrets["имя_ключа"] -nubes_vc_vm_v3.baza.vault_url -nubes_vc_vm_v3.baza.vault_user_path -nubes_vc_vm_v3.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vc_vm_v3_example_ops.md b/docs/30_registry/resources/vc_vm_v3_example_ops.md deleted file mode 100644 index 3e73a95..0000000 --- a/docs/30_registry/resources/vc_vm_v3_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_example.md) | [Parameters](vc_vm_v3_example_params.md) | [Operations](vc_vm_v3_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_example_params.md b/docs/30_registry/resources/vc_vm_v3_example_params.md deleted file mode 100644 index 3e73a95..0000000 --- a/docs/30_registry/resources/vc_vm_v3_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_example.md) | [Parameters](vc_vm_v3_example_params.md) | [Operations](vc_vm_v3_example_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_instruction.md b/docs/30_registry/resources/vc_vm_v3_instruction.md deleted file mode 100644 index b32c948..0000000 --- a/docs/30_registry/resources/vc_vm_v3_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vc_vm_v3 - -# Документация по разворачиванию ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины

---

## Параметры для развёртывания ВМ

### Обязательные параметры:

**vappUid**
UUID vApp, в которой будет создаваться виртуальная машина.
*Пример: WZ00400*

**vmName**
Уникальное имя виртуальной машины.
*Пример: test-vm*

**vmCpu**
Количество ядер процессора. Должно быть больше 0.
*Пример: 1*

**vmRam**
Объем оперативной памяти в гигабайтах. Должно быть больше 0.
*Пример: 1*


**accessPortList**
Белый список портов для доступа к виртуальной машине извне в формате JSON.
*Пример: ["22","10050]*

**imageVm**
Образ операционной системы для развёртывания.
*Доступные значения: RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G*

**userLogin**
Логин пользователя для SSH-доступа.
*По умолчанию: myuser*

**userPublicKey**
Публичный SSH-ключ пользователя в формате OpenSSH.
*Пример: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...*

**needAddZabbixTemplate**
Значение истина\ложь, определяющее будет ли добавлен хост в zabbix.
*Пример: true*

### Опциональные параметры:

**accessIpList**
Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, вм будет доступена со всех адресов.
*Пример: ["192.168.1.1", "10.0.0.5"]*

**vmDisk**
Размер дополнительного диска в гигабайтах. Должно быть больше 0.
*Пример: 50*

**ipSpaceName**
Внешний IP-адрес. Если не требуется — укажите значение "no-needed" (В нем не будет работать сбор метрик zabbix).

**cloudInit**
YAML-скрипт для кастомизации системы через cloud-init.

---

## Доступные образы операционных систем

### RockyLinux_9-16G-cloudinit
Базовый образ на основе Rocky Linux 9 (Rocky-9.6-x86_64-minimal) для серверных задач.
- Размер системного диска: 16 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Ubuntu_22-20G
Образ на основе Ubuntu Server 22.04 LTS для облачного окружения.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Debian_13-20G
Образ на основе Debian 13 (Trixie) для стабильной серверной работы.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

---

## Пример использования Cloud-init

```yaml
users:
- name: myuser
sudo: ALL=(ALL) NOPASSWD:ALL
groups: sudo
shell: /bin/bash
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...

packages:
- nginx

runcmd:
- systemctl enable --now nginx
- systemctl restart nginx
```

---

## Результат выполнения

После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа.

---

## Важные примечания

### Особенности работы:
- Для отключения внешнего IP укажите значение "no-needed" в параметре ipSpaceName
- Параметр cloudInit является опциональным

### Ограничения:
- Не рекомендуется использовать продолжительные инструкции в cloud-init (таймаут 5 минут)
- Не поддерживается запись файлов через cloud-init
- Не реализовано создание резервных копий ВМ

---

## Диагностика проблем с cloud-init

### Основной лог-файл:
```bash
/var/log/cloud-init.log
```

### Пакет не устанавливается:
- Проверьте доступность пакета в репозитории
- Убедитесь в правильности написания имени пакета
- Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux)

### Команда не выполняется:
- Проверьте наличие требуемой утилиты в системе
- Убедитесь в правильности синтаксиса команды
- Попробуйте выполнить команду вручную для диагностики diff --git a/docs/30_registry/resources/vc_vm_v3_man.md b/docs/30_registry/resources/vc_vm_v3_man.md deleted file mode 100644 index 6253365..0000000 --- a/docs/30_registry/resources/vc_vm_v3_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vc_vm_v3 - -# Документация по разворачиванию ВМ в Личном кабинете

Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК).

## Доступные операции
- **create** — Создание виртуальной машины
- **delete** — Удаление виртуальной машины
- **resume** — Запуск виртуальной машины
- **suspend** — Остановка виртуальной машины

---

## Параметры для развёртывания ВМ

### Обязательные параметры:

**vappUid**
UUID vApp, в которой будет создаваться виртуальная машина.
*Пример: WZ00400*

**vmName**
Уникальное имя виртуальной машины.
*Пример: test-vm*

**vmCpu**
Количество ядер процессора. Должно быть больше 0.
*Пример: 1*

**vmRam**
Объем оперативной памяти в гигабайтах. Должно быть больше 0.
*Пример: 1*


**accessPortList**
Белый список портов для доступа к виртуальной машине извне в формате JSON.
*Пример: ["22","10050]*

**imageVm**
Образ операционной системы для развёртывания.
*Доступные значения: RockyLinux_9-16G-cloudinit, Ubuntu_22-20G, Debian_13-20G*

**userLogin**
Логин пользователя для SSH-доступа.
*По умолчанию: myuser*

**userPublicKey**
Публичный SSH-ключ пользователя в формате OpenSSH.
*Пример: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...*

**needAddZabbixTemplate**
Значение истина\ложь, определяющее будет ли добавлен хост в zabbix.
*Пример: true*

### Опциональные параметры:

**accessIpList**
Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, вм будет доступена со всех адресов.
*Пример: ["192.168.1.1", "10.0.0.5"]*

**vmDisk**
Размер дополнительного диска в гигабайтах. Должно быть больше 0.
*Пример: 50*

**ipSpaceName**
Внешний IP-адрес. Если не требуется — укажите значение "no-needed" (В нем не будет работать сбор метрик zabbix).

**cloudInit**
YAML-скрипт для кастомизации системы через cloud-init.

---

## Доступные образы операционных систем

### RockyLinux_9-16G-cloudinit
Базовый образ на основе Rocky Linux 9 (Rocky-9.6-x86_64-minimal) для серверных задач.
- Размер системного диска: 16 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Ubuntu_22-20G
Образ на основе Ubuntu Server 22.04 LTS для облачного окружения.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

### Debian_13-20G
Образ на основе Debian 13 (Trixie) для стабильной серверной работы.
- Размер системного диска: 20 ГБ
- Поддержка cloud-init
- Минимальные требования: 1 vCPU, 1 ГБ RAM

---

## Пример использования Cloud-init

```yaml
users:
- name: myuser
sudo: ALL=(ALL) NOPASSWD:ALL
groups: sudo
shell: /bin/bash
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...

packages:
- nginx

runcmd:
- systemctl enable --now nginx
- systemctl restart nginx
```

---

## Результат выполнения

После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа.

---

## Важные примечания

### Особенности работы:
- Для отключения внешнего IP укажите значение "no-needed" в параметре ipSpaceName
- Параметр cloudInit является опциональным

### Ограничения:
- Не рекомендуется использовать продолжительные инструкции в cloud-init (таймаут 5 минут)
- Не поддерживается запись файлов через cloud-init
- Не реализовано создание резервных копий ВМ

---

## Диагностика проблем с cloud-init

### Основной лог-файл:
```bash
/var/log/cloud-init.log
```

### Пакет не устанавливается:
- Проверьте доступность пакета в репозитории
- Убедитесь в правильности написания имени пакета
- Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux)

### Команда не выполняется:
- Проверьте наличие требуемой утилиты в системе
- Убедитесь в правильности синтаксиса команды
- Попробуйте выполнить команду вручную для диагностики diff --git a/docs/30_registry/resources/vc_vm_v3_ops.md b/docs/30_registry/resources/vc_vm_v3_ops.md deleted file mode 100644 index 29b88fb..0000000 --- a/docs/30_registry/resources/vc_vm_v3_ops.md +++ /dev/null @@ -1,16 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vc_vm_v3_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](vc_vm_v3_params_modify.md) -- `redeploy` -- `resume` -- `suspend` diff --git a/docs/30_registry/resources/vc_vm_v3_outputs.md b/docs/30_registry/resources/vc_vm_v3_outputs.md deleted file mode 100644 index ce28460..0000000 --- a/docs/30_registry/resources/vc_vm_v3_outputs.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / vm-sless / suspended) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["vmCpu"]` -- `state_params["vmRam"]` -- `state_params["vmDisk"]` -- `state_params["vmName"]` -- `state_params["imageVm"]` -- `state_params["vappUid"]` -- `state_params["cloudInit"]` -- `state_params["userLogin"]` -- `state_params["ipSpaceName"]` -- `state_params["accessIpList"]` -- `state_params["userPublicKey"]` -- `state_params["accessPortList"]` - -### `state_out_flat` ключи - -- `state_out_flat["fqdn"]` -- `state_out_flat["monitoring"]` -- `state_out_flat["monitoring.allDashboards"]` -- `state_out_flat["externalConnect"]` -- `state_out_flat["internalConnect"]` diff --git a/docs/30_registry/resources/vc_vm_v3_outputs_ops.md b/docs/30_registry/resources/vc_vm_v3_outputs_ops.md deleted file mode 100644 index 4863761..0000000 --- a/docs/30_registry/resources/vc_vm_v3_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_outputs.md) | [Parameters](vc_vm_v3_outputs_params.md) | [Operations](vc_vm_v3_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_outputs_params.md b/docs/30_registry/resources/vc_vm_v3_outputs_params.md deleted file mode 100644 index 4863761..0000000 --- a/docs/30_registry/resources/vc_vm_v3_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_outputs.md) | [Parameters](vc_vm_v3_outputs_params.md) | [Operations](vc_vm_v3_outputs_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_params.md b/docs/30_registry/resources/vc_vm_v3_params.md deleted file mode 100644 index 9c63ad1..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Parameters - -- [Create params](vc_vm_v3_params_create.md) -- [Modify params](vc_vm_v3_params_modify.md) diff --git a/docs/30_registry/resources/vc_vm_v3_params_create.md b/docs/30_registry/resources/vc_vm_v3_params_create.md deleted file mode 100644 index aff77f9..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_create.md +++ /dev/null @@ -1,46 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
407vapp_uiduuidref_svc_id=26
411vm_diskintegerОсновной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$
412ip_space_namestring
413access_ip_listjsonФормат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено [&quot;0.0.0.0/0&quot;]
regex=^(?:$|\[\s*(?:"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?"(?:\s*,\s*"(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,2})?")*)\s*\])$
414image_vmstring
415cloud_inityamlМожно передать создание дополнительных пользователей.
На текущий момент не реализовано выполнения в cloud-init, установки пакетов, выполнения команд и записи файлов.
417user_public_keystringПубличная часть SSH-Ключа для пользователя
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
408vm_namestringweb01regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$
409vm_cpuinteger1штminvalue=1; maxvalue=64
410vm_raminteger1Gbminvalue=1; maxvalue=256
416user_loginmyuserУчётка SSH
448access_port_liststring["22"]По каким портам открыть доступ к ВМ.
Порты 22, 10050 проставляются автоматически
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS,
10050 - ZABBIX
- -
-Параметры поведения (кратко)
-По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
-При `terraform destroy` или удалении ресурса из манифеста:
-- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
-- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
-При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
-- `false` — если ресурс уже есть, будет ошибка.
-- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
-Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления. -
diff --git a/docs/30_registry/resources/vc_vm_v3_params_create_ops.md b/docs/30_registry/resources/vc_vm_v3_params_create_ops.md deleted file mode 100644 index 8ab34a9..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_params_create.md) | [Parameters](vc_vm_v3_params_create_params.md) | [Operations](vc_vm_v3_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_params_create_params.md b/docs/30_registry/resources/vc_vm_v3_params_create_params.md deleted file mode 100644 index 8ab34a9..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_params_create.md) | [Parameters](vc_vm_v3_params_create_params.md) | [Operations](vc_vm_v3_params_create_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_params_modify.md b/docs/30_registry/resources/vc_vm_v3_params_modify.md deleted file mode 100644 index 033040d..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_modify.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -## Modify params - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
493vm_cpuintegerштminvalue=1; maxvalue=64
494vm_ramintegerGbminvalue=1; maxvalue=256
495vm_diskintegerОсновной диск у vm зависит от образа (см. документацию)
Если необходимо дополнительное место для vm, введите колличество Gb в эту форму
regex=^(?:$|(?:0|[1-9]\d{0,2}|1\d{3}|20(?:[0-3]\d|4[0-8])))$
496ip_space_namestringno-needed, без внешнего ip
internet-antiddos-v1, с функцией защиты от ddos атак
internet-no-antiddos-v1, с функцией защиты от ddos атак
internet-ipv4-v1 тестовое простанство dev
value_list=no-needed, internet-antiddos-v1, internet-no-antiddos-v1
497access_ip_listjsonФормат массива
Каким адресам будет предоставлен доступ до вм

Требует выделенного внешнего IP
Если ничего не передано, то выставлено [&quot;0.0.0.0/0&quot;]
498access_port_listjsonФормат массива
По каким портам открыть доступ к ВМ.
Пока доступно:
22 - SSH,
80 - HTTP,
443 - HTTPS
diff --git a/docs/30_registry/resources/vc_vm_v3_params_modify_ops.md b/docs/30_registry/resources/vc_vm_v3_params_modify_ops.md deleted file mode 100644 index eaec250..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_params_modify.md) | [Parameters](vc_vm_v3_params_modify_params.md) | [Operations](vc_vm_v3_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_params_modify_params.md b/docs/30_registry/resources/vc_vm_v3_params_modify_params.md deleted file mode 100644 index eaec250..0000000 --- a/docs/30_registry/resources/vc_vm_v3_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vc_vm_v3 - -Service ID: `28` - -Service Name: Виртуальная машина - -[Manual](vc_vm_v3.md) | [Create params](vc_vm_v3_params_create.md) | [Modify params](vc_vm_v3_params_modify.md) | [Output params](vc_vm_v3_outputs.md) | [Operations](vc_vm_v3_ops.md) | [Example](vc_vm_v3_example.md) - -[Overview](vc_vm_v3_params_modify.md) | [Parameters](vc_vm_v3_params_modify_params.md) | [Operations](vc_vm_v3_params_modify_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_redeploy.md b/docs/30_registry/resources/vc_vm_v3_redeploy.md deleted file mode 100644 index 087e615..0000000 --- a/docs/30_registry/resources/vc_vm_v3_redeploy.md +++ /dev/null @@ -1,32 +0,0 @@ -# Resource nubes_vc_vm_v3_redeploy - -Service: nubes_vc_vm_v3 - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -## Example - -```hcl -resource "nubes_vc_vm_v3_redeploy" "example" { - vc_vm_v3_id = nubes_vc_vm_v3.example.id - run_id = "change-me" - vm_name = "TODO" - vm_cpu = 1 - vm_ram = 1 - image_vm = RockyLinux_9-16G-cloudinit - user_login = "TODO" - user_public_key = "TODO" -} -``` diff --git a/docs/30_registry/resources/vc_vm_v3_redeploy_ops.md b/docs/30_registry/resources/vc_vm_v3_redeploy_ops.md deleted file mode 100644 index 28fe832..0000000 --- a/docs/30_registry/resources/vc_vm_v3_redeploy_ops.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vm_v3_redeploy - -Service: nubes_vc_vm_v3 - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) diff --git a/docs/30_registry/resources/vc_vm_v3_redeploy_params.md b/docs/30_registry/resources/vc_vm_v3_redeploy_params.md deleted file mode 100644 index 28fe832..0000000 --- a/docs/30_registry/resources/vc_vm_v3_redeploy_params.md +++ /dev/null @@ -1,17 +0,0 @@ -# Resource nubes_vc_vm_v3_redeploy - -Service: nubes_vc_vm_v3 - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) - -[Overview](vc_vm_v3_redeploy.md) | [Parameters](vc_vm_v3_redeploy_params.md) | [Operations](vc_vm_v3_redeploy_ops.md) diff --git a/docs/30_registry/resources/vcexternalip.md b/docs/30_registry/resources/vcexternalip.md deleted file mode 100644 index 3fe625c..0000000 --- a/docs/30_registry/resources/vcexternalip.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## MAN - -
-**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**
Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать

Резервировать публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.
Вы можете назначить IP адрес для существующего экземпляра сервиса. -
diff --git a/docs/30_registry/resources/vcexternalip_example.md b/docs/30_registry/resources/vcexternalip_example.md deleted file mode 100644 index fae5ddb..0000000 --- a/docs/30_registry/resources/vcexternalip_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Copy-ready manifest (`vcexternalip_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vcexternalip" "baza" { - service_uid = "TODO" - internal_addr_access = "TODO" # Внутренний адрес для связки ната. Требует dnatCreate=true или snatCreate=true - from_service_namespace = "TODO" # Namespace составной услуги (для отображения правил FW) - ip_space_name = "TODO" # Тип ip Space (internet-ipv4-v1 / internet-antiddos-v1 / internet-no-antiddos-v1) - resource_realm = "TODO" # Платформа для развертывания - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - dnat_create = true # Необходимо создать DNAT-правило. - internal_port_access = 5432 # Порт для связки ната с адресом. Несколько значений можно передавать через пробел. Если передать all, то dnat будет на все порты. Требует dnatCreate=true -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vcexternalip.baza.state_params["имя_ключа"] -nubes_vcexternalip.baza.state_out["имя_ключа"] -nubes_vcexternalip.baza.state_params_flat["имя_ключа"] -nubes_vcexternalip.baza.state_out_flat["имя_ключа"] -nubes_vcexternalip.baza.vault_secrets["имя_ключа"] -nubes_vcexternalip.baza.vault_url -nubes_vcexternalip.baza.vault_user_path -nubes_vcexternalip.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vcexternalip_example_ops.md b/docs/30_registry/resources/vcexternalip_example_ops.md deleted file mode 100644 index 3eb1b10..0000000 --- a/docs/30_registry/resources/vcexternalip_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_example.md) | [Parameters](vcexternalip_example_params.md) | [Operations](vcexternalip_example_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_example_params.md b/docs/30_registry/resources/vcexternalip_example_params.md deleted file mode 100644 index 3eb1b10..0000000 --- a/docs/30_registry/resources/vcexternalip_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_example.md) | [Parameters](vcexternalip_example_params.md) | [Operations](vcexternalip_example_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_instruction.md b/docs/30_registry/resources/vcexternalip_instruction.md deleted file mode 100644 index 6a75562..0000000 --- a/docs/30_registry/resources/vcexternalip_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vcexternalip - -**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**
Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать

Резервировать публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.
Вы можете назначить IP адрес для существующего экземпляра сервиса. diff --git a/docs/30_registry/resources/vcexternalip_man.md b/docs/30_registry/resources/vcexternalip_man.md deleted file mode 100644 index 323972a..0000000 --- a/docs/30_registry/resources/vcexternalip_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vcexternalip - -**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**
Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать

Резервировать публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.
Вы можете назначить IP адрес для существующего экземпляра сервиса. diff --git a/docs/30_registry/resources/vcexternalip_ops.md b/docs/30_registry/resources/vcexternalip_ops.md deleted file mode 100644 index 5668481..0000000 --- a/docs/30_registry/resources/vcexternalip_ops.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vcexternalip_params_create.md) -- `delete` -- `modify` — Изменение кластера. Параметры: [Modify params](vcexternalip_params_modify.md) diff --git a/docs/30_registry/resources/vcexternalip_outputs.md b/docs/30_registry/resources/vcexternalip_outputs.md deleted file mode 100644 index c623296..0000000 --- a/docs/30_registry/resources/vcexternalip_outputs.md +++ /dev/null @@ -1,49 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов - -## Реальные поля из облака (test / vIp for (0fe88e2a-31b6-4385-ad52-e27c6c0d38a6) / running) - -Поля ниже получены из реальных инстансов этого сервиса в облаке. -Используйте их как готовые ключи для `state_out_flat` и `vault_secrets`. - -### `state_params` ключи - -- `state_params["dnatCreate"]` -- `state_params["serviceUid"]` -- `state_params["snatCreate"]` -- `state_params["ipSpaceName"]` -- `state_params["resourceRealm"]` -- `state_params["internalAddrAccess"]` -- `state_params["internalPortAccess"]` -- `state_params["fromServiceNamespace"]` -- `state_params["fromServiceCloudOrgName"]` -- `state_params["fromServiceCloudVdcName"]` -- `state_params["fromServiceVdcGroupName"]` -- `state_params["fromServiceCloudEdgeName"]` -- `state_params["fromServiceCloudEdgeScope"]` -- `state_params["fromServiceCloudVmwareUrl"]` - -### `state_out_flat` ключи - -- `state_out_flat["externalIp"]` - -### `vault_secrets` ключи - -- `vault_secrets["fields"]` -- `vault_secrets["userPath"]` diff --git a/docs/30_registry/resources/vcexternalip_outputs_ops.md b/docs/30_registry/resources/vcexternalip_outputs_ops.md deleted file mode 100644 index e43487f..0000000 --- a/docs/30_registry/resources/vcexternalip_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_outputs.md) | [Parameters](vcexternalip_outputs_params.md) | [Operations](vcexternalip_outputs_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_outputs_params.md b/docs/30_registry/resources/vcexternalip_outputs_params.md deleted file mode 100644 index e43487f..0000000 --- a/docs/30_registry/resources/vcexternalip_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_outputs.md) | [Parameters](vcexternalip_outputs_params.md) | [Operations](vcexternalip_outputs_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_params.md b/docs/30_registry/resources/vcexternalip_params.md deleted file mode 100644 index 1db2fcc..0000000 --- a/docs/30_registry/resources/vcexternalip_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Parameters - -- [Create params](vcexternalip_params_create.md) -- [Modify params](vcexternalip_params_modify.md) diff --git a/docs/30_registry/resources/vcexternalip_params_create.md b/docs/30_registry/resources/vcexternalip_params_create.md deleted file mode 100644 index 995a3b8..0000000 --- a/docs/30_registry/resources/vcexternalip_params_create.md +++ /dev/null @@ -1,36 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
140service_uidstring
143snat_createbooleanНеобходимо создать SNAT-правило.
144internal_addr_accessstringВнутренний адрес для связки ната. Требует dnatCreate=true или snatCreate=true
324from_service_namespacestringNamespace составной услуги (для отображения правил FW)
325from_service_cloud_edge_namestringEdge составной услуги (указывать, если resourceRealm связан с CloudDirector)
326from_service_cloud_vdc_nameVdc составной услуги (указывать, если resourceRealm связан с CloudDirector)
327from_service_cloud_org_namestringOrg составной услуги (указывать, если resourceRealm связан с CloudDirector)
328from_service_cloud_vmware_urlstringApi-Url составной услуги (указывать, если resourceRealm связан с CloudDirector)
336ip_space_namestringТип ip Space (internet-ipv4-v1 / internet-antiddos-v1 / internet-no-antiddos-v1)
488resource_realmstringПлатформа для развертыванияfunc=getAvailableResourceRealms
624from_service_cloud_edge_scopestring
626from_service_vdc_group_namestring
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - -
IDCodeTypeDefaultDescriptionConstraints
141dnat_createbooleantrueНеобходимо создать DNAT-правило.
142internal_port_accessstring5432Порт для связки ната с адресом. Несколько значений можно передавать через пробел. Если передать all, то dnat будет на все порты. Требует dnatCreate=true
diff --git a/docs/30_registry/resources/vcexternalip_params_create_ops.md b/docs/30_registry/resources/vcexternalip_params_create_ops.md deleted file mode 100644 index f4700d9..0000000 --- a/docs/30_registry/resources/vcexternalip_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_params_create.md) | [Parameters](vcexternalip_params_create_params.md) | [Operations](vcexternalip_params_create_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_params_create_params.md b/docs/30_registry/resources/vcexternalip_params_create_params.md deleted file mode 100644 index f4700d9..0000000 --- a/docs/30_registry/resources/vcexternalip_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_params_create.md) | [Parameters](vcexternalip_params_create_params.md) | [Operations](vcexternalip_params_create_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_params_modify.md b/docs/30_registry/resources/vcexternalip_params_modify.md deleted file mode 100644 index f17b66c..0000000 --- a/docs/30_registry/resources/vcexternalip_params_modify.md +++ /dev/null @@ -1,20 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -## Modify params - - - - - - - - - - -
IDCodeTypeDescriptionConstraints
627service_uidstring
628ip_space_namestring
629dnat_createboolean
630snat_createboolean
631internal_port_accessstring
632internal_addr_accessstring
diff --git a/docs/30_registry/resources/vcexternalip_params_modify_ops.md b/docs/30_registry/resources/vcexternalip_params_modify_ops.md deleted file mode 100644 index 8221981..0000000 --- a/docs/30_registry/resources/vcexternalip_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_params_modify.md) | [Parameters](vcexternalip_params_modify_params.md) | [Operations](vcexternalip_params_modify_ops.md) diff --git a/docs/30_registry/resources/vcexternalip_params_modify_params.md b/docs/30_registry/resources/vcexternalip_params_modify_params.md deleted file mode 100644 index 8221981..0000000 --- a/docs/30_registry/resources/vcexternalip_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vcexternalip - -Service ID: `25` - -Service Name: Публичные IP адреса - -[Manual](vcexternalip.md) | [Create params](vcexternalip_params_create.md) | [Modify params](vcexternalip_params_modify.md) | [Output params](vcexternalip_outputs.md) | [Operations](vcexternalip_ops.md) | [Example](vcexternalip_example.md) - -[Overview](vcexternalip_params_modify.md) | [Parameters](vcexternalip_params_modify_params.md) | [Operations](vcexternalip_params_modify_ops.md) diff --git a/docs/30_registry/resources/vdc.md b/docs/30_registry/resources/vdc.md deleted file mode 100644 index 0605950..0000000 --- a/docs/30_registry/resources/vdc.md +++ /dev/null @@ -1,62 +0,0 @@ -# Resource: nubes_vdc (Виртуальный датацентр) - -`nubes_vdc` позволяет создавать и управлять Виртуальным датацентром (vDC) через платформу Nubes. - -Виртуальный датацентр (vDC) — это логическая изолированная среда в VMware Cloud Director, предназначенная для размещения и управления виртуальными машинами. - -## Пример использования - -```text -resource "nubes_organization" "my_org" { - name = "My Organization" - # ... другие параметры организации -} - -resource "nubes_vdc" "my_vdc" { - display_name = "Production-vDC" - organization_uid = nubes_organization.my_org.id - - # Системные параметры платформы (зависят от организации) - provider_vdc = "v1cl4-vsan-pvdc" - network_pool = "nsxt-v1cl1-geneve-np" - - # Гарантированные доли ресурсов (задаются при создании) - cpu_allocation_pct = 20 - ram_allocation_pct = 20 - - # Квоты ресурсов (можно изменять через modify) - cpu_quota = 10 - ram_quota = 20 - - # Дисковые политики - # JSON формат: [{"name": "PolicyName", "size": "GB"}] - storage_profiles = jsonencode([ - { - name = "storoj" - size = "100" - } - ]) - - deletion_protection = false # Если false, при destroy ресурс будет заморожен (suspend) -} -``` - -## Аргументы - -* `display_name` (String, Required) - Имя vDC. -* `organization_uid` (String, Required) - UUID Организации (param 30). -* `provider_vdc` (String, Required) - Provider VDC в Cloud Director (param 335). -* `network_pool` (String, Required) - Network Pool в Cloud Director (param 366). -* `cpu_allocation_pct` (Int, Required) - Гарантированная доля ЯДЕР % (param 397). **Неизменяемый параметр**. -* `ram_allocation_pct` (Int, Required) - Гарантированная доля ОЗУ % (param 398). **Неизменяемый параметр**. -* `cpu_quota` (Int, Required) - Количество аллоцированных ядер (param 557). -* `ram_quota` (Int, Required) - Количество аллоцированной ОЗУ в GB (param 558). -* `storage_profiles` (String, Required) - Конфигурация Storage в формате JSON-строки (param 361). -* `deletion_protection` (Boolean, Optional) - Если `true` (по умолчанию), `terraform destroy` только удаляет ресурс из стейта. Если `false`, выполняется операция `suspend`, и ресурс удаляется облаком через 14 дней. - -## Импорт - -Импорт осуществляется по UUID инстанса: -```bash -terraform import nubes_vdc.my_vdc -``` diff --git a/docs/30_registry/resources/vm.md b/docs/30_registry/resources/vm.md deleted file mode 100644 index 6295669..0000000 --- a/docs/30_registry/resources/vm.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -description: Управление виртуальными машинами (VM) в облаке Nubes -keywords: vm, virtual machine, nubes, compute, ec2 ---- - -# nubes_vm_instance - -Ресурс `nubes_vm_instance` позволяет создавать, изменять и управлять жизненным циклом виртуальных машин в облаках Nubes. - -## Обзор - -Виртуальные машины создаются внутри vApp (`vapp_uid`). -Поддерживаются операции изменения ресурсов (CPU, RAM) и сетевых настроек "на лету" (в зависимости от ОС и типа изменений может потребоваться перезагрузка, но Terraform выполняет операцию `modify`). - -### Особенности удаления (Deletion Protection) - -По умолчанию для предотвращения случайной потери данных включена защита от удаления (`deletion_protection = true`). - -* **terraform destroy (при deletion_protection = true)**: Ресурс удаляется только из стейта Terraform. В облаке ВМ продолжает работать. -* **terraform destroy (при deletion_protection = false)**: ВМ переводится в состояние **SUSPEND** (останавливается). Это аналог "карантина". Полное удаление происходит автоматически через 14 дней. Если вы создадите ресурс заново с тем же именем, Terraform попытается создать новую ВМ (API может вернуть ошибку, если имя занято остановленной ВМ). - -## Пример использования - -```text -# Пример создания Linux VM -resource "nubes_vm_instance" "web_server" { - # Привязка к vApp - vapp_uid = nubes_vapp.main_vapp.id - - # Основные параметры - vm_name = "web-server-01" - description = "Frontend Nginx Server" - - # Ресурсы - vm_cpu = 2 - vm_ram = 4 # GB - vm_disk = 50 # Дополнительный диск GB (опционально) - - # Образ и Доступ - image_vm = "Ubuntu_22-20G" - user_login = "ubuntu" - user_public_key = "ssh-ed25519 AAAAC3Nz..." - - # Сеть и Безопасность - ip_space_name = "no-needed" # Или имя IP Space для внешнего IP - - # Списки доступа (White Lists) - access_port_list = jsonencode(["22", "80", "443"]) - access_ip_list = jsonencode(["1.2.3.4", "10.0.0.0/8"]) # Оставьте пустым для доступа отовсюду - - # Мониторинг - need_add_zabbix_template = true - - # Кастомизация - cloud_init = < 0. -* `vm_ram` (Int) - Объем оперативной памяти (GB). Должно быть > 0. -* `image_vm` (String) - Образ ОС. Примеры: - * `RockyLinux_9-16G-cloudinit` - * `Ubuntu_22-20G` - * `Debian_13-20G` -* `user_login` (String) - Имя пользователя для SSH доступа (sudoer). -* `user_public_key` (String) - Публичный SSH ключ (OpenSSH format). -* `access_port_list` (String/JSON) - JSON-список открытых портов (TCP). Пример: `jsonencode(["22", "80"])`. -* `need_add_zabbix_template` (Bool) - Добавлять ли ВМ в мониторинг Zabbix. - -### Опциональные (Optional) - -* `vm_disk` (Int) - Размер дополнительного диска данных (GB). -* `access_ip_list` (String/JSON) - JSON-список разрешенных IP-адресов. Если не указан или пуст, доступ разрешен со всех IP (0.0.0.0/0). -* `ip_space_name` (String) - Настройка внешнего IP. Укажите `"no-needed"` для отключения public IP. -* `cloud_init` (String) - YAML конфигурация cloud-init. Позволяет устанавливать пакеты, создавать пользователей и файлы при первом старте. - * *Примечание*: Не используйте долгие операции (таймаут 5 мин). -* `deletion_protection` (Bool) - Защита от удаления. Default: `true`. - * `true`: `terraform destroy` = forget state (ВМ жива). - * `false`: `terraform destroy` = suspend (ВМ выключена, карантин 14 дней). - -### Только для чтения (Read-Only) - -* `id` (String) - UUID созданной виртуальной машины. -* `status` (String) - Текущий статус (например, `running`, `suspended`, `poweroff`). - -## Импорт - -Импорт существующей ВМ осуществляется по её UUID: - -```bash -terraform import nubes_vm_instance.my_vm -``` diff --git a/docs/30_registry/resources/vm_best_practices.md b/docs/30_registry/resources/vm_best_practices.md deleted file mode 100644 index 1ab3c88..0000000 --- a/docs/30_registry/resources/vm_best_practices.md +++ /dev/null @@ -1,176 +0,0 @@ -# VM Resource Best Practices - -## Критичные параметры для устойчивого создания VM - -### 1. JSON Параметры - ОБЯЗАТЕЛЬНО использовать `jsonencode()` - -**❌ НЕПРАВИЛЬНО:** -```text -resource "nubes_vm" "web" { - access_port_list = "22,80,443" # ОШИБКА: не JSON! - access_ip_list = "" # ОШИБКА: пустая строка! -} -``` - -**✅ ПРАВИЛЬНО:** -```text -resource "nubes_vm" "web" { - access_port_list = jsonencode(["22", "80", "443"]) - access_ip_list = jsonencode(["1.2.3.4", "10.0.0.0/8"]) - - # Если нужен доступ отовсюду - не указывайте параметр: - # access_ip_list не указан = доступ с 0.0.0.0/0 -} -``` - -### 2. Валидация на этапе plan - -Провайдер автоматически проверит: -- ✅ `access_port_list` - валидный JSON массив -- ✅ `access_ip_list` - валидный JSON массив (если указан) -- ✅ `vm_cpu`, `vm_ram`, `vm_disk` >= 1 -- ✅ `image_vm` - один из разрешённых образов - -**Ошибка при некорректном формате:** -``` -Error: Invalid JSON Array -│ -│ with nubes_vm.web, -│ on main.tf line 10: -│ 10: access_port_list = "22,80" -│ -│ Value must be a valid JSON array: invalid character ',' after top-level value -``` - -### 3. Default значения - -| Параметр | Default | Поведение | -|----------|---------|-----------| -| `access_ip_list` | `["0.0.0.0/0"]` | Если не указан или пустой - доступ отовсюду | -| `deletion_protection` | `true` | При `terraform destroy` ресурс удаляется только из state, не из облака | - -### 4. Специальные значения - -#### `ip_space_name` -- `"no-needed"` - не выделять внешний IP -- Любое другое значение - имя ipSpace для публикации VIP - -#### `access_ip_list` -- **Не указан** → доступ с 0.0.0.0/0 -- `jsonencode(["1.2.3.4"])` → доступ только с указанного IP -- `jsonencode(["10.0.0.0/8", "192.168.0.0/16"])` → доступ с нескольких подсетей - -### 5. Lifecycle операции - -#### Create -1. Создаётся instance в API -2. Создаётся operation "create" -3. Отправляются все параметры (включая defaults) -4. **Важно**: Если `access_ip_list` не задан, отправляется `["0.0.0.0/0"]` -5. Запускается выполнение через `/run` -6. Polling до завершения (статус `running`) - -#### Update (Modify) -Модифицируемые поля: -- `vm_cpu` - можно увеличивать/уменьшать -- `vm_ram` - можно увеличивать/уменьшать -- `vm_disk` - **только увеличение!** (нельзя уменьшить) -- `ip_space_name` - изменение внешнего IP -- `access_ip_list` - изменение белого списка -- `access_port_list` - изменение портов -- `need_add_zabbix_template` - включить/выключить мониторинг - -#### Delete -- **С `deletion_protection = true`** (default): Ресурс удаляется из Terraform state, остаётся в облаке -- **С `deletion_protection = false`**: Отправляется операция `suspend` (карантин 14 дней), затем ресурс удаляется из state - -### 6. Известные ловушки (из HAR анализа) - -#### Проблема: VM создалась, но FW зависает -**Причина**: Пустая строка в `accessIpList` или `accessPortList` - -**Решение**: Провайдер теперь автоматически заменяет: -- Пустой `access_ip_list` → `["0.0.0.0/0"]` -- Пустой `vm_disk` → параметр не отправляется - -#### Проблема: ColdFusion Type Mismatch Error -**Причина**: Сервер получил массив вместо GUID или наоборот - -**Решение**: Провайдер использует динамическое мапирование параметров по `Code` (как в Postgres ресурсе) - -### 7. Debugging - -При проблемах с созданием VM проверьте: - -1. **Terraform logs** (уровень TRACE): -```bash -TF_LOG=TRACE terraform apply -``` - -2. **Параметры операции** в выводе: -``` -submitVMOperationParams: sending accessIpList (ID 413) = ["0.0.0.0/0"] -``` - -3. **Статус операции** в Read: -``` -Operation Status: isSuccessful=false, isInProgress=true -Stages: [{"stage":"Добавление правил FW","isSuccessful":false}] -``` - -### 8. Пример корректной конфигурации - -```text -resource "nubes_vm" "app_server" { - display_name = "app-prod-01" - description = "Application server" - - vapp_uid = nubes_vapp.my_app.id - vm_name = "app-prod-01" - - # Ресурсы (обязательно >= 1) - vm_cpu = 2 - vm_ram = 4 - vm_disk = 50 # GB, можно только увеличивать - - # Образ (проверяется валидатором) - image_vm = "Ubuntu_22-20G" - - # SSH доступ - user_login = "ubuntu" - user_public_key = file("~/.ssh/id_ed25519.pub") - - # Firewall (JSON массивы!) - access_port_list = jsonencode(["22", "80", "443"]) - access_ip_list = jsonencode(["1.2.3.4/32", "10.0.0.0/8"]) - - # Внешний IP - ip_space_name = "k8s-3.ext.nubes.ru" # или "no-needed" - - # Мониторинг - need_add_zabbix_template = true - - # Cloud-init (опционально) - cloud_init = <<-EOT - #cloud-config - packages: - - nginx - runcmd: - - systemctl start nginx - EOT - - # Защита от удаления - deletion_protection = true # default, можно не указывать -} -``` - -## Миграция с предыдущих версий - -Если у вас есть конфигурации без JSON валидации: - -1. **Проверьте все `access_port_list` и `access_ip_list`** -2. **Оберните в `jsonencode()`** -3. **Запустите `terraform plan`** - валидаторы покажут ошибки -4. **Исправьте до применения** - -Провайдер версии ≥ v1.1.0 отклонит некорректные конфигурации на этапе plan, что **предотвратит зависание на FW правилах**. diff --git a/docs/30_registry/resources/vm_form_fields.md b/docs/30_registry/resources/vm_form_fields.md deleted file mode 100644 index 40f2b12..0000000 --- a/docs/30_registry/resources/vm_form_fields.md +++ /dev/null @@ -1,112 +0,0 @@ -# Поля формы создания ВМ (Личный кабинет) — выгрузка для разработки - -_Сохранено: 2026-01-29 — автоматическая выгрузка полей из `har/vm.html` для использования при работе над Terraform-провайдером._ - -## Цель -Документ содержит полный список полей, видимых на странице создания ВМ в Личном кабинете (Deck), примеры значений и сопоставления с текущими атрибутами ресурса Terraform `nubes_vm_instance`. - ---- - -## Список полей формы (название поля в UI / name / обязательность) - -- UUID vApp - - UI name: `vappUid-...` (select) - - Terraform: `vapp_uid` (required) - - Пример: `WZ00400` - -- Название (Display name) - - UI name: `InstanceParameters-displayName` - - Terraform: `display_name` (required) - - Пример: `web-server-01` - -- Описание - - UI name: `InstanceParameters-description` - - Terraform: `description` (optional) - -- Имя ВМ - - UI name: `vmName-...` (input) - - Terraform: `vm_name` (required) - - Пример: `test-vm` - -- Кол-во ядер - - UI name: `vmCpu-...` (input) - - Terraform: `vm_cpu` (required) - - Пример: `1` - -- Кол-во ОЗУ - - UI name: `vmRam-...` (input) - - Terraform: `vm_ram` (required) - - Пример: `1` - -- Размер дополнительного диска - - UI name: `vmDisk-...` (input) - - Terraform: `vm_disk` (optional) - - Пример: `50` - -- IP Space (внешний IP) - - UI name: `ipSpaceName-...` (select) - - Terraform: `ip_space_name` (optional) - - Примеры опций: `no-needed`, `internet-antiddos-v1`, `internet-no-antiddos-v1`, `internet-ipv4-v1` - - Примечание: значение `no-needed` означает отсутствие внешнего IP; в нём не будет работать сбор метрик Zabbix. - -- Белый список подключения к ВМ (IP) - - UI name: `accessIpList-...` (textarea) - - Terraform: `access_ip_list` (optional, JSON string) - - Пример: `["192.168.1.1", "10.0.0.5"]` — если пустой, доступ со всех адресов. - -- По каким портам открыть доступ к ВМ - - UI name: `accessPortList-...` (input) - - Terraform: `access_port_list` (required, JSON string) - - Пример: `["22","10050"]` - -- Образ ОС - - UI name: `imageVm-...` (select) - - Terraform: `image_vm` (required) - - Опции: `RockyLinux_9-16G-cloudinit`, `Ubuntu_22-20G`, `Debian_13-20G` - -- Логин для подключения - - UI name: `userLogin-...` (input) - - Terraform: `user_login` (required) - - Пример: `myuser` - -- Публичная часть SSH-Ключа - - UI name: `userPublicKey-...` (input) - - Terraform: `user_public_key` (required) - - Пример: `ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...` - -- Шаблон Cloud-Init - - UI name: `cloudInit-...` (textarea) - - Terraform: `cloud_init` (optional, string) - - Примечание: следует держать короткие/быстрые скрипты (рекомендация: таймаут ~5 минут); запись файлов через cloud-init может быть ограничена платформой. - -- needAddZabbixTemplate - - UI name: `needAddZabbixTemplate` (checkbox) - - Terraform: `need_add_zabbix_template` (required, bool) - - Примечание: отвечает за автоматическое добавление хоста в Zabbix. - -- deletion_protection (поведение удаления) - - В UI поле редко отображается в форме создания, но поведение важно для провайдера: по умолчанию `true` — при destroy только удаление из стейта; если `false` — отправляется `suspend`. - - Terraform: `deletion_protection` (optional, default true) - -- id / status (read-only) - - Terraform: `id` (computed), `status` (computed) - ---- - -## Замечания для команды разработки 🔧 -- Сопоставление полей уже реализовано в `internal/provider/vm_resource.go` и в схеме `Schema()` — проверьте, что все перечисленные выше поля отмечены как `Required`/`Optional`/`Computed` в соответствии с формой ЛК. -- Обратить внимание на формат полей `access_port_list` и `access_ip_list` (ожидается JSON-строка). Валидация формата и примеры должны быть добавлены в документацию и/или в схему провайдера (plan validators), чтобы избежать отправки некорректных значений в API. -- `ip_space_name` имеет специальное значение `no-needed` — трактовать отдельно (особенно для включения/отключения zabbix-метрик). -- `cloud_init`: добавить рекомендацию/ограничение в документацию (таймаут, запрет на тяжёлые операции и упоминание `/var/log/cloud-init.log` для диагностики). - ---- - -## План действий (предложение) -1. Закрепить этот документ в репозитории (сделано). -2. Пройти по `internal/provider/vm_resource.go` -> `Schema()` и убедиться, что все поля присутствуют и имеют правильные атрибуты (required/optional/default). Создать issue, если найдутся расхождения. -3. Добавить unit-интеграционные тесты, проверяющие поведение `submitVMOperationParams` с параметрами из формы (особенно `access_*` и `cloud_init`). -4. Добавить в документацию (`docs/registry/resources/vm.md`) ссылку на `vm_official_instructions.md` и этот файл (по вашему разрешению). - ---- - -Если нужно, могу автоматически проверить и внести недостающие поля/валидаторы в `internal/provider/vm_resource.go` (требует правки кода). Подтвердите, если приступать к правкам кода и тестам. \ No newline at end of file diff --git a/docs/30_registry/resources/vm_modify_fields.md b/docs/30_registry/resources/vm_modify_fields.md deleted file mode 100644 index 63469a9..0000000 --- a/docs/30_registry/resources/vm_modify_fields.md +++ /dev/null @@ -1,24 +0,0 @@ -# Поля, изменяемые операцией `modify` (VM) - -_Сохранено: 2026-01-29 — извлёно из UI (страница modify) и HAR `vm.html`._ - -## Кратко -Этот документ фиксирует набор параметров виртуальной машины, которые доступны для изменения через операцию `modify` в Личном кабинете (Deck). Используйте его при разработке провайдера и тестировании `modify`-сценариев. - -## Изменяемые поля -- `vmCpu` — Количество ядер (int). Пример: `2`. -- `vmRam` — Объём оперативной памяти (GB) (int). Пример: `4`. -- `vmDisk` — Размер дополнительного диска (GB) (int, опционально). -- `ipSpaceName` — Назначение внешнего IP (select). Пример: `no-needed` (означает без внешнего IP). -- `accessIpList` — Белый список IP (JSON строка, textarea). Пример: `["192.168.1.1"]`. -- `accessPortList` — Список портов (JSON строка). Пример: `["22","10050"]`. -- `needAddZabbixTemplate` — Флаг добавления в Zabbix (bool). - -## Примечания для разработчиков -- При вызове `modify` провайдер создаёт операцию `instanceOperations` с полем `operation: "modify"` и вызывает `submitVMOperationParams`, который сопоставляет параметры по `Code` и/или `svcOperationCfsParamId` и отправляет `instanceOperationCfsParams`. -- Обязательно протестировать модификацию всех перечисленных полей с реальными HAR/интеграциями, чтобы покрыть случаи, когда API использует разные `svcOperationCfsParamId` для create и modify. -- Для `ipSpaceName` и списков доступа необходимо корректно обрабатывать значение `no-needed` и пустые списки (например, пустая `accessIpList` означает доступ со всех адресов). - ---- - -Если нужно, могу: добавить тесты на `modify` в `tests/` и/или сгенерировать пример запроса к API с нужными параметрами. Подтвердите действие. \ No newline at end of file diff --git a/docs/30_registry/resources/vm_official_instructions.md b/docs/30_registry/resources/vm_official_instructions.md deleted file mode 100644 index 3d4d99e..0000000 --- a/docs/30_registry/resources/vm_official_instructions.md +++ /dev/null @@ -1,93 +0,0 @@ -# Официальная инструкция по развёртыванию ВМ (Nubes) - -_Источник: официальный сайт Nubes — сохранено для использования в разработке — 2026-01-29_ - -## Описание -Данный сервис позволяет разворачивать виртуальные машины (ВМ) непосредственно из Личного кабинета (ЛК). - ---- - -## Доступные операции -- `create` — Создание виртуальной машины -- `delete` — Удаление виртуальной машины -- `resume` — Запуск виртуальной машины -- `suspend` — Остановка виртуальной машины - ---- - -## Параметры для развёртывания ВМ - -### Обязательные параметры -- `vappUid` — UUID vApp, в которой будет создаваться виртуальная машина. Пример: `WZ00400` -- `vmName` — Уникальное имя виртуальной машины. Пример: `test-vm` -- `vmCpu` — Количество ядер процессора. Должно быть больше 0. Пример: `1` -- `vmRam` — Объем оперативной памяти в гигабайтах. Должно быть больше 0. Пример: `1` -- `accessPortList` — Белый список портов для доступа к виртуальной машине извне в формате JSON. Пример: `["22","10050"]` -- `imageVm` — Образ операционной системы для развёртывания. Доступные значения: `RockyLinux_9-16G-cloudinit`, `Ubuntu_22-20G`, `Debian_13-20G` -- `userLogin` — Логин пользователя для SSH-доступа. По умолчанию: `myuser` -- `userPublicKey` — Публичный SSH-ключ пользователя в формате OpenSSH. Пример: `ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...` -- `needAddZabbixTemplate` — Значение истина/ложь, определяющее будет ли добавлен хост в Zabbix. Пример: `true` - -### Опциональные параметры -- `accessIpList` — Белый список IP-адресов для доступа к виртуальной машине в формате JSON. Если оставить пустым, ВМ будет доступна со всех адресов. Пример: `["192.168.1.1", "10.0.0.5"]` -- `vmDisk` — Размер дополнительного диска в гигабайтах. Должно быть больше 0. Пример: `50` -- `ipSpaceName` — Внешний IP-адрес. Если не требуется — укажите значение `"no-needed"` (в нём не будет работать сбор метрик Zabbix). -- `cloudInit` — YAML-скрипт для кастомизации системы через cloud-init. - ---- - -## Доступные образы операционных систем -- `RockyLinux_9-16G-cloudinit` — Базовый образ Rocky Linux 9 (системный диск 16 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. -- `Ubuntu_22-20G` — Образ Ubuntu Server 22.04 LTS (системный диск 20 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. -- `Debian_13-20G` — Образ Debian 13 (Trixie) (системный диск 20 ГБ). Поддержка cloud-init. Минимальные требования: 1 vCPU, 1 ГБ RAM. - ---- - -## Пример использования Cloud-init -```yaml -users: - - name: myuser - sudo: ALL=(ALL) NOPASSWD:ALL - groups: sudo - shell: /bin/bash - ssh-authorized-keys: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC... - -packages: - - nginx - -runcmd: - - systemctl enable --now nginx - - systemctl restart nginx -``` - ---- - -## Результат выполнения -После успешного развёртывания в Личном кабинете появится новая виртуальная машина с заданными характеристиками. SSH-доступ осуществляется с использованием указанных логина и публичного ключа. - ---- - -## Важные примечания и ограничения -- Для отключения внешнего IP укажите значение `"no-needed"` в параметре `ipSpaceName`. -- Параметр `cloudInit` является опциональным. -- Не рекомендуется использовать продолжительные инструкции в `cloudInit` (таймаут ~5 минут). -- Не поддерживается запись файлов через `cloudInit` (ограничение платформы). -- Не реализовано создание резервных копий ВМ через данный сервис. - ---- - -## Диагностика проблем с Cloud-init -- Основной лог-файл: `/var/log/cloud-init.log`. -- Пакет не устанавливается: - - Проверьте доступность пакета в репозитории. - - Убедитесь в правильности написания имени пакета. - - Попробуйте установить вручную: `apt install <имя_пакета>` (Debian/Ubuntu) или `dnf install <имя_пакета>` (Rocky Linux). -- Команда не выполняется: - - Проверьте наличие требуемой утилиты в системе. - - Убедитесь в правильности синтаксиса команды. - - Попробуйте выполнить команду вручную для диагностики. - ---- - -_Если нужно, могу также автоматически добавить ссылку на этот документ в `docs/registry/resources/vm.md` и/или в индекс документов — подтвердите, если хотите вставить ссылку (это предполагает изменение существующего файла)._ diff --git a/docs/30_registry/resources/vmpostgre.md b/docs/30_registry/resources/vmpostgre.md deleted file mode 100644 index 31d8dad..0000000 --- a/docs/30_registry/resources/vmpostgre.md +++ /dev/null @@ -1,13 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## MAN - -
-Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ -
diff --git a/docs/30_registry/resources/vmpostgre_example.md b/docs/30_registry/resources/vmpostgre_example.md deleted file mode 100644 index 154b121..0000000 --- a/docs/30_registry/resources/vmpostgre_example.md +++ /dev/null @@ -1,51 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Copy-ready manifest (`vmpostgre_main.tf`) - -```hcl -terraform { - required_providers { - nubes = { - source = "terra.k8c.ru/nubes/nubes" - version = "2.1.23" - } - } -} - -# Токен доступа api_token к Nubes API — замените на реальный. -provider "nubes" { - api_token = "token_***" - api_endpoint = "https://lk-api-gateway.ngcloud.ru/api/v1/svc" -} -resource "nubes_vmpostgre" "baza" { - vdc_uid = "TODO" # InstanceUid vdc. Vdc должен быть создан - nsxt_uid = "TODO" # InstanceUid nsxt. Nsxt должен быть создан - vm_uid = "TODO" # InstanceUid ВМ. ВМ должна быть создана - resource_realm = "TODO" # Ресурсная платформа - - # Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте - user_db = "servicedb" # Наименование Базы данных - user_login = "serviceuser" # Пользователь базы данных - user_password = "fj29gm48fm!d374mc9" # Пароль от доступа к Базе данных -} -``` - -## Outputs usage - -```hcl -# Выходные параметры можно использовать как -nubes_vmpostgre.baza.state_params["имя_ключа"] -nubes_vmpostgre.baza.state_out["имя_ключа"] -nubes_vmpostgre.baza.state_params_flat["имя_ключа"] -nubes_vmpostgre.baza.state_out_flat["имя_ключа"] -nubes_vmpostgre.baza.vault_secrets["имя_ключа"] -nubes_vmpostgre.baza.vault_url -nubes_vmpostgre.baza.vault_user_path -nubes_vmpostgre.baza.vault_fields -``` diff --git a/docs/30_registry/resources/vmpostgre_example_ops.md b/docs/30_registry/resources/vmpostgre_example_ops.md deleted file mode 100644 index 8a6ee0e..0000000 --- a/docs/30_registry/resources/vmpostgre_example_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_example.md) | [Parameters](vmpostgre_example_params.md) | [Operations](vmpostgre_example_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_example_params.md b/docs/30_registry/resources/vmpostgre_example_params.md deleted file mode 100644 index 8a6ee0e..0000000 --- a/docs/30_registry/resources/vmpostgre_example_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_example.md) | [Parameters](vmpostgre_example_params.md) | [Operations](vmpostgre_example_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_instruction.md b/docs/30_registry/resources/vmpostgre_instruction.md deleted file mode 100644 index 1a82133..0000000 --- a/docs/30_registry/resources/vmpostgre_instruction.md +++ /dev/null @@ -1,3 +0,0 @@ -# Инструкция для vmpostgre - -Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ diff --git a/docs/30_registry/resources/vmpostgre_man.md b/docs/30_registry/resources/vmpostgre_man.md deleted file mode 100644 index d1c54b9..0000000 --- a/docs/30_registry/resources/vmpostgre_man.md +++ /dev/null @@ -1,3 +0,0 @@ -# MAN: vmpostgre - -Сервис настройки PostgreSQL для виртуальной машины.
Требует наличия ВМ diff --git a/docs/30_registry/resources/vmpostgre_ops.md b/docs/30_registry/resources/vmpostgre_ops.md deleted file mode 100644 index 306580c..0000000 --- a/docs/30_registry/resources/vmpostgre_ops.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Operations - -- `create` — Создание кластера. Параметры: [Create params](vmpostgre_params_create.md) -- `delete` diff --git a/docs/30_registry/resources/vmpostgre_outputs.md b/docs/30_registry/resources/vmpostgre_outputs.md deleted file mode 100644 index 5c8d505..0000000 --- a/docs/30_registry/resources/vmpostgre_outputs.md +++ /dev/null @@ -1,18 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Output params - -- `state_params` (map) — параметры, отправленные в API при создании/изменении -- `state_out` (map) — ответ API с результатами/выходными значениями -- `state_params_flat` (map) — параметры в плоском виде (ключи с путями) -- `state_out_flat` (map) — ответы в плоском виде (ключи с путями) -- `vault_secrets` (map) — секреты, записанные в Vault для ресурса -- `vault_url` (string) — адрес Vault для ресурса -- `vault_user_path` (string) — путь пользователя в Vault -- `vault_fields` (list) — список ключей доступных секретов diff --git a/docs/30_registry/resources/vmpostgre_outputs_ops.md b/docs/30_registry/resources/vmpostgre_outputs_ops.md deleted file mode 100644 index eeb0378..0000000 --- a/docs/30_registry/resources/vmpostgre_outputs_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_outputs.md) | [Parameters](vmpostgre_outputs_params.md) | [Operations](vmpostgre_outputs_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_outputs_params.md b/docs/30_registry/resources/vmpostgre_outputs_params.md deleted file mode 100644 index eeb0378..0000000 --- a/docs/30_registry/resources/vmpostgre_outputs_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_outputs.md) | [Parameters](vmpostgre_outputs_params.md) | [Operations](vmpostgre_outputs_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_params.md b/docs/30_registry/resources/vmpostgre_params.md deleted file mode 100644 index 8b28da6..0000000 --- a/docs/30_registry/resources/vmpostgre_params.md +++ /dev/null @@ -1,12 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Parameters - -- [Create params](vmpostgre_params_create.md) -- [Modify params](vmpostgre_params_modify.md) diff --git a/docs/30_registry/resources/vmpostgre_params_create.md b/docs/30_registry/resources/vmpostgre_params_create.md deleted file mode 100644 index 9d0a40e..0000000 --- a/docs/30_registry/resources/vmpostgre_params_create.md +++ /dev/null @@ -1,29 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Create params - -**Обязательные параметры (вводимые пользователем)** - - - - - - - - -
IDCodeTypeDescriptionConstraints
43vdc_uiduuidInstanceUid vdc. Vdc должен быть создан
ref_svc_id=21
44nsxt_uiduuidInstanceUid nsxt. Nsxt должен быть создан
ref_svc_id=22
45vm_uiduuidInstanceUid ВМ. ВМ должна быть создана
ref_svc_id=23
859resource_realmstringРесурсная платформаfunc=getAvailableResourceRealms
- -**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте** - - - - - - -
IDCodeTypeDefaultDescriptionConstraints
46user_dbstringservicedbНаименование Базы данных
47user_loginstringserviceuserПользователь базы данных
48user_passwordstringfj29gm48fm!d374mc9Пароль от доступа к Базе данных
diff --git a/docs/30_registry/resources/vmpostgre_params_create_ops.md b/docs/30_registry/resources/vmpostgre_params_create_ops.md deleted file mode 100644 index 6c20dba..0000000 --- a/docs/30_registry/resources/vmpostgre_params_create_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_params_create.md) | [Parameters](vmpostgre_params_create_params.md) | [Operations](vmpostgre_params_create_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_params_create_params.md b/docs/30_registry/resources/vmpostgre_params_create_params.md deleted file mode 100644 index 6c20dba..0000000 --- a/docs/30_registry/resources/vmpostgre_params_create_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_params_create.md) | [Parameters](vmpostgre_params_create_params.md) | [Operations](vmpostgre_params_create_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_params_modify.md b/docs/30_registry/resources/vmpostgre_params_modify.md deleted file mode 100644 index 9ce30ad..0000000 --- a/docs/30_registry/resources/vmpostgre_params_modify.md +++ /dev/null @@ -1,11 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -## Modify params - -None. diff --git a/docs/30_registry/resources/vmpostgre_params_modify_ops.md b/docs/30_registry/resources/vmpostgre_params_modify_ops.md deleted file mode 100644 index 30a9c2a..0000000 --- a/docs/30_registry/resources/vmpostgre_params_modify_ops.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_params_modify.md) | [Parameters](vmpostgre_params_modify_params.md) | [Operations](vmpostgre_params_modify_ops.md) diff --git a/docs/30_registry/resources/vmpostgre_params_modify_params.md b/docs/30_registry/resources/vmpostgre_params_modify_params.md deleted file mode 100644 index 30a9c2a..0000000 --- a/docs/30_registry/resources/vmpostgre_params_modify_params.md +++ /dev/null @@ -1,9 +0,0 @@ -# Resource nubes_vmpostgre - -Service ID: `32` - -Service Name: vc_vm_postgresql_std - -[Manual](vmpostgre.md) | [Create params](vmpostgre_params_create.md) | [Modify params](vmpostgre_params_modify.md) | [Output params](vmpostgre_outputs.md) | [Operations](vmpostgre_ops.md) | [Example](vmpostgre_example.md) - -[Overview](vmpostgre_params_modify.md) | [Parameters](vmpostgre_params_modify_params.md) | [Operations](vmpostgre_params_modify_ops.md)