fix: stabilize Polygon config loading and sync
This commit is contained in:
@@ -22,11 +22,11 @@
|
|||||||
|
|
||||||
### Относительный путь к YAML в Polygon
|
### Относительный путь к YAML в Polygon
|
||||||
|
|
||||||
В [loader.py](site/config/loader.py) пути заданы относительно текущей рабочей директории: по умолчанию `services`, а в `POLYGON_STANDS` обычно `services/dev`, `services/test`, `services/prod`. Фактические каталоги находятся внутри `site/services/`.
|
Ранее [loader.py](site/config/loader.py) использовал пути относительно текущей рабочей директории: при запуске из корня репозитория это могло привести к поиску `<repo>/services` вместо `<repo>/site/services` и падению импорта до регистрации `/health`.
|
||||||
|
|
||||||
Инструкция Nubes Flask (`~/HowTo/howto-flask-nubes.md`) указывает запуск `python site/app.py` из корня репозитория. Если рабочая директория процесса действительно корень репозитория, загрузчик будет искать `<repo>/services`, а не `<repo>/site/services`; импорт конфигурации упадёт с `FileNotFoundError` до старта Flask и `/health`. Если платформа меняет рабочую директорию на `site`, этот путь работает. Фактический CWD деплоя и логи пода не проверены.
|
Исправление привязывает относительные значения по умолчанию и `POLYGON_STANDS` к каталогу `site/`, независимо от CWD. Регрессионные тесты импортируют полное Flask-приложение и проверяют `/health` с CWD корня репозитория и `site/`. Фактический CWD исторического деплоя и его логи не проверены, поэтому этот дефект не объявляется доказанной причиной инцидента.
|
||||||
|
|
||||||
Этот риск может объяснить неготовность приложения после создания, но сам по себе не создаёт `NXDOMAIN`: DNS-имя проверяется до соединения с Flask.
|
Этот дефект мог помешать запуску приложения, но сам по себе не создаёт `NXDOMAIN`: DNS-имя проверяется до соединения с Flask.
|
||||||
|
|
||||||
### Healthcheck
|
### Healthcheck
|
||||||
|
|
||||||
@@ -36,21 +36,21 @@
|
|||||||
|
|
||||||
`config/loader.py` перечисляет YAML только в каталогах, заданных `POLYGON_STANDS`, либо в `services/` при отсутствии этой переменной. Каждый файл открывается и разбирается один раз при импорте `config.loader`; обработчики API затем используют загруженные словари из памяти. Резервные каталоги `resources_yaml.bak-*` из `tf_provider` Polygon не сканирует.
|
`config/loader.py` перечисляет YAML только в каталогах, заданных `POLYGON_STANDS`, либо в `services/` при отсутствии этой переменной. Каждый файл открывается и разбирается один раз при импорте `config.loader`; обработчики API затем используют загруженные словари из памяти. Резервные каталоги `resources_yaml.bak-*` из `tf_provider` Polygon не сканирует.
|
||||||
|
|
||||||
Следовательно, старый YAML может оставить устаревший сервис или параметры в ответах API и способен помешать запуску, если файл невалиден или отсутствует ожидаемый каталог. Но в коде нет основания заключать, что чтение старых YAML вызвало заметную задержку, а тем более DNS `NXDOMAIN`. Время загрузки YAML отдельно не измерялось.
|
Следовательно, старый YAML может оставить устаревший сервис или параметры в ответах API и способен помешать запуску, если файл невалиден или отсутствует ожидаемый каталог. Генератор `from_stands.py` теперь удаляет YAML, отсутствующие в источнике, после полной успешной конвертации; если есть ошибки, очистка не выполняется. DEV, TEST и PROD копии были перегенерированы из текущих соответствующих каталогов `tf_provider`; fallback `services/` — из DEV. Время загрузки YAML отдельно не измерялось, и нет основания связывать чтение старых файлов с DNS `NXDOMAIN`.
|
||||||
|
|
||||||
**Исправление прежнего ответа:** оценки размера и времени чтения YAML, а также предположение о конкретном negative-cache TTL DNS ранее были приведены без измерений и не являются установленными фактами. То, что адрес позднее открылся, доказывает только, что в момент повторной проверки он разрешался и отвечал; почему это изменилось, без DNS-диагностики и журналов Nubes неизвестно.
|
**Исправление прежнего ответа:** оценки размера и времени чтения YAML, а также предположение о конкретном negative-cache TTL DNS ранее были приведены без измерений и не являются установленными фактами. То, что адрес позднее открылся, доказывает только, что в момент повторной проверки он разрешался и отвечал; почему это изменилось, без DNS-диагностики и журналов Nubes неизвестно.
|
||||||
|
|
||||||
Локальные удаления YAML в Polygon не отправлялись в Gitea и не развёртывались, поэтому сами по себе не меняли работающий сервис.
|
Удаление четырёх старых копий `27_vc_vm_v2.yaml` не могло объяснить восстановление DNS: эти YAML влияют на содержимое API, а не на DNS-запись.
|
||||||
|
|
||||||
## Что проверить для точного диагноза
|
## Что проверить для точного диагноза
|
||||||
|
|
||||||
1. В карточке инстанса: фактические `startupConfiguration.resourceRealm`, `accessConfiguration.domain`, `appConfiguration.gitPath`, `appConfiguration.healthPath` и `state_out.connectionUrl`.
|
1. В карточке инстанса: фактические `startupConfiguration.resourceRealm`, `accessConfiguration.domain`, `appConfiguration.gitPath`, `appConfiguration.healthPath` и `state_out.connectionUrl`.
|
||||||
2. У операции `create`: список `stages`, результат каждой стадии и `errorLog`, особенно стадии DNS и запуска приложения.
|
2. У операции `create`: список `stages`, результат каждой стадии и `errorLog`, особенно стадии DNS и запуска приложения.
|
||||||
3. В логах пода: статус контейнера и traceback. Ошибка `Services directory not found: services` подтвердит проблему CWD/YAML-пути.
|
3. В логах пода: статус контейнера и traceback. Для старой опубликованной версии ошибка `Services directory not found: services` указывала бы на проблему CWD/YAML-пути.
|
||||||
4. В DNS: существует ли A-запись для точного `state_out.connectionUrl` и указывает ли она на ingress выбранного resource realm.
|
4. В DNS: существует ли A-запись для точного `state_out.connectionUrl` и указывает ли она на ingress выбранного resource realm.
|
||||||
|
|
||||||
## Вывод
|
## Вывод
|
||||||
|
|
||||||
Непосредственно `DNS_PROBE_FINISHED_NXDOMAIN` означает отсутствие разрешаемой DNS-записи для запрошенного имени. Наиболее важные проверки — сопоставить `domain` с `state_out.connectionUrl` и изучить DNS-стадию. Отдельно нужно проверить рабочую директорию процесса: текущий `loader.py` использует относительные пути и может не найти YAML при запуске из корня репозитория.
|
Непосредственно `DNS_PROBE_FINISHED_NXDOMAIN` означает отсутствие разрешаемой DNS-записи для запрошенного имени. Наиболее важные проверки — сопоставить `domain` с `state_out.connectionUrl` и изучить DNS-стадию. Риск CWD/YAML-путей исправлен в коде и покрыт регрессионными тестами, но точная причина исторического инцидента остаётся неизвестной.
|
||||||
|
|
||||||
`tf_provider` — источник истины для схемы Flask; его YAML в рамках этого анализа не менялись.
|
`tf_provider` — источник истины для схемы Flask; его YAML в рамках этого анализа не менялись.
|
||||||
@@ -56,7 +56,7 @@ Polygon эмулирует API Nubes. Чтобы знать какие серв
|
|||||||
неудобном для полигона. Поэтому есть двухэтапный процесс:
|
неудобном для полигона. Поэтому есть двухэтапный процесс:
|
||||||
|
|
||||||
```
|
```
|
||||||
~/tf_provider/generated/{dev,test,prod}/resources_yaml/*.yaml ← источник (терраформ)
|
~/TF/tf_provider/generated/{dev,test,prod}/resources_yaml/*.yaml ← источник истины
|
||||||
│
|
│
|
||||||
│ from_stands.py — конвертация формата, дедупликация, нормализация
|
│ from_stands.py — конвертация формата, дедупликация, нормализация
|
||||||
│ Запускается ВРУЧНУЮ при изменении терраформ-репы
|
│ Запускается ВРУЧНУЮ при изменении терраформ-репы
|
||||||
@@ -67,7 +67,7 @@ polygon/site/services/{dev,test,prod}/*.yaml ← скоммичены в git-
|
|||||||
│ config/loader.py — загрузка ВСЕХ YAML в память при старте
|
│ config/loader.py — загрузка ВСЕХ YAML в память при старте
|
||||||
│
|
│
|
||||||
▼
|
▼
|
||||||
Память Flask-процесса (~0.7 MB на 3 стенда)
|
Память Flask-процесса (конфиги загружаются один раз при старте)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Почему нельзя читать терраформ-формат напрямую?
|
### Почему нельзя читать терраформ-формат напрямую?
|
||||||
@@ -90,9 +90,9 @@ polygon/site/services/{dev,test,prod}/*.yaml ← скоммичены в git-
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd site
|
cd site
|
||||||
python from_stands.py ~/tf_provider/generated/dev/resources_yaml services/dev
|
python from_stands.py ~/TF/tf_provider/generated/dev/resources_yaml services/dev
|
||||||
python from_stands.py ~/tf_provider/generated/test/resources_yaml services/test
|
python from_stands.py ~/TF/tf_provider/generated/test/resources_yaml services/test
|
||||||
python from_stands.py ~/tf_provider/generated/prod/resources_yaml services/prod
|
python from_stands.py ~/TF/tf_provider/generated/prod/resources_yaml services/prod
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
git add services/
|
git add services/
|
||||||
@@ -101,6 +101,8 @@ git push
|
|||||||
# → редеплоить polygon через Nubes UI
|
# → редеплоить polygon через Nubes UI
|
||||||
```
|
```
|
||||||
|
|
||||||
|
После успешной конвертации генератор удаляет из целевого каталога YAML, которых больше нет в источнике. Если конвертация завершилась ошибками, устаревшие файлы не удаляются.
|
||||||
|
|
||||||
### Как проверить что всё загрузилось?
|
### Как проверить что всё загрузилось?
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -21,6 +21,14 @@ import yaml
|
|||||||
|
|
||||||
_YAML_EXTS = (".yaml", ".yml")
|
_YAML_EXTS = (".yaml", ".yml")
|
||||||
_DEFAULT_SERVICES_DIR = "services"
|
_DEFAULT_SERVICES_DIR = "services"
|
||||||
|
_SITE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
|
||||||
|
|
||||||
|
def _resolve_services_dir(services_dir):
|
||||||
|
"""Resolve configured relative paths from site/, independent of process CWD."""
|
||||||
|
if not os.path.isabs(services_dir):
|
||||||
|
services_dir = os.path.join(_SITE_DIR, services_dir)
|
||||||
|
return os.path.abspath(services_dir)
|
||||||
|
|
||||||
|
|
||||||
def _load_one(services_dir):
|
def _load_one(services_dir):
|
||||||
@@ -69,7 +77,7 @@ else:
|
|||||||
|
|
||||||
STANDS = {}
|
STANDS = {}
|
||||||
for _sid, _sdir in _stand_dirs.items():
|
for _sid, _sdir in _stand_dirs.items():
|
||||||
_svc, _ops = _load_one(_sdir)
|
_svc, _ops = _load_one(_resolve_services_dir(_sdir))
|
||||||
STANDS[_sid] = {"SERVICES": _svc, "OPS_INDEX": _ops}
|
STANDS[_sid] = {"SERVICES": _svc, "OPS_INDEX": _ops}
|
||||||
|
|
||||||
DEFAULT_STAND = next(iter(STANDS.keys()))
|
DEFAULT_STAND = next(iter(STANDS.keys()))
|
||||||
|
|||||||
@@ -309,6 +309,7 @@ def main():
|
|||||||
|
|
||||||
converted = 0
|
converted = 0
|
||||||
errors = 0
|
errors = 0
|
||||||
|
converted_names = set()
|
||||||
|
|
||||||
for fname in yaml_files:
|
for fname in yaml_files:
|
||||||
src = os.path.join(stands_dir, fname)
|
src = os.path.join(stands_dir, fname)
|
||||||
@@ -328,6 +329,7 @@ def main():
|
|||||||
sort_keys=False,
|
sort_keys=False,
|
||||||
width=200,
|
width=200,
|
||||||
)
|
)
|
||||||
|
converted_names.add(fname)
|
||||||
|
|
||||||
# Быстрая проверка результата
|
# Быстрая проверка результата
|
||||||
svc_name = cfg.get("name", "?")
|
svc_name = cfg.get("name", "?")
|
||||||
@@ -343,6 +345,16 @@ def main():
|
|||||||
print(f" FAIL {fname}: {e}")
|
print(f" FAIL {fname}: {e}")
|
||||||
errors += 1
|
errors += 1
|
||||||
|
|
||||||
|
if errors == 0:
|
||||||
|
stale_yaml = sorted(
|
||||||
|
fname
|
||||||
|
for fname in os.listdir(services_dir)
|
||||||
|
if fname.lower().endswith(YAML_EXTS) and fname not in converted_names
|
||||||
|
)
|
||||||
|
for fname in stale_yaml:
|
||||||
|
os.remove(os.path.join(services_dir, fname))
|
||||||
|
print(f" REMOVE {fname}: not present in source")
|
||||||
|
|
||||||
print()
|
print()
|
||||||
print(f"Done: {converted} converted, {errors} errors")
|
print(f"Done: {converted} converted, {errors} errors")
|
||||||
|
|
||||||
|
|||||||
@@ -127,10 +127,16 @@ cfsParams:
|
|||||||
- SSHFP
|
- SSHFP
|
||||||
- svcOperationCfsParamId: 780
|
- svcOperationCfsParamId: 780
|
||||||
svcOperationCfsParam: recordInput
|
svcOperationCfsParam: recordInput
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: '[{}]'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
record:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 781
|
- svcOperationCfsParamId: 781
|
||||||
svcOperationCfsParam: recordName
|
svcOperationCfsParam: recordName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -144,16 +150,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
recordName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recordTTL:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '3600'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recordType:
|
recordType:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: A
|
defaultValue: A
|
||||||
@@ -169,11 +165,22 @@ cfsParams:
|
|||||||
- LUA
|
- LUA
|
||||||
- NS
|
- NS
|
||||||
- SSHFP
|
- SSHFP
|
||||||
|
- CAA
|
||||||
|
recordName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
recordInput:
|
recordInput:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
recordTTL:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3600'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 783
|
- svcOperationCfsParamId: 783
|
||||||
svcOperationCfsParam: recordName
|
svcOperationCfsParam: recordName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -204,10 +211,16 @@ cfsParams:
|
|||||||
- SSHFP
|
- SSHFP
|
||||||
- svcOperationCfsParamId: 786
|
- svcOperationCfsParamId: 786
|
||||||
svcOperationCfsParam: recordInput
|
svcOperationCfsParam: recordInput
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: '[{}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
record:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
254:
|
254:
|
||||||
- 761
|
- 761
|
||||||
|
|||||||
@@ -2,7 +2,54 @@ name: mariadb
|
|||||||
service_id: 115
|
service_id: 115
|
||||||
service_display_name: Mariadb
|
service_display_name: Mariadb
|
||||||
service_short_name: mariadb
|
service_short_name: mariadb
|
||||||
service_man: 'Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.<br/>Автоматическое резервное копирование, ручное восстановление.'
|
service_man: '# Инструкция по развертыванию MariaDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MariaDB — реляционная база данных, совместимая с MySQL. Разворачивается через `mariadb-operator`
|
||||||
|
в Kubernetes.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание кластера<br/>* **delete** — удаление кластера<br/>* **suspend** — остановка кластера (под реально останавливается,
|
||||||
|
ресурсы не потребляются)<br/>* **resume** — запуск ранее остановленного кластера<br/>* **modify** — изменение параметров кластера<br/>* **reconcile** — синхронизация состояния инстанса с платформой<br/><br/>###
|
||||||
|
Доступные операции с базами данных<br/><br/>* **create_database** — создание базы данных<br/>* **delete_database** — удаление базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user**
|
||||||
|
— создание пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания кластера<br/><br/>### Платформа для развертывания (`startupConfiguration.resourceRealm`)<br/><br/>Среда,
|
||||||
|
в которой будет развёрнут кластер.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>JSON-объект:<br/>* `cpu` — квота CPU пода в миликорах (1000 = 1 vCPU). Пример: `500`<br/>* `memory`
|
||||||
|
— квота памяти пода в мегабайтах. Пример: `512`<br/>* `disk` — размер диска в гигабайтах. Пример: `10`<br/>* `replicas` — количество реплик. Сервис работает в режиме одного primary-узла (Galera выключена),
|
||||||
|
значение `0` эквивалентно остановке кластера.<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Поддерживаются только две версии: `8.4.0` и `9.4.0`.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`masterIpSpace` — имя ipSpace для выделения внешнего IP. Укажите `no-needed`, если внешний адрес не требуется.<br/>* `masterAccessList` — список IP/подсетей, которым разрешён доступ к порту 3306 снаружи.
|
||||||
|
Пустой список — доступ не ограничен на уровне firewall (в рамках выделенного ipSpace).<br/><br/>### Резервное копирование (`backupConfiguration`)<br/><br/>JSON-объект:<br/>* `s3Uid` — идентификатор S3-пользователя/квоты
|
||||||
|
для бэкапов.<br/>* `schedule` — cron-выражение расписания бэкапов. По умолчанию `0 0 * * *` (раз в сутки в полночь).<br/>* `retain` — время хранения бэкапов **в часах** (не в днях!). По умолчанию `7`
|
||||||
|
— то есть 7 часов. При суточном расписании этого значения обычно недостаточно, чтобы между двумя бэкапами всегда оставалась хотя бы одна валидная копия — рекомендуется указывать `retain` явно, с запасом
|
||||||
|
(например `720` = 30 суток).<br/><br/>> **Важно:** расписание и срок хранения бэкапов задаются **только при создании кластера**. Оператор MariaDB не позволяет изменить cron-расписание бэкапа после создания
|
||||||
|
(поле `spec.schedule.cron` неизменяемо на уровне admission-вебхука самого оператора) — поэтому эти параметры недоступны для изменения через `modify`.<br/><br/>> **Восстановление из бэкапа пока не реализовано
|
||||||
|
как самостоятельная операция платформы.** Бэкапы физически хранятся в S3-бакете инстанса (`technicals3backup-<instanceUid>`, префикс `mariadb/backups/`). Если нужно восстановить данные из бэкапа — бэкап
|
||||||
|
нужно **скачать из S3 и применить к базе вручную** (например через `mariabackup`/`mariadb-backup` restore или соответствующий инструмент).<br/><br/>### Автомасштабирование диска (`autoscaleConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`enabled` — включить автоматическое расширение диска при исчерпании места.<br/>* `quota` — максимальный размер диска, до которого разрешено автоматическое расширение (не может быть меньше `clusterConfiguration.disk`).<br/>*
|
||||||
|
`percent`, `schedule` — параметры триггера автомасштабирования.<br/><br/>---<br/><br/>## 3. Параметры модификации кластера<br/><br/>Все параметры модификации, кроме версии, можно как увеличивать, так
|
||||||
|
и уменьшать (кроме диска — см. ниже) — система подставит текущие сохранённые значения, если их не менять.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>* `cpu`, `memory` — можно
|
||||||
|
менять в любую сторону.<br/>* `disk` — можно **только увеличивать**, уменьшение уже выделенного размера не поддерживается.<br/>* `replicas` — `0` останавливает кластер тем же образом, что и `suspend`
|
||||||
|
(альтернативный способ временной остановки через `modify`).<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Можно только повышать версию (`8.4.0 → 9.4.0`). Попытка понизить версию
|
||||||
|
будет отклонена с явной ошибкой ещё до применения изменений.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>Можно включить внешний доступ (было `no-needed` → указали реальный `masterIpSpace`),
|
||||||
|
изменить список разрешённых IP, либо полностью отключить внешний доступ (`masterIpSpace: no-needed`) — в этом случае внешний Service, DNS-запись и правило firewall будут корректно откреплены и удалены.<br/><br/>###
|
||||||
|
Резервное копирование<br/><br/>Не передаётся при модификации — расписание и срок хранения бэкапов фиксируются на этапе `create` (см. п.2).<br/><br/>---<br/><br/>## 4. Параметры создания базы данных (`create_database`)<br/><br/>###
|
||||||
|
Имя базы данных (`dbName`)<br/><br/>Строка с именем новой базы. Не может совпадать с зарезервированными системными именами: `mysql`, `sys`, `information_schema`, `performance_schema`. База с таким же
|
||||||
|
именем не должна уже существовать в кластере.<br/><br/>---<br/><br/>## 5. Параметры удаления базы данных (`delete_database`)<br/><br/>### Имя базы данных (`dbName`)<br/><br/>База должна существовать в
|
||||||
|
кластере. Удаление будет отклонено, если к базе всё ещё привязаны пользователи — сначала нужно снять доступ (`delete_user`) у всех пользователей, ссылающихся на эту базу.<br/><br/>---<br/><br/>## 6. Параметры
|
||||||
|
создания пользователя (`create_user`)<br/><br/>### Имя пользователя (`username`)<br/><br/>Не может быть `root`, `healthcheck` или `mariadb.sys` — эти имена зарезервированы платформой/оператором. Пользователь
|
||||||
|
с таким именем не должен уже существовать в кластере — операция сверяется с текущим стейтом сервиса и отклоняется, если имя занято.<br/><br/>### Пароль (`password`)<br/><br/>Пароль для подключения от
|
||||||
|
имени создаваемого пользователя.<br/><br/>### Базы данных (`dbName`)<br/><br/>JSON-массив вида `[{"dbname": "имя_базы"}]` — список баз, к которым выдаётся полный доступ (`ALL PRIVILEGES`). Все перечисленные
|
||||||
|
базы должны уже существовать в кластере (создать заранее через `create_database`).<br/><br/>> Ограничения доступа по IP/подсети на уровне пользователя больше нет — `user@host` в самой MariaDB всегда `%`.
|
||||||
|
Доступ к порту 3306 контролируется только на уровне инстанса через `accessConfiguration.masterAccessList`, задаваемый при `create`/`modify` (см. п.2/п.3).<br/><br/>---<br/><br/>## 7. Параметры удаления
|
||||||
|
пользователя (`delete_user`)<br/><br/>### Имя пользователя (`username`)<br/><br/>Пользователь должен существовать в кластере. `root`/`healthcheck`/`mariadb.sys` удалить нельзя.<br/><br/>---<br/><br/>##
|
||||||
|
8. Выходные параметры<br/><br/>### internalConnect<br/><br/>Внутренний адрес для подключения из сервисов, работающих в том же кластере Kubernetes:<br/>```json<br/>{<br/> "master": {<br/> "dns": "<clusterResourceName>.<namespace>.svc.<domain>",<br/> "ip":
|
||||||
|
null,<br/> "port": 3306<br/> }<br/>}<br/>```<br/><br/>### externalConnect<br/><br/>Присутствует в выходных данных, **только если** был запрошен внешний доступ (`accessConfiguration.masterIpSpace`
|
||||||
|
отличен от `no-needed`). Если внешний доступ не запрошен или был отключён через `modify` — этого блока не будет вовсе (пустой блок в состояние не пишется):<br/>```json<br/>{<br/> "master": {<br/> "dns":
|
||||||
|
"write.<namespace>.<domain>",<br/> "ip": "<внешний IP>",<br/> "port": 3306<br/> }<br/>}<br/>```<br/><br/>---<br/><br/>## 9. Пример подключения<br/><br/>### 9.1 Изнутри кластера / того же namespace<br/><br/>```bash<br/>mariadb
|
||||||
|
-h <internalConnect.dns> -P 3306 -u <username> -p<br/>```<br/><br/>### 9.2 Через port-forward<br/><br/>```bash<br/>kubectl port-forward svc/<clusterResourceName> 3306:3306 -n <namespace><br/>```<br/><br/>**Важно:**
|
||||||
|
после `port-forward` подключайтесь именно по `127.0.0.1`, а не `localhost`:<br/><br/>```bash<br/>mariadb -h 127.0.0.1 -P 3306 -u <username> -p<br/>```<br/><br/>Клиент `mysql`/`mariadb` при указании `-h
|
||||||
|
localhost` **игнорирует TCP/порт** и всегда пытается подключиться через локальный unix-сокет (`/var/lib/mysql/mysql.sock`), которого на вашей машине нет — подключение упадёт с `ERROR 2002 (HY000): Can''t
|
||||||
|
connect to local server through socket`. `127.0.0.1` форсирует реальное TCP-подключение. Также не забывайте `-P` (порт) с заглавной буквы — строчная `-p` относится к паролю.<br/><br/>### 9.3 Снаружи (внешний
|
||||||
|
адрес)<br/><br/>```bash<br/>mariadb -h <externalConnect.ip или externalConnect.dns> -P 3306 -u <username> -p<br/>```<br/><br/>Доступно только если при создании/модификации был указан реальный `masterIpSpace`
|
||||||
|
и подключающийся IP входит в `accessConfiguration.masterAccessList` (или список пуст).<br/><br/>Где:<br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль пользователя<br/><br/>---<br/><br/>##
|
||||||
|
10. Дополнительная информация<br/><br/>* Расписание бэкапов (`backupConfiguration.schedule`/`retain`) задаётся один раз при создании и не может быть изменено позже — ограничение самого `mariadb-operator`,
|
||||||
|
а не платформы.<br/>* Версию MariaDB можно только повышать, откат на более старую версию не поддерживается.<br/>* Размер диска можно только увеличивать.<br/>* `suspend` реально останавливает под (масштабирование
|
||||||
|
StatefulSet в 0 реплик), а не просто помечает кластер как приостановленный — расход ресурсов CPU/RAM/диска (кроме уже занятого диска) прекращается.<br/>* При отключении внешнего доступа через `modify`
|
||||||
|
(`masterIpSpace: no-needed`) внешний Service, DNS-запись и правило firewall удаляются, а `externalConnect` пропадает из выходных данных.<br/>* Самостоятельного восстановления из бэкапа (операции `restore`)
|
||||||
|
пока нет. Бэкапы лежат в S3 инстанса — восстановление данных в существующий кластер выполняется вручную, скачиванием и применением бэкапа самим владельцем инстанса.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -64,10 +111,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 878
|
- svcOperationCfsParamId: 878
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -75,11 +121,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '500'
|
defaultValue: '500'
|
||||||
@@ -97,6 +138,11 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '1'
|
- '1'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 879
|
- svcOperationCfsParamId: 879
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -134,7 +180,7 @@ cfsParams:
|
|||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
@@ -194,19 +240,19 @@ cfsParams:
|
|||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: db-aah92zcm
|
defaultValue: db-nmdlrebb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 735
|
- svcOperationCfsParamId: 735
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: usero6y8ruyp
|
defaultValue: useroxxeykhb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 736
|
- svcOperationCfsParamId: 736
|
||||||
svcOperationCfsParam: password
|
svcOperationCfsParam: password
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: kgocowba
|
defaultValue: apsyfstb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 737
|
- svcOperationCfsParamId: 737
|
||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
@@ -220,12 +266,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 738
|
|
||||||
svcOperationCfsParam: accessHosts
|
|
||||||
dataType: string
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: '%'
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 456
|
- svcOperationCfsParamId: 456
|
||||||
svcOperationCfsParam: deleteS3Bucket
|
svcOperationCfsParam: deleteS3Bucket
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
@@ -308,28 +348,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 8.4.0
|
- 8.4.0
|
||||||
- 9.4.0
|
- 9.4.0
|
||||||
- svcOperationCfsParamId: 886
|
|
||||||
svcOperationCfsParam: backupConfiguration
|
|
||||||
dataType: map-fixed
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: true
|
|
||||||
dataDescriptor:
|
|
||||||
retain:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
schedule:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
s3Uid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 887
|
- svcOperationCfsParamId: 887
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -383,7 +401,6 @@ cfsParamsByOp:
|
|||||||
- 735
|
- 735
|
||||||
- 736
|
- 736
|
||||||
- 737
|
- 737
|
||||||
- 738
|
|
||||||
139:
|
139:
|
||||||
- 456
|
- 456
|
||||||
248:
|
248:
|
||||||
@@ -394,14 +411,13 @@ cfsParamsByOp:
|
|||||||
- 883
|
- 883
|
||||||
- 884
|
- 884
|
||||||
- 885
|
- 885
|
||||||
- 886
|
|
||||||
- 887
|
- 887
|
||||||
287: []
|
287: []
|
||||||
141: []
|
141: []
|
||||||
140: []
|
140: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"disk": 10, "cpu": 500, "memory": 512, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
mariadbConfiguration: '{"version": "9.4.0"}'
|
mariadbConfiguration: '{"version": "9.4.0"}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
||||||
|
|||||||
@@ -2,21 +2,24 @@ name: kafka
|
|||||||
service_id: 116
|
service_id: 116
|
||||||
service_display_name: ApacheKafka
|
service_display_name: ApacheKafka
|
||||||
service_short_name: kafka
|
service_short_name: kafka
|
||||||
service_man: '# Инструкция по развертыванию Организация в Cloud Director через платформу<br/><br/>## 1. Общая информация<br/><br/>Сервис **Организация в Cloud Director** предназначен для управления изолированными
|
service_man: "# Инструкция по развертыванию Apache Kafka через платформу<br/><br/>---<br/>## 1. Общая информация<br/>Брокер сообщений Apache Kafka — это отказоустойчивая распределённая платформа для обмена\
|
||||||
организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль
|
\ сообщениями и потоковой обработки данных в реальном времени.<br/>Позволяет надёжно передавать события между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние,\
|
||||||
уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.<br/><br/>### Доступные операции<br/><br/>**create**
|
\ так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.<br/><br/>## Доступные операции<br/>- **create** — Создание кластера<br/>- **delete** — Удаление кластера<br/>-\
|
||||||
— Создание новой организации с заданными характеристиками и типом доступа.<br/>**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.<br/>**modify**
|
\ **suspend** — Остановка кластера<br/>- **resume** — Запуск кластера<br/><br/>- **create_topic** — Создание топика<br/>- **modify_topic** — Модификация топика<br/>- **delete_topic** — Удаление\
|
||||||
— Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).<br/>**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.<br/>**resume**
|
\ топика<br/><br/>- **create_user** — Создание пользователя<br/>- **modify_user** — Модификация пользователя<br/>- **delete_user** — Удаление пользователя<br/><br/><br/>---<br/>## 2. Параметры\
|
||||||
— Разморозка организации, восстановление функций управления.<br/><br/>---<br/><br/>## 2. Параметры развертывания<br/><br/>Параметры входных данных операции **create**:<br/><br/>### Платформа для развертывания<br/>Описание:
|
\ развертывания кластера<br/>Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:<br/><br/>* **Платформа для развертывания:**<br/> Платформа для развертывания (среда, в\
|
||||||
платформа, на которой будет создана организация.<br/>Пример значения: `ngcloud.ru`.<br/><br/>### Тип организации<br/>Описание: тип создаваемой организации.<br/>Варианты:<br/>- `iaas` — организация с прямым
|
\ которой будет развернут кластер). Пример: `\tk8s-3.ext.nubes.ru`.<br/><br/>* **Количество узлов в сети:**<br/> Количество узлов (брокеров) в кластере Kafka<br/><br/>* **Квота (megabyte) памяти пода:**<br/>\
|
||||||
доступом к облаку и авторизацией через Keycloak.<br/>- `saas` — организация под управлением Nubes, без прямого доступа к облаку.<br/><br/>---<br/><br/>## 3. Рекомендованные характеристики<br/><br/>###
|
\ Квота памяти пода в мегабайтах. Пример: `2048`<br/><br/>* **Квота (millicore ) ядра пода:**<br/> Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`<br/><br/>* **Размер (gigabyte) диска\
|
||||||
Тестовое окружение<br/>- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.<br/><br/>### Промышленное окружение<br/>- Тип организации: `saas` (упрощённая
|
\ для базы данных:**<br/> Размер диска для хранения данных в гигабайтах. Пример: `20`<br/><br/>* **Выделяет внешний IP для доступа к master:**<br/> Флаг, определяющий, нужно ли выделять внешний IP для\
|
||||||
модель использования).<br/><br/>---<br/><br/>## 4. Выходные параметры<br/><br/>Услуга предоставляет следующие выходные параметры (формируются в процессе операций):<br/><br/>### Идентификатор организации<br/>Уникальный
|
\ доступа к master-брокеру. Пример: `true` или `false`<br/><br/>* **Имя ipSpace для публикации внешнего IP**<br/> Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`<br/><br/>---<br/>##\
|
||||||
идентификатор созданной организации. Используется для всех дальнейших API-операций.<br/><br/>### Статус организации<br/>Отражает текущее состояние: active, suspended, modifying, deleting.<br/><br/>###
|
\ 4. Выходные параметры<br/>После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.<br/>Ключевыми из них являются:<br/><br/>**internalConnect** (выдаётся только при работе кластера\
|
||||||
Параметры сети<br/>Выходные данные при наличии ipSpaces: список выделенных внешних IP, имя ip_space, количество IP.<br/><br/>---<br/><br/>## 5. Дополнительная информация<br/><br/>- Для конфигурации внешних
|
\ по внутренним адресам)<br/>Внутренние эндпоинты для подключения из сервисов, развёрнутых внутри того же Kubernetes-кластера.<br/>```yaml<br/>internalConnect:<br/> bootstrap:<br/> fqdn: \"<serviceName>-kafka-tls-bootstrap.<namespace>.svc.<clusterDomain>\"\
|
||||||
IP внутри организации необходимо предварительно создать:<br/>-- хотя бы один **Виртуальный датацентр (VDC)**;<br/>-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к этой организации.<br/>-
|
<br/> port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"<serviceName>-<serviceName>-pool-0.<serviceName>-kafka-brokers.<namespace>.svc.<clusterDomain>\"<br/> port: 9093<br/>```<br/><br/>**externalConnect**\
|
||||||
Удаление организации возможно только через 14 дней после перевода в состояние suspend.<br/>- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок
|
\ (выдаётся только при выделении внешнего IP)<br/>Внешние эндпоинты, зарегистрированные в DNS.<br/>```yaml<br/>externalConnect:<br/> bootstrap:<br/> fqdn: \"bootstrap.<namespace>.<dnsZone>\"<br/>\
|
||||||
и иных объектов.<br/>- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.<br/>- Для iaas-организаций доступ осуществляется через Keycloak.<br/><br/>'
|
\ port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"broker-1.<namespace>.<dnsZone>\"<br/> port: 9093<br/>```<br/><br/>Заполняется **только один** из параметров:<br/>- при внешней аллокации\
|
||||||
|
\ (`loadbalancer`) — `externalConnect`, `internalConnect` остаётся пустым;<br/>- при внутреннем режиме — `internalConnect`, `externalConnect` остаётся пустым.<br/><br/>Для подключения используются следующие\
|
||||||
|
\ порты:<br/><br/>* 9092 — внутренний нешифрованный доступ (plain).<br/>* 9093 — внутренний и внешний доступ по TLS, с обязательной TLS-аутентификацией.<br/><br/>---<br/>## 5. Дополнительная информация<br/>Для\
|
||||||
|
\ создания топиков, пользователей и управления ими, а также для интеграции с кластерами Kafka используйте соответствующие сервисы и раздел \"Облачные сервисы\".<br/>---"
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -82,10 +85,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1085
|
- svcOperationCfsParamId: 1085
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
|
|||||||
@@ -47,10 +47,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 551
|
- svcOperationCfsParamId: 551
|
||||||
svcOperationCfsParam: resourceMemory
|
svcOperationCfsParam: resourceMemory
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
|
|||||||
@@ -85,10 +85,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 838
|
- svcOperationCfsParamId: 838
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -116,6 +115,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
shards:
|
shards:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -125,11 +129,6 @@ cfsParams:
|
|||||||
- '1'
|
- '1'
|
||||||
- '2'
|
- '2'
|
||||||
- '3'
|
- '3'
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 839
|
- svcOperationCfsParamId: 839
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -216,20 +215,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
quota:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '100'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -248,6 +233,20 @@ cfsParams:
|
|||||||
- '5'
|
- '5'
|
||||||
- '12'
|
- '12'
|
||||||
- '23'
|
- '23'
|
||||||
|
quota:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 851
|
- svcOperationCfsParamId: 851
|
||||||
svcOperationCfsParam: clickhouseFilesConfiguration
|
svcOperationCfsParam: clickhouseFilesConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -434,15 +433,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: false,true
|
defaultValue: false,true
|
||||||
@@ -463,6 +453,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 850
|
- svcOperationCfsParamId: 850
|
||||||
svcOperationCfsParam: clickhouseFilesConfiguration
|
svcOperationCfsParam: clickhouseFilesConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -514,10 +513,10 @@ cfsParamsByOp:
|
|||||||
182: []
|
182: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 2048, "replicas": 1, "shards": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 2048, "replicas": 1, "disk": 10, "shards": 1}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
||||||
clickhouseConfiguration: '{"version": "25.10"}'
|
clickhouseConfiguration: '{"version": "25.10"}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
autoscaleConfiguration: '{"quota": 100, "percent": 10, "enabled": false, "schedule": 0}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ name: s3
|
|||||||
service_id: 12
|
service_id: 12
|
||||||
service_display_name: S3 Object Storage
|
service_display_name: S3 Object Storage
|
||||||
service_short_name: s3
|
service_short_name: s3
|
||||||
service_man: Руководство доступно по ссылке:<br/>https://docs.s3.msk-1.ngcloud.ru/s3/s3.description.html
|
service_man: Руководство доступно по ссылке:<br/>https://docs.s3-website.msk-1.ngcloud.ru/
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
|
|||||||
@@ -19,6 +19,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
clusterName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: k8s-6sa9dyug
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
resourceRealm:
|
resourceRealm:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: sandbox.nubes.ru
|
defaultValue: sandbox.nubes.ru
|
||||||
@@ -26,9 +31,14 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- sandbox.nubes.ru
|
- sandbox.nubes.ru
|
||||||
clusterName:
|
providerVdc:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-ywasgmh6
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
networkProvider:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 772
|
- svcOperationCfsParamId: 772
|
||||||
@@ -40,10 +50,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -82,6 +93,18 @@ cfsParams:
|
|||||||
defaultValue: '[{}]'
|
defaultValue: '[{}]'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
groupName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: workers-5tcvtwk4
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
sizingPolicy:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '{}'
|
||||||
sizingDisk:
|
sizingDisk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '50'
|
defaultValue: '50'
|
||||||
@@ -92,18 +115,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
groupName:
|
autoscale:
|
||||||
dataType: string
|
dataType: boolean
|
||||||
defaultValue: workers-gj7zkkhv
|
defaultValue: 'false'
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
sizingPolicy:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '{}'
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 775
|
- svcOperationCfsParamId: 775
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -111,18 +148,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
needExternalAddressIngress:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'true'
|
|
||||||
accessIpListIngress:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
needExternalAddressAPI:
|
needExternalAddressAPI:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -135,6 +160,18 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
needExternalAddressIngress:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
accessIpListIngress:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
258:
|
258:
|
||||||
- 771
|
- 771
|
||||||
@@ -143,8 +180,8 @@ cfsParamsByOp:
|
|||||||
- 774
|
- 774
|
||||||
- 775
|
- 775
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "sandbox.nubes.ru", "clusterName": "example-ywasgmh6"}'
|
startupConfiguration: '{"clusterName": "k8s-6sa9dyug", "resourceRealm": "sandbox.nubes.ru", "providerVdc": "", "networkProvider": ""}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
controlPlaneConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 1}'
|
controlPlaneConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 1}'
|
||||||
workerConfiguration: '{"sizingDisk": 50, "count": 2, "groupName": "workers-gj7zkkhv", "sizingPolicy": ""}'
|
workerConfiguration: '{"groupName": "workers-5tcvtwk4", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"needExternalAddressIngress": true, "accessIpListIngress": "[]", "needExternalAddressAPI": true, "accessIpListAPI": "[]"}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
|
|||||||
@@ -62,19 +62,6 @@ cfsParams:
|
|||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
ffLogging:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
userCount:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
requestApproveMaxPeriod:
|
requestApproveMaxPeriod:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
@@ -120,6 +107,19 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
ffLogging:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
userCount:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 658
|
- svcOperationCfsParamId: 658
|
||||||
svcOperationCfsParam: s3Storage
|
svcOperationCfsParam: s3Storage
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -133,6 +133,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
userCount:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
requestApproveMaxPeriod:
|
requestApproveMaxPeriod:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -186,11 +191,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
userCount:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 660
|
- svcOperationCfsParamId: 660
|
||||||
svcOperationCfsParam: s3Storage
|
svcOperationCfsParam: s3Storage
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -212,5 +212,5 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: valo.ngcloud.ru
|
resourceRealm: valo.ngcloud.ru
|
||||||
domain: ''
|
domain: ''
|
||||||
valoOptions: '{"ffLogging": true, "userCount": 10, "requestApproveMaxPeriod": 2, "ffOnlineEditor": true, "ffWatermark": true, "ffUserImport": true, "ffThemes": true, "ffPublicLink": true}'
|
valoOptions: '{"requestApproveMaxPeriod": 2, "ffOnlineEditor": true, "ffWatermark": true, "ffUserImport": true, "ffThemes": true, "ffPublicLink": true, "ffLogging": true, "userCount": 10}'
|
||||||
s3Storage: '10'
|
s3Storage: '10'
|
||||||
|
|||||||
@@ -2,7 +2,17 @@ name: k8s_sthutrval_cluster
|
|||||||
service_id: 150
|
service_id: 150
|
||||||
service_display_name: Kubernetes кластер Штурвал
|
service_display_name: Kubernetes кластер Штурвал
|
||||||
service_short_name: k8sSthutrvalCluster
|
service_short_name: k8sSthutrvalCluster
|
||||||
service_man: Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле
|
service_man: '# Развёртывание Kubernetes: ограничения и предварительный чек-лист<br/><br/>> **Внимание:** перед началом развёртывания кластера Kubernetes убедитесь, что выполнены все описанные ниже условия.
|
||||||
|
Несоблюдение порядка шагов может привести к ошибкам при создании кластера.<br/><br/>---<br/><br/>## Ограничения при развёртывании<br/><br/>| Ограничение | Статус |<br/>|---|---|<br/>| 1 кластер = 1 vDC
|
||||||
|
| Действует (будет исправлено в ближайшее время) |<br/><br/>---<br/><br/>## Предварительный чек-лист<br/><br/>Перед установкой кластера Kubernetes необходимо последовательно выполнить следующие шаги.<br/><br/>###
|
||||||
|
1. Создать организацию в Cloud Director<br/><br/>- Перейдите в услугу **Организация в Cloud Director**.<br/>- Создайте организацию.<br/><br/>### 2. Создать виртуальный датацентр (vDC)<br/><br/>- Перейдите
|
||||||
|
в услугу **Виртуальный датацентр (vDC)**.<br/>- Создайте vDC.<br/>- Выделите **достаточно ресурсов для разворачивания _всех_ нод** кластера.<br/><br/>### 3. Создать Edge (сетевой шлюз периметра)<br/><br/>-
|
||||||
|
Перейдите в услугу **Сетевой шлюз периметра (Edge)**.<br/>- Создайте Edge.<br/>- Обязательно:<br/> - Включить **ALB**.<br/> - Установить **Кол-во VS на AVI ≥ 3**.<br/><br/>### 4. Добавить внешние адреса
|
||||||
|
в организации<br/><br/>- Вернитесь в **Организация в Cloud Director**.<br/>- Выполните операцию **Modify**.<br/>- Добавьте **3 внешних адреса**.<br/>- Количество `ipSpaces` значения не имеет, важно чтобы
|
||||||
|
суммарно было 3 адреса.<br/><br/>### 5. Настроить SNAT для виртуальных машин<br/><br/>- Вернитесь в **Сетевой шлюз периметра (Edge)**.<br/>- Выполните операцию **Modify**.<br/>- Выберите доступный `ipSpaceName`.<br/>-
|
||||||
|
Это будет **SNAT для виртуальных машин**.<br/><br/>### 6. Развернуть кластер Kubernetes<br/><br/>- Только **после выполнения всех шагов выше** переходите к услуге **Kubernetes кластер Штурвал**.<br/>-
|
||||||
|
Начните разворачивание кластера.<br/><br/>---<br/><br/>## Минимальные требования к кластеру<br/><br/>| Параметр | Значение |<br/>|---|---|<br/>| Мастер-ноды | минимум **1** |<br/>| Воркер-ноды | минимум
|
||||||
|
**1** |<br/>| CPU (на ноду) | **4 vCPU** |<br/>| RAM (на ноду) | **8 GB** |<br/>| Диск (на ноду) | **50 GB** |<br/><br/>---'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -49,6 +59,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
vdcUid:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
nsxtUid:
|
nsxtUid:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -56,14 +71,65 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
clusterName:
|
clusterName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-kcrwfrbd
|
defaultValue: example-ryatr2rx
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
vdcUid:
|
exLogging:
|
||||||
dataType: string
|
dataType: boolean
|
||||||
defaultValue: ''
|
defaultValue: 'true'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exMonitoring:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exLocalCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exVip:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exUpdate:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exIngress:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exNamedCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 751
|
- svcOperationCfsParamId: 751
|
||||||
svcOperationCfsParam: controlPlaneConfiguration
|
svcOperationCfsParam: controlPlaneConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -71,6 +137,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
sizingPolicy:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '{}'
|
||||||
sizingDisk:
|
sizingDisk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '50'
|
defaultValue: '50'
|
||||||
@@ -85,13 +158,6 @@ cfsParams:
|
|||||||
- '1'
|
- '1'
|
||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
sizingPolicy:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '{}'
|
|
||||||
- svcOperationCfsParamId: 752
|
- svcOperationCfsParamId: 752
|
||||||
svcOperationCfsParam: workerConfiguration
|
svcOperationCfsParam: workerConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -101,7 +167,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
groupName:
|
groupName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: workers-rbrr6za5
|
defaultValue: workers-e6bfgpqf
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
@@ -121,6 +187,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
autoscale:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 753
|
- svcOperationCfsParamId: 753
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -161,10 +253,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -205,6 +298,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -245,7 +339,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
groupName:
|
groupName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: workers-kk0fpv6w
|
defaultValue: workers-ohtgog3p
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
@@ -261,10 +355,36 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
count:
|
count:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
autoscale:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 759
|
- svcOperationCfsParamId: 759
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -317,8 +437,9 @@ cfsParamsByOp:
|
|||||||
174: []
|
174: []
|
||||||
173: []
|
173: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"nsxtUid": "", "clusterName": "example-kcrwfrbd", "vdcUid": ""}'
|
startupConfiguration: '{"vdcUid": "", "nsxtUid": "", "clusterName": "example-ryatr2rx", "exLogging": true, "exMonitoring": true, "exLocalCsi": true, "exVip": true, "exUpdate": true, "exIngress": true,
|
||||||
controlPlaneConfiguration: '{"sizingDisk": 50, "count": 1, "sizingPolicy": "[]"}'
|
"exNamedCsi": true}'
|
||||||
workerConfiguration: '{"groupName": "workers-rbrr6za5", "sizingPolicy": "", "sizingDisk": 50, "count": 2}'
|
controlPlaneConfiguration: '{"sizingPolicy": "[]", "sizingDisk": 50, "count": 1}'
|
||||||
|
workerConfiguration: '{"groupName": "workers-e6bfgpqf", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
|
|||||||
@@ -71,10 +71,6 @@ operations:
|
|||||||
operation: recovery_secrets
|
operation: recovery_secrets
|
||||||
kind: subresource
|
kind: subresource
|
||||||
action: recovery
|
action: recovery
|
||||||
- svcOperationId: 234
|
|
||||||
operation: restart
|
|
||||||
kind: action
|
|
||||||
action: restart
|
|
||||||
- svcOperationId: 216
|
- svcOperationId: 216
|
||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
@@ -103,10 +99,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 664
|
- svcOperationCfsParamId: 664
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -143,13 +138,13 @@ cfsParams:
|
|||||||
svcOperationCfsParam: domain
|
svcOperationCfsParam: domain
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: bao-ovkw1qbi
|
defaultValue: bao-nosgzjqe
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 675
|
- svcOperationCfsParamId: 675
|
||||||
svcOperationCfsParam: kvName
|
svcOperationCfsParam: kvName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: kvname-bbycmhbz
|
defaultValue: kvname-ps9az5f9
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 728
|
- svcOperationCfsParamId: 728
|
||||||
svcOperationCfsParam: policySettings
|
svcOperationCfsParam: policySettings
|
||||||
@@ -158,21 +153,21 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
capabilities:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '["read", "list"]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
path:
|
path:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
capabilities:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '["read", "list"]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 729
|
- svcOperationCfsParamId: 729
|
||||||
svcOperationCfsParam: policyName
|
svcOperationCfsParam: policyName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: policy-xqjoiy6t
|
defaultValue: policy-kyvtdypv
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 677
|
- svcOperationCfsParamId: 677
|
||||||
svcOperationCfsParam: kvName
|
svcOperationCfsParam: kvName
|
||||||
@@ -279,12 +274,12 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
capabilities:
|
path:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
path:
|
capabilities:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
@@ -353,7 +348,6 @@ cfsParamsByOp:
|
|||||||
- 723
|
- 723
|
||||||
- 724
|
- 724
|
||||||
- 725
|
- 725
|
||||||
234: []
|
|
||||||
216: []
|
216: []
|
||||||
215: []
|
215: []
|
||||||
238:
|
238:
|
||||||
@@ -371,4 +365,4 @@ stateParams:
|
|||||||
resourceMemory: '512'
|
resourceMemory: '512'
|
||||||
resourceDisk: '10'
|
resourceDisk: '10'
|
||||||
appVersion: 2.5.2
|
appVersion: 2.5.2
|
||||||
domain: bao-ovkw1qbi
|
domain: bao-nosgzjqe
|
||||||
|
|||||||
@@ -0,0 +1,100 @@
|
|||||||
|
name: nifi
|
||||||
|
service_id: 153
|
||||||
|
service_display_name: Nifi
|
||||||
|
service_short_name: nifi
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 229
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 235
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 711
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: nifi-qmpqdalo
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 712
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '2000'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 713
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '4096'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 714
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- svcOperationCfsParamId: 715
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '10'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 716
|
||||||
|
svcOperationCfsParam: appVersion
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 2.6.0
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 2.6.0
|
||||||
|
- svcOperationCfsParamId: 717
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 718
|
||||||
|
svcOperationCfsParam: jdbcDrivers
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
path:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: https://jdbc.postgresql.org/download/postgresql-42.7.8.jar
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
229:
|
||||||
|
- 711
|
||||||
|
- 712
|
||||||
|
- 713
|
||||||
|
- 714
|
||||||
|
- 715
|
||||||
|
- 716
|
||||||
|
- 717
|
||||||
|
- 718
|
||||||
|
235: []
|
||||||
|
stateParams:
|
||||||
|
domain: nifi-qmpqdalo
|
||||||
|
resourceCPU: '2000'
|
||||||
|
resourceMemory: '4096'
|
||||||
|
resourceInstances: '1'
|
||||||
|
resourceDisk: '10'
|
||||||
|
appVersion: 2.6.0
|
||||||
|
resourceRealm: ''
|
||||||
|
jdbcDrivers: '{"path": "https://jdbc.postgresql.org/download/postgresql-42.7.8.jar"}'
|
||||||
@@ -1,33 +1,39 @@
|
|||||||
name: llm_ai
|
name: llm_ai
|
||||||
service_id: 163
|
service_id: 163
|
||||||
service_display_name: LLM
|
service_display_name: ML Улей
|
||||||
service_short_name: llmAi
|
service_short_name: llmAi
|
||||||
service_man: '## 1. Общая информация<br/><br/>LLMaaS (Large Language Model as a Service) — это сервис для доступа к языковым моделям через OpenAI-совместимое API.<br/>Платформа позволяет создавать организации
|
service_man: '## 1. Общая информация<br/><br/>LLMaaS (Large Language Model as a Service) — это сервис для доступа к языковым моделям через OpenAI-совместимое API.<br/>Платформа позволяет создавать организации
|
||||||
(тенанты), команды, выпускать и управлять API-ключами, устанавливать лимиты на использование.<br/><br/>---<br/><br/>## Доступные операции<br/><br/>- **create** — Создание организации в LLMaaS<br/>-
|
(тенанты), команды, выпускать и управлять API-ключами, устанавливать лимиты на использование.<br/><br/>### Ограничение: одна организация на контрагента<br/><br/>На одного контрагента может быть создана
|
||||||
**delete** — Удаление организации<br/><br/>- **create_team** — Создание команды внутри организации<br/>- **modify_team** — Редактирование команды (модели, RPM, TPM)<br/>- **delete_team** —
|
**только одна организация** в LLMaaS.<br/>Повторная попытка создать организацию для того же контрагента завершится ошибкой.<br/><br/>### Возможные ошибки и как их обрабатывать<br/><br/>При работе с сервисом
|
||||||
Удаление команды<br/><br/>- **create_secrets** — Создание API-ключа<br/>- **update_secrets** — Обновление параметров API-ключа<br/>- **delete_secrets** — Удаление API-ключа<br/><br/>---<br/><br/>##
|
могут возникнуть типовые ошибки. Ниже описано, как их распознать и что делать.<br/><br/>| Ошибка | Когда возникает | Что делать |<br/>|--------|-----------------|------------|<br/>| `Организация в LLMaaS
|
||||||
|
уже привязана к контрагенту <contragentCode>` | При операции `create`, если организация для данного контрагента уже существует | На одного контрагента допускается только одна организация. Если нужно изменить
|
||||||
|
существующую организацию, используйте операции управления командами и ключами |<br/>| `Не хватает нужного гранта. Примените реконсиляцию для данного инстанса` | При операциях `create_team`, `modify_team`,
|
||||||
|
если модель не выдана организации на Layer 1 | Запустите операцию `reconcile` для данного инстанса. Она обновит список моделей, доступных организации, после чего повторите исходную операцию |<br/>| `Лимиты
|
||||||
|
API-ключа не могут превышать лимиты команды` | При операциях `create_secrets`, `update_secrets` | Уменьшите значения `RPM` и/или `TPM` ключа до уровня команды или увеличьте лимиты самой команды через
|
||||||
|
`modify_team` |<br/><br/>---<br/><br/>## Доступные операции<br/><br/>- **create** — Создание организации в LLMaaS<br/>- **delete** — Удаление организации<br/><br/>- **create_team** —
|
||||||
|
Создание команды внутри организации<br/>- **modify_team** — Редактирование команды (модели, RPM, TPM)<br/>- **delete_team** — Удаление команды<br/><br/>- **create_secrets** — Создание API-ключа<br/>-
|
||||||
|
**update_secrets** — Обновление параметров API-ключа<br/>- **delete_secrets** — Удаление API-ключа<br/><br/>- **reconcile** — Обновление списка моделей, доступных организации<br/><br/>---<br/><br/>##
|
||||||
2. Параметры создания организации<br/><br/>Ниже перечислены параметры, которые необходимо указать при создании организации:<br/><br/>* **Платформа для развертывания**<br/> Выбирается автоматически, изменять
|
2. Параметры создания организации<br/><br/>Ниже перечислены параметры, которые необходимо указать при создании организации:<br/><br/>* **Платформа для развертывания**<br/> Выбирается автоматически, изменять
|
||||||
не нужно.<br/><br/>* **Период бюджета**<br/> Срок жизни организации в днях.<br/> Пример: `30`<br/><br/><br/>---<br/><br/>## 3. Параметры создания команды<br/><br/>* **Имя команды**<br/> Уникальное
|
не нужно.<br/><br/>## 3. Параметры создания команды<br/><br/>* **Имя команды**<br/> Уникальное имя команды в рамках организации.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели,
|
||||||
имя команды в рамках организации.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для команды.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Максимальное
|
доступной для команды.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в
|
||||||
количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример: `100000`<br/><br/>---<br/><br/>##
|
минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример: `100000`<br/><br/>---<br/><br/>## 4. Параметры редактирования команды<br/><br/>Для существующей команды
|
||||||
4. Параметры редактирования команды<br/><br/>Для существующей команды можно изменить:<br/><br/>* **Модель**<br/> Новая модель для команды.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту
|
можно изменить:<br/><br/>* **Модель**<br/> Новая модель для команды.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>*
|
||||||
(RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>---<br/><br/>## 5. Параметры создания API-ключа<br/><br/>Ниже
|
**Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>---<br/><br/>## 5. Параметры создания API-ключа<br/><br/>Ниже перечислены параметры, которые необходимо указать
|
||||||
перечислены параметры, которые необходимо указать при создании API-ключа:<br/><br/>* **Имя ключа**<br/> Уникальное имя ключа в рамках организации.<br/> Пример: `prod-key`<br/><br/>* **Команда**<br/> Имя
|
при создании API-ключа:<br/><br/>* **Имя ключа**<br/> Уникальное имя ключа в рамках организации.<br/> Пример: `prod-key`<br/><br/>* **Команда**<br/> Имя команды для привязки ключа. Если не указано
|
||||||
команды для привязки ключа. Если не указано — ключ привязывается к команде `main`.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для данного ключа.<br/> Пример: `gpt-oss-120b`<br/><br/>*
|
— ключ привязывается к команде `main`.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для данного ключа.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту
|
||||||
**Лимит запросов в минуту (RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих
|
(RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример:
|
||||||
+ исходящих) в минуту.<br/> Пример: `100000`<br/><br/>**Важно:** Лимиты API-ключа не могут превышать лимиты команды, к которой он привязан.<br/>При превышении операция будет отклонена с ошибкой.<br/>Перед
|
`100000`<br/><br/>**Важно:** Лимиты API-ключа не могут превышать лимиты команды, к которой он привязан.<br/>При превышении операция будет отклонена с ошибкой.<br/>Перед созданием ключа убедитесь, что
|
||||||
созданием ключа убедитесь, что `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/><br/>---<br/><br/>## 6. Параметры обновления API-ключа<br/><br/>Для уже существующего ключа можно изменить параметры. Все
|
`RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/><br/>---<br/><br/>## 6. Параметры обновления API-ключа<br/><br/>Для уже существующего ключа можно изменить параметры. Все параметры являются опциональными:<br/><br/>*
|
||||||
параметры являются опциональными:<br/><br/>* **Имя ключа**<br/> Имя обновляемого ключа.<br/> Пример: `prod-key`<br/><br/>* **Модель**<br/> Новое название модели.<br/> Пример: `gpt-oss-20b`<br/><br/>*
|
**Имя ключа**<br/> Имя обновляемого ключа.<br/> Пример: `prod-key`<br/><br/>* **Модель**<br/> Новое название модели.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое
|
||||||
**Лимит запросов в минуту (RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>**Важно:** При обновлении
|
значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>**Важно:** При обновлении лимитов API-ключа новые значения не могут
|
||||||
лимитов API-ключа новые значения не могут превышать лимиты команды.<br/>Если указать значения выше командных, операция завершится ошибкой.<br/>Указывайте `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/>Команда
|
превышать лимиты команды.<br/>Если указать значения выше командных, операция завершится ошибкой.<br/>Указывайте `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/>Команда определяется автоматически по стейту
|
||||||
определяется автоматически по стейту услуги — изменить привязку к другой команде через эту операцию нельзя.<br/><br/>---<br/><br/>## 7. Параметры удаления API-ключа<br/><br/>* **Команда**<br/> Имя команды,
|
услуги — изменить привязку к другой команде через эту операцию нельзя.<br/><br/>---<br/><br/>## 7. Параметры удаления API-ключа<br/><br/>* **Команда**<br/> Имя команды, к которой привязан ключ.<br/> Пример:
|
||||||
к которой привязан ключ.<br/> Пример: `production`<br/><br/>* **Имя ключа**<br/> Имя удаляемого ключа.<br/> Пример: `prod-key`<br/><br/>---<br/><br/>## 8. Параметры удаления команды<br/><br/>* **Имя
|
`production`<br/><br/>* **Имя ключа**<br/> Имя удаляемого ключа.<br/> Пример: `prod-key`<br/><br/>---<br/><br/>## 8. Параметры удаления команды<br/><br/>* **Имя команды**<br/> Имя удаляемой команды.<br/> Пример:
|
||||||
команды**<br/> Имя удаляемой команды.<br/> Пример: `production`<br/><br/>---<br/><br/>## 9. Параметры удаления организации<br/><br/>Удаление организации не требует дополнительных параметров — удаляется
|
`production`<br/><br/>---<br/><br/>## 9. Параметры удаления организации<br/><br/>Удаление организации не требует дополнительных параметров — удаляется вся организация со всеми командами и ключами.<br/><br/>---<br/><br/>##
|
||||||
вся организация со всеми командами и ключами.<br/><br/>---<br/><br/>## 10. Выходные параметры<br/><br/>После успешного создания организации платформа возвращает:<br/><br/>* **connectionUrl**<br/> URL
|
10. Выходные параметры<br/><br/>После успешного создания организации платформа возвращает:<br/><br/>* **connectionUrl**<br/> URL для доступа к inference API (OpenAI-совместимый).<br/> Пример: `https://api.aillm.ru`<br/><br/>---<br/><br/><br/>##
|
||||||
для доступа к inference API (OpenAI-совместимый).<br/> Пример: `https://api.aillm.ru`<br/><br/>---<br/><br/><br/>## 12. Пример использования API<br/><br/>После получения API-ключа клиент может обращаться
|
11. Пример использования API<br/><br/>После получения API-ключа клиент может обращаться к LLMaaS напрямую:<br/><br/>**Запрос к chat completions:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/chat/completions
|
||||||
к LLMaaS напрямую:<br/><br/>**Запрос к chat completions:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/chat/completions \<br/> -H "Authorization: Bearer sk-..." \<br/> -H "Content-Type: application/json"
|
\<br/> -H "Authorization: Bearer sk-..." \<br/> -H "Content-Type: application/json" \<br/> -d ''{<br/> "model": "gpt-oss-120b",<br/> "messages": [<br/> {"role": "user", "content": "Привет!"}<br/> ]<br/> }''<br/>```<br/><br/>**Получение
|
||||||
\<br/> -d ''{<br/> "model": "gpt-oss-120b",<br/> "messages": [<br/> {"role": "user", "content": "Привет!"}<br/> ]<br/> }''<br/>```<br/><br/>**Получение списка доступных моделей:**<br/><br/>```bash<br/>curl
|
списка доступных моделей:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/models \<br/> -H "Authorization: Bearer sk-..."<br/>```<br/>'
|
||||||
https://api.aillm.ru/v1/models \<br/> -H "Authorization: Bearer sk-..."<br/>```<br/>'
|
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: false
|
suspendOnDestroyDefault: false
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -60,6 +66,10 @@ operations:
|
|||||||
operation: modify_team
|
operation: modify_team
|
||||||
kind: subresource
|
kind: subresource
|
||||||
action: modify
|
action: modify
|
||||||
|
- svcOperationId: 412
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
- svcOperationId: 277
|
- svcOperationId: 277
|
||||||
operation: update_secrets
|
operation: update_secrets
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -202,6 +212,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1157
|
||||||
|
svcOperationCfsParam: ''
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
271:
|
271:
|
||||||
- 826
|
- 826
|
||||||
@@ -227,11 +243,13 @@ cfsParamsByOp:
|
|||||||
- 865
|
- 865
|
||||||
- 873
|
- 873
|
||||||
- 874
|
- 874
|
||||||
|
412: []
|
||||||
277:
|
277:
|
||||||
- 852
|
- 852
|
||||||
- 853
|
- 853
|
||||||
- 854
|
- 854
|
||||||
- 855
|
- 855
|
||||||
- 875
|
- 875
|
||||||
|
- 1157
|
||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: llmAi.aillm.ru
|
resourceRealm: llmAi.aillm.ru
|
||||||
|
|||||||
@@ -73,6 +73,12 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- iaas
|
- iaas
|
||||||
- saas
|
- saas
|
||||||
|
- svcOperationCfsParamId: 1125
|
||||||
|
svcOperationCfsParam: organizationSuffix
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 871
|
- svcOperationCfsParamId: 871
|
||||||
svcOperationCfsParam: admins
|
svcOperationCfsParam: admins
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -110,7 +116,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
count:
|
count:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -118,6 +124,7 @@ cfsParamsByOp:
|
|||||||
136:
|
136:
|
||||||
- 418
|
- 418
|
||||||
- 556
|
- 556
|
||||||
|
- 1125
|
||||||
283:
|
283:
|
||||||
- 871
|
- 871
|
||||||
137: []
|
137: []
|
||||||
@@ -131,3 +138,4 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: sandbox.nubes.ru
|
resourceRealm: sandbox.nubes.ru
|
||||||
organizationType: iaas
|
organizationType: iaas
|
||||||
|
organizationSuffix: ''
|
||||||
|
|||||||
+49
-34
@@ -100,12 +100,12 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
secret:
|
subparam2:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
subparam2:
|
secret:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
@@ -129,6 +129,25 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
param1:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
param2:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '["1"'
|
||||||
|
- '"2"'
|
||||||
|
- '"3"]'
|
||||||
|
param3:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
bol1:
|
bol1:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -140,18 +159,32 @@ cfsParams:
|
|||||||
minStr1:
|
minStr1:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: abracadabra
|
defaultValue: abracadabra
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- abracadabra
|
- abracadabra
|
||||||
|
- incorr
|
||||||
|
- correctvalue
|
||||||
|
s3-inst:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 654
|
||||||
|
svcOperationCfsParam: arrayMapFixedExample
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
param1:
|
param1:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
param2:
|
param2:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: '1'
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
@@ -163,13 +196,6 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 654
|
|
||||||
svcOperationCfsParam: arrayMapFixedExample
|
|
||||||
dataType: array-map-fixed
|
|
||||||
isRequired: false
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: false
|
|
||||||
dataDescriptor:
|
|
||||||
bol1:
|
bol1:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -185,25 +211,6 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- abracadabra
|
- abracadabra
|
||||||
param1:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
param2:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '["1"'
|
|
||||||
- '"2"'
|
|
||||||
- '"3"]'
|
|
||||||
param3:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 863
|
- svcOperationCfsParamId: 863
|
||||||
svcOperationCfsParam: arr
|
svcOperationCfsParam: arr
|
||||||
dataType: array
|
dataType: array
|
||||||
@@ -214,6 +221,12 @@ cfsParams:
|
|||||||
- test
|
- test
|
||||||
- '2'
|
- '2'
|
||||||
- val1
|
- val1
|
||||||
|
- svcOperationCfsParamId: 1131
|
||||||
|
svcOperationCfsParam: s3-ref-root
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 287
|
- svcOperationCfsParamId: 287
|
||||||
svcOperationCfsParam: durationMs
|
svcOperationCfsParam: durationMs
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
@@ -286,6 +299,7 @@ cfsParamsByOp:
|
|||||||
- 647
|
- 647
|
||||||
- 654
|
- 654
|
||||||
- 863
|
- 863
|
||||||
|
- 1131
|
||||||
71: []
|
71: []
|
||||||
92:
|
92:
|
||||||
- 287
|
- 287
|
||||||
@@ -306,9 +320,10 @@ stateParams:
|
|||||||
whereFail: '1'
|
whereFail: '1'
|
||||||
resourceRealm: dummy
|
resourceRealm: dummy
|
||||||
bodymessage: ''
|
bodymessage: ''
|
||||||
mapExample: '{"subparam1": "", "secret": "", "subparam2": ""}'
|
mapExample: '{"subparam1": "", "subparam2": "", "secret": ""}'
|
||||||
jsonExample: ''
|
jsonExample: ''
|
||||||
nestedRefExample: ''
|
nestedRefExample: ''
|
||||||
mapFixed: '{"bol1": false, "minStr1": "abracadabra", "param1": 1, "param2": "1", "param3": 1}'
|
mapFixed: '{"param1": 1, "param2": "1", "param3": 1, "bol1": false, "minStr1": "abracadabra", "s3-inst": ""}'
|
||||||
arrayMapFixedExample: '{"bol1": false, "minStr1": "", "param1": 0, "param2": "", "param3": 1}'
|
arrayMapFixedExample: '{"param1": 0, "param2": "", "param3": 1, "bol1": false, "minStr1": ""}'
|
||||||
arr: ''
|
arr: ''
|
||||||
|
s3-ref-root: ''
|
||||||
|
|||||||
@@ -84,12 +84,12 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 397
|
- svcOperationCfsParamId: 397
|
||||||
svcOperationCfsParam: cpuGuaranteed
|
svcOperationCfsParam: cpuGuaranteed
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '20'
|
defaultValue: '0'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '20'
|
- '0'
|
||||||
- '50'
|
- '50'
|
||||||
- '80'
|
- '80'
|
||||||
- svcOperationCfsParamId: 557
|
- svcOperationCfsParamId: 557
|
||||||
@@ -110,6 +110,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1130
|
||||||
|
svcOperationCfsParam: suffixName
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: 7uabwsgb
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 560
|
- svcOperationCfsParamId: 560
|
||||||
svcOperationCfsParam: cpuAllocated
|
svcOperationCfsParam: cpuAllocated
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -148,6 +154,7 @@ cfsParamsByOp:
|
|||||||
- 557
|
- 557
|
||||||
- 558
|
- 558
|
||||||
- 746
|
- 746
|
||||||
|
- 1130
|
||||||
24: []
|
24: []
|
||||||
112:
|
112:
|
||||||
- 560
|
- 560
|
||||||
@@ -160,7 +167,8 @@ stateParams:
|
|||||||
organizationUid: ''
|
organizationUid: ''
|
||||||
providerVdc: ''
|
providerVdc: ''
|
||||||
storageConfig: '{"name": "", "size": 2000}'
|
storageConfig: '{"name": "", "size": 2000}'
|
||||||
cpuGuaranteed: '20'
|
cpuGuaranteed: '0'
|
||||||
cpuAllocated: '80'
|
cpuAllocated: '80'
|
||||||
memAllocated: '200'
|
memAllocated: '200'
|
||||||
networkProvider: ''
|
networkProvider: ''
|
||||||
|
suffixName: 7uabwsgb
|
||||||
|
|||||||
@@ -88,6 +88,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1110
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 10.10.102.0/24
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 81.22.46.22
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 185.247.187.77
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 368
|
- svcOperationCfsParamId: 368
|
||||||
svcOperationCfsParam: needEnableAVI
|
svcOperationCfsParam: needEnableAVI
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
@@ -115,6 +137,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1112
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
10:
|
10:
|
||||||
- 8
|
- 8
|
||||||
@@ -123,12 +167,14 @@ cfsParamsByOp:
|
|||||||
- 621
|
- 621
|
||||||
- 622
|
- 622
|
||||||
- 825
|
- 825
|
||||||
|
- 1110
|
||||||
25: []
|
25: []
|
||||||
111:
|
111:
|
||||||
- 368
|
- 368
|
||||||
- 369
|
- 369
|
||||||
- 372
|
- 372
|
||||||
- 856
|
- 856
|
||||||
|
- 1112
|
||||||
252: []
|
252: []
|
||||||
stateParams:
|
stateParams:
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
@@ -137,3 +183,4 @@ stateParams:
|
|||||||
vdcType: vdc
|
vdcType: vdc
|
||||||
vdcGroupUid: ''
|
vdcGroupUid: ''
|
||||||
qosProfile: ''
|
qosProfile: ''
|
||||||
|
routedNetConfiguration: '{"ipAddrPool": "10.10.102.0/24", "mainDns": "81.22.46.22", "secondDns": "185.247.187.77"}'
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
name: vcexternalip
|
name: vcexternalip
|
||||||
service_id: 25
|
service_id: 25
|
||||||
service_display_name: Публичные IP адреса
|
service_display_name: '[DEPRECATED] Публичные IP адреса'
|
||||||
service_short_name: vcexternalip
|
service_short_name: vcexternalip
|
||||||
service_man: '**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**<br/>Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать<br/><br/>Резервировать
|
service_man: '**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**<br/>Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать<br/><br/>Резервировать
|
||||||
публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.<br/>Вы можете назначить IP адрес для существующего экземпляра
|
публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.<br/>Вы можете назначить IP адрес для существующего экземпляра
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ cfsParams:
|
|||||||
svcOperationCfsParam: vappName
|
svcOperationCfsParam: vappName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: hf1t7p5c
|
defaultValue: j8lanwbr
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 623
|
- svcOperationCfsParamId: 623
|
||||||
svcOperationCfsParam: vdcUid
|
svcOperationCfsParam: vdcUid
|
||||||
@@ -71,5 +71,5 @@ cfsParamsByOp:
|
|||||||
208: []
|
208: []
|
||||||
stateParams:
|
stateParams:
|
||||||
nsxtUid: ''
|
nsxtUid: ''
|
||||||
vappName: hf1t7p5c
|
vappName: j8lanwbr
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
|
|||||||
+112
-24
@@ -83,11 +83,22 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 411
|
- svcOperationCfsParamId: 411
|
||||||
svcOperationCfsParam: vmDisk
|
svcOperationCfsParam: vmDisks
|
||||||
dataType: integer > 0
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: '[{"busNum": 0, "size": "20"}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
busNum:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
size:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 412
|
- svcOperationCfsParamId: 412
|
||||||
svcOperationCfsParam: ipSpaceName
|
svcOperationCfsParam: ipSpaceName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -96,9 +107,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 413
|
- svcOperationCfsParamId: 413
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: array
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: '["0.0.0.0/0"]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 414
|
- svcOperationCfsParamId: 414
|
||||||
svcOperationCfsParam: imageVm
|
svcOperationCfsParam: imageVm
|
||||||
@@ -126,10 +137,34 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 448
|
- svcOperationCfsParamId: 448
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '["22"]'
|
defaultValue: '[{"port": "22", "type": "tcp"}, {"port": "10050", "type": "tcp"}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '22'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1118
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: 'false'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 493
|
- svcOperationCfsParamId: 493
|
||||||
svcOperationCfsParam: vmCpu
|
svcOperationCfsParam: vmCpu
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -143,22 +178,28 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 495
|
- svcOperationCfsParamId: 495
|
||||||
svcOperationCfsParam: vmDisk
|
svcOperationCfsParam: vmDisks
|
||||||
dataType: integer > 0
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
busNum:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
size:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 496
|
- svcOperationCfsParamId: 496
|
||||||
svcOperationCfsParam: ipSpaceName
|
svcOperationCfsParam: ipSpaceName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 497
|
- svcOperationCfsParamId: 497
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -167,10 +208,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 498
|
- svcOperationCfsParamId: 498
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1119
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 509
|
- svcOperationCfsParamId: 509
|
||||||
svcOperationCfsParam: vmName
|
svcOperationCfsParam: vmName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -201,11 +266,6 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 514
|
- svcOperationCfsParamId: 514
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -242,10 +302,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 520
|
- svcOperationCfsParamId: 520
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1123
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
132:
|
132:
|
||||||
- 407
|
- 407
|
||||||
@@ -260,6 +344,7 @@ cfsParamsByOp:
|
|||||||
- 416
|
- 416
|
||||||
- 417
|
- 417
|
||||||
- 448
|
- 448
|
||||||
|
- 1118
|
||||||
133: []
|
133: []
|
||||||
159:
|
159:
|
||||||
- 493
|
- 493
|
||||||
@@ -268,6 +353,7 @@ cfsParamsByOp:
|
|||||||
- 496
|
- 496
|
||||||
- 497
|
- 497
|
||||||
- 498
|
- 498
|
||||||
|
- 1119
|
||||||
286: []
|
286: []
|
||||||
164:
|
164:
|
||||||
- 509
|
- 509
|
||||||
@@ -281,6 +367,7 @@ cfsParamsByOp:
|
|||||||
- 517
|
- 517
|
||||||
- 518
|
- 518
|
||||||
- 520
|
- 520
|
||||||
|
- 1123
|
||||||
135: []
|
135: []
|
||||||
134: []
|
134: []
|
||||||
stateParams:
|
stateParams:
|
||||||
@@ -288,11 +375,12 @@ stateParams:
|
|||||||
vmName: web01
|
vmName: web01
|
||||||
vmCpu: '1'
|
vmCpu: '1'
|
||||||
vmRam: '1'
|
vmRam: '1'
|
||||||
vmDisk: ''
|
vmDisks: '{"busNum": 0, "size": 1}'
|
||||||
ipSpaceName: ''
|
ipSpaceName: ''
|
||||||
accessIpList: ''
|
accessIpList: '["0.0.0.0/0"]'
|
||||||
imageVm: ''
|
imageVm: ''
|
||||||
cloudInit: ''
|
cloudInit: ''
|
||||||
userLogin: myuser
|
userLogin: myuser
|
||||||
userPublicKey: ''
|
userPublicKey: ''
|
||||||
accessPortList: '["22"]'
|
accessPortList: '{"port": "22", "type": "all"}'
|
||||||
|
sameSnat: 'false'
|
||||||
|
|||||||
@@ -44,11 +44,6 @@ cfsParams:
|
|||||||
defaultValue: '100'
|
defaultValue: '100'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '5'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '128'
|
defaultValue: '128'
|
||||||
@@ -59,6 +54,11 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '5'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 814
|
- svcOperationCfsParamId: 814
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -72,10 +72,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 815
|
- svcOperationCfsParamId: 815
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -83,11 +82,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
slaveAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
type:
|
type:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ingress
|
defaultValue: ingress
|
||||||
@@ -98,7 +92,7 @@ cfsParams:
|
|||||||
- service
|
- service
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: abracadabra-aoy3qnll
|
defaultValue: abracadabra-i5kntoh3
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
@@ -116,6 +110,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 816
|
- svcOperationCfsParamId: 816
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -128,13 +127,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
disk:
|
memory:
|
||||||
dataType: integer >= 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
memory:
|
disk:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -168,13 +167,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterAccessList:
|
slaveIpSpace:
|
||||||
dataType: json
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
slaveIpSpace:
|
masterAccessList:
|
||||||
dataType: string
|
dataType: json
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -196,6 +195,6 @@ cfsParamsByOp:
|
|||||||
98: []
|
98: []
|
||||||
97: []
|
97: []
|
||||||
stateParams:
|
stateParams:
|
||||||
clusterConfiguration: '{"cpu": 100, "disk": 5, "memory": 128, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 100, "memory": 128, "replicas": 1, "disk": 5}'
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
accessConfiguration: '{"slaveAccessList": "[]", "type": "ingress", "domain": "abracadabra-aoy3qnll", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": ""}'
|
accessConfiguration: '{"type": "ingress", "domain": "abracadabra-i5kntoh3", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
|
|||||||
@@ -2,7 +2,49 @@ name: nextcloud
|
|||||||
service_id: 50
|
service_id: 50
|
||||||
service_display_name: Nextcloud
|
service_display_name: Nextcloud
|
||||||
service_short_name: nextcloud
|
service_short_name: nextcloud
|
||||||
service_man: 'Ресурсная платформа: k8s. Автоматизация: helm chart'
|
service_man: '# Инструкция по развертыванию Nextcloud через платформу<br/><br/>## 1. Общая информация<br/><br/>Nextcloud — платформа для хранения и совместной работы с файлами. Разворачивается в K8s через
|
||||||
|
Helm-чарт `nextcloud/nextcloud`.<br/><br/>Сервис **не самодостаточен** — для создания необходимы заранее развёрнутые в той же ресурсной платформе:<br/><br/>* **PostgreSQL (k8s)** — база данных Nextcloud.
|
||||||
|
У СУБД должен быть выставлен параметр `sslRequired: false`.<br/>* **Redis (k8s)** — используется как memcache/locking backend.<br/><br/>Резервное копирование выполняется через **Velero** (бэкапятся под
|
||||||
|
и PVC с данными), а не штатным S3-бэкапом СУБД.<br/><br/>### Доступные операции с сервисом<br/><br/>* **create** — создание сервиса<br/>* **delete** — удаление сервиса<br/>* **suspend** —
|
||||||
|
остановка сервиса (масштабирование реплик в 0)<br/>* **resume** — запуск сервиса<br/>* **restart** — перезапуск (`kubectl rollout restart`)<br/>* **modify** — изменение настроек
|
||||||
|
сервиса<br/>* **reconcile** — служебная операция синхронизации версии (запускается платформой автоматически)<br/>* **create_backup** — создание резервной копии вручную (через Velero)<br/>* **recovery** —
|
||||||
|
восстановление из резервной копии в **новый** инстанс<br/><br/>> **Примечание:** операций работы с пользователями Nextcloud (`create_user`/`modify_user`/`delete_user`) на уровне платформы нет — пользователи
|
||||||
|
приложения администрируются внутри самого Nextcloud.<br/><br/>---<br/><br/>## 2. Параметры создания сервиса<br/><br/>### Платформа для развертывания<br/><br/>Ресурсная платформа (`resourceRealm`), в которой
|
||||||
|
будет развёрнут сервис. PostgreSQL и Redis, указанные ниже, обязаны находиться в той же ресурсной платформе.<br/><br/>### СУБД PostgreSQL (psqlUid)<br/><br/>UID инстанса PostgreSQL (k8s), в котором будет
|
||||||
|
создана база и пользователь `nextcloud`.<br/><br/>* У выбранной СУБД должна отсутствовать база `nextcloud` и пользователь `nextcloud`.<br/>* У СУБД обязан быть выключен `sslMode` (`false`).<br/><br/>###
|
||||||
|
СУБД Redis (redisUid)<br/><br/>UID инстанса Redis (k8s), который будет использоваться как memcache/locking backend.<br/><br/>### Количество реплик<br/><br/>Количество реплик Nextcloud (`clusterConfiguration.replicas`).<br/><br/>###
|
||||||
|
Квота памяти пода (MB)<br/><br/>Объём памяти для пода Nextcloud в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода Nextcloud в миликорах (1000 mCPU = 1 vCPU).<br/>Пример:
|
||||||
|
`1000`<br/><br/>### Размер диска для данных (GB)<br/><br/>Объём диска под данные Nextcloud (`/var/www/html/data`) в гигабайтах.<br/>Пример: `20`<br/><br/>### Домен<br/><br/>Домен, на котором будет доступен
|
||||||
|
Nextcloud (`accessConfiguration.domain`).<br/><br/>* Если указано **полное доменное имя** (содержит точку, например `cloud.company.ru`) — домен считается клиентским. Перед созданием клиент обязан сам
|
||||||
|
настроить DNS-запись, указывающую на адрес Ingress платформы, иначе создание завершится ошибкой.<br/>* Если указано **короткое имя** (без точки, например `mycloud`) — платформа сама создаёт DNS-запись
|
||||||
|
вида `<domain>.nextcloudk8s` и настраивает сертификат.<br/><br/>### Версия<br/><br/>Версия приложения Nextcloud (`appConfiguration.version`, поле `appVersion` Helm-чарта). По ней автоматически подбирается
|
||||||
|
последняя подходящая версия Helm-чарта.<br/><br/>### Document Server<br/><br/>Параметр `appConfiguration.documentServer`. Если указать `collabora` — в кластер дополнительно разворачивается Collabora Online
|
||||||
|
(совместное редактирование офисных документов), доступный по пути `/collabora` на том же домене.<br/>Оставьте пустым, если Document Server не нужен.<br/><br/>### Уровень логирования<br/><br/>Параметр
|
||||||
|
`appConfiguration.logLevel`. Одно из значений: `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL`, либо `NONE` — чтобы не переопределять логирование Nextcloud.<br/><br/>---<br/><br/>## 3. Параметры модификации
|
||||||
|
сервиса<br/><br/>Изменению подлежат ресурсы, версия и часть `appConfiguration`. Параметры `psqlUid`/`redisUid` менять после создания не рекомендуется.<br/><br/>### Количество реплик<br/><br/>См. раздел
|
||||||
|
2.<br/><br/>### Квота памяти пода (MB) / Квота CPU пода (mCPU) / Размер диска (GB)<br/><br/>См. раздел 2.<br/><br/>> **Примечание:** уменьшить уже выделенный размер диска нельзя.<br/><br/>### Версия<br/><br/>Обновление
|
||||||
|
версии разрешено только **на один патч** либо **на одну минорную версию вперёд** (с `patch=0`). Прыжок сразу через несколько минорных версий или через несколько мажорных версий запрещён — обновляться
|
||||||
|
нужно последовательно.<br/><br/>> **Примечание:** перед обновлением на новую minor/major-версию необходимо сначала выполнить `modify` на текущей версии, обновившись до последнего релиза этой версии (иначе
|
||||||
|
операция завершится ошибкой с описанием, до какой версии нужно обновиться сначала).<br/><br/>### Document Server / Уровень логирования<br/><br/>См. раздел 2.<br/><br/>---<br/><br/>## 4. Параметры удаления
|
||||||
|
сервиса<br/><br/>Специальных параметров нет — удаление сносит namespace целиком.<br/><br/>> **Примечание:** резервные копии, созданные через `create_backup`, хранятся в Velero отдельно от инстанса и **не
|
||||||
|
удаляются** вместе с сервисом — операции `delete_backup` для Nextcloud нет, копии нужно вычищать на стороне Velero отдельно.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>Специальных
|
||||||
|
пользовательских параметров нет — имя бэкапа генерируется автоматически в формате `<дата>-<версия>-<namespace>`.<br/><br/>> **Примечание:** создать бэкап можно только если сервис предварительно приостановлен
|
||||||
|
(`suspend`). Velero, в который создаётся бэкап, должен быть развёрнут в той же ресурсной платформе, что и Nextcloud, и не может быть сменён на другой Velero-инстанс в рамках одного сервиса.<br/><br/>Бэкапится
|
||||||
|
под с данными вместе с PVC/PV (файлы), метаданные и БД PostgreSQL бэкапом не затрагиваются — версия схемы БД фиксируется отдельно (см. раздел 6).<br/><br/>---<br/><br/>## 6. Параметры восстановления из
|
||||||
|
бэкапа (recovery)<br/><br/>В отличие от СУБД-сервисов, `recovery` у Nextcloud **не восстанавливает данные в текущий инстанс**, а создаёт **новый** инстанс сервиса (аналог `create`), в который переносятся
|
||||||
|
файлы из указанной резервной копии.<br/><br/>### Точка восстановления (recoveryPoint)<br/><br/>Имя резервной копии Velero, из которой будет выполнено восстановление.<br/><br/>### Домен нового инстанса<br/><br/>Обязан
|
||||||
|
отличаться от домена исходного (текущего) инстанса — восстановление на тот же домен не поддерживается.<br/><br/>### СУБД PostgreSQL нового инстанса<br/><br/>Если версия Nextcloud в бэкапе отличается от
|
||||||
|
текущей версии инстанса, для нового инстанса обязательно нужно указать **другую** СУБД PostgreSQL (нельзя восстанавливать бэкап со старой схемой БД поверх БД с более новой схемой).<br/><br/>---<br/><br/>##
|
||||||
|
7. Выходные параметры<br/><br/>После успешного создания сервиса платформа возвращает:<br/><br/>### connectionUrl<br/><br/>Адрес для входа в Nextcloud: `https://<домен>`.<br/><br/>### namespace<br/><br/>Namespace
|
||||||
|
в K8s-кластере, в котором развёрнут сервис.<br/><br/>### Учётные данные (Vault)<br/><br/>В Vault сохраняется пароль администратора (`adminPass`) под логином `admin`.<br/><br/>---<br/><br/>## 8. Пример
|
||||||
|
подключения<br/><br/>Откройте `connectionUrl` в браузере и авторизуйтесь:<br/><br/>* **Логин:** `admin`<br/>* **Пароль:** значение `adminPass` из блока «Учётные данные» в Vault<br/><br/>---<br/><br/>##
|
||||||
|
9. Дополнительная информация<br/><br/>### Зависимости<br/><br/>Nextcloud нельзя создать без уже существующих в том же `resourceRealm` сервисов PostgreSQL (k8s, `sslRequired: false`) и Redis (k8s). При
|
||||||
|
`delete` зависимые СУБД и Redis не трогаются — удаляется только сам Nextcloud.<br/><br/>### suspend/resume<br/><br/>При `suspend` количество реплик Nextcloud, Collabora и exporter''а метрик принудительно
|
||||||
|
выставляется в `0` через `helm upgrade` (реальное масштабирование, а не просто пауза cron). При `resume` реплики возвращаются к значению из `clusterConfiguration.replicas`.<br/><br/>### Collabora<br/><br/>Собирается
|
||||||
|
из отдельного `image.repository: nexus-sa.tst.nubes.ru/collabora/code` и включается только при `appConfiguration.documentServer == ''collabora''`. Доступен на том же домене и том же TLS-сертификате, что
|
||||||
|
и сам Nextcloud, по пути `/collabora`.<br/><br/>### Бэкап/восстановление через Velero<br/><br/>Бэкап/восстановление файлов идёт через Velero с селектором `backup=<serviceName>-velero-backup` и включает
|
||||||
|
под, PVC и PV — то есть непосредственно файлы `/var/www/html/data`. Восстановление БД в новый инстанс выполняется штатным механизмом `create` с параметром `instanceUidFrom`, который проставляет `recovery`-джоба
|
||||||
|
автоматически.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -53,21 +95,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
redisUid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
resourceRealm:
|
resourceRealm:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
psqlEnabled:
|
psqlEnabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -87,6 +123,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
redisUid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1056
|
- svcOperationCfsParamId: 1056
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -94,19 +135,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '2'
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1000'
|
defaultValue: '1000'
|
||||||
@@ -131,6 +159,19 @@ cfsParams:
|
|||||||
- '6144'
|
- '6144'
|
||||||
- '7168'
|
- '7168'
|
||||||
- '8192'
|
- '8192'
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1057
|
- svcOperationCfsParamId: 1057
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -140,7 +181,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-vjp2crbf
|
defaultValue: nextcloud-gsjkslra
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1058
|
- svcOperationCfsParamId: 1058
|
||||||
@@ -239,18 +280,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
logLevel:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- DEBUG
|
|
||||||
- INFO
|
|
||||||
- WARN
|
|
||||||
- ERROR
|
|
||||||
- FATAL
|
|
||||||
- NONE
|
|
||||||
version:
|
version:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -265,6 +294,18 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- collabora
|
- collabora
|
||||||
|
logLevel:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- DEBUG
|
||||||
|
- INFO
|
||||||
|
- WARN
|
||||||
|
- ERROR
|
||||||
|
- FATAL
|
||||||
|
- NONE
|
||||||
- svcOperationCfsParamId: 1078
|
- svcOperationCfsParamId: 1078
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -278,20 +319,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
veleroUid:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recoveryPoint:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
psqlEnabled:
|
psqlEnabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -306,6 +336,11 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'true'
|
- 'true'
|
||||||
|
recoveryPoint:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
psqlUid:
|
psqlUid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -316,6 +351,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
veleroUid:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1079
|
- svcOperationCfsParamId: 1079
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -366,7 +406,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-dcxz2gqv
|
defaultValue: nextcloud-cpp3zfhe
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1081
|
- svcOperationCfsParamId: 1081
|
||||||
@@ -376,6 +416,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
documentServer:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: collabora
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- collabora
|
||||||
logLevel:
|
logLevel:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: NONE
|
defaultValue: NONE
|
||||||
@@ -393,13 +440,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
documentServer:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: collabora
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- collabora
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
16:
|
16:
|
||||||
- 1055
|
- 1055
|
||||||
@@ -422,7 +462,7 @@ cfsParamsByOp:
|
|||||||
129: []
|
129: []
|
||||||
128: []
|
128: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"redisUid": "", "resourceRealm": "", "psqlEnabled": true, "redisEnabled": true, "psqlUid": ""}'
|
startupConfiguration: '{"resourceRealm": "", "psqlEnabled": true, "redisEnabled": true, "psqlUid": "", "redisUid": ""}'
|
||||||
clusterConfiguration: '{"replicas": 1, "disk": 10, "cpu": 1000, "memory": 1024}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"domain": "nextcloud-vjp2crbf"}'
|
accessConfiguration: '{"domain": "nextcloud-gsjkslra"}'
|
||||||
appConfiguration: '{"version": "33.0.4", "documentServer": "collabora", "logLevel": "INFO"}'
|
appConfiguration: '{"version": "33.0.4", "documentServer": "collabora", "logLevel": "INFO"}'
|
||||||
|
|||||||
@@ -54,10 +54,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 227
|
- svcOperationCfsParamId: 227
|
||||||
svcOperationCfsParam: resourceInstances
|
svcOperationCfsParam: resourceInstances
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ service_man: 'Расширенный реестр для управления Do
|
|||||||
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
||||||
keycloak'
|
keycloak'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: false
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
operations:
|
operations:
|
||||||
- svcOperationId: 14
|
- svcOperationId: 14
|
||||||
@@ -22,6 +22,18 @@ operations:
|
|||||||
operation: modify
|
operation: modify
|
||||||
kind: instance
|
kind: instance
|
||||||
action: modify
|
action: modify
|
||||||
|
- svcOperationId: 405
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 415
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 416
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
stateOut: {}
|
stateOut: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 16
|
- svcOperationCfsParamId: 16
|
||||||
@@ -37,21 +49,20 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 228
|
- svcOperationCfsParamId: 228
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '100'
|
defaultValue: '1000'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 229
|
- svcOperationCfsParamId: 229
|
||||||
svcOperationCfsParam: resourceMemory
|
svcOperationCfsParam: resourceMemory
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '200'
|
defaultValue: '1024'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 230
|
- svcOperationCfsParamId: 230
|
||||||
svcOperationCfsParam: resourceInstances
|
svcOperationCfsParam: resourceInstances
|
||||||
@@ -62,9 +73,33 @@ cfsParams:
|
|||||||
- svcOperationCfsParamId: 231
|
- svcOperationCfsParamId: 231
|
||||||
svcOperationCfsParam: s3Uid
|
svcOperationCfsParam: s3Uid
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
isRequired: true
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1126
|
||||||
|
svcOperationCfsParam: pvType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: s3
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- s3
|
||||||
|
- local
|
||||||
|
- svcOperationCfsParamId: 1127
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: '5'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1128
|
||||||
|
svcOperationCfsParam: authType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: local
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- local
|
||||||
|
- keycloak
|
||||||
- svcOperationCfsParamId: 822
|
- svcOperationCfsParamId: 822
|
||||||
svcOperationCfsParam: resourceInstances
|
svcOperationCfsParam: resourceInstances
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -83,6 +118,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1129
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
14:
|
14:
|
||||||
- 16
|
- 16
|
||||||
@@ -91,15 +132,25 @@ cfsParamsByOp:
|
|||||||
- 229
|
- 229
|
||||||
- 230
|
- 230
|
||||||
- 231
|
- 231
|
||||||
|
- 1126
|
||||||
|
- 1127
|
||||||
|
- 1128
|
||||||
15: []
|
15: []
|
||||||
270:
|
270:
|
||||||
- 822
|
- 822
|
||||||
- 823
|
- 823
|
||||||
- 824
|
- 824
|
||||||
|
- 1129
|
||||||
|
405: []
|
||||||
|
415: []
|
||||||
|
416: []
|
||||||
stateParams:
|
stateParams:
|
||||||
domain: harbor-1
|
domain: harbor-1
|
||||||
resourceRealm: ''
|
resourceRealm: ''
|
||||||
resourceCPU: '100'
|
resourceCPU: '1000'
|
||||||
resourceMemory: '200'
|
resourceMemory: '1024'
|
||||||
resourceInstances: '1'
|
resourceInstances: '1'
|
||||||
s3Uid: ''
|
s3Uid: ''
|
||||||
|
pvType: s3
|
||||||
|
resourceDisk: '5'
|
||||||
|
authType: local
|
||||||
|
|||||||
@@ -71,10 +71,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 964
|
- svcOperationCfsParamId: 964
|
||||||
svcOperationCfsParam: nodeAgentConfiguration
|
svcOperationCfsParam: nodeAgentConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
|
|||||||
@@ -0,0 +1,254 @@
|
|||||||
|
name: k8svalkey
|
||||||
|
service_id: 87
|
||||||
|
service_display_name: Valkey
|
||||||
|
service_short_name: k8svalkey
|
||||||
|
service_man: Valkey-кластер.<br/>Пока в статусе EXPEREMENTAL
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: true
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 396
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 401
|
||||||
|
operation: create_user
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 395
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 402
|
||||||
|
operation: delete_user
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 400
|
||||||
|
operation: modify
|
||||||
|
kind: instance
|
||||||
|
action: modify
|
||||||
|
- svcOperationId: 397
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 399
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 398
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
|
stateOut:
|
||||||
|
users: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 1066
|
||||||
|
svcOperationCfsParam: startupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
resourceRealm:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 1067
|
||||||
|
svcOperationCfsParam: clusterConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '512'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
|
- '4'
|
||||||
|
- '5'
|
||||||
|
- svcOperationCfsParamId: 1068
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1071
|
||||||
|
svcOperationCfsParam: valkeyConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0.1.0
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 0.1.0
|
||||||
|
- svcOperationCfsParamId: 1072
|
||||||
|
svcOperationCfsParam: valkeyConf
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
paramName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
paramValue:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1073
|
||||||
|
svcOperationCfsParam: username
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1074
|
||||||
|
svcOperationCfsParam: permissions
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1075
|
||||||
|
svcOperationCfsParam: username
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1069
|
||||||
|
svcOperationCfsParam: clusterConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
|
- '4'
|
||||||
|
- '5'
|
||||||
|
- svcOperationCfsParamId: 1070
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
396:
|
||||||
|
- 1066
|
||||||
|
- 1067
|
||||||
|
- 1068
|
||||||
|
- 1071
|
||||||
|
- 1072
|
||||||
|
401:
|
||||||
|
- 1073
|
||||||
|
- 1074
|
||||||
|
395: []
|
||||||
|
402:
|
||||||
|
- 1075
|
||||||
|
400:
|
||||||
|
- 1069
|
||||||
|
- 1070
|
||||||
|
397: []
|
||||||
|
399: []
|
||||||
|
398: []
|
||||||
|
stateParams:
|
||||||
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
|
clusterConfiguration: '{"cpu": 500, "disk": 10, "memory": 512, "replicas": 1, "shards": 1}'
|
||||||
|
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
||||||
|
valkeyConfiguration: '{"version": "0.1.0"}'
|
||||||
|
valkeyConf: '{"paramName": "", "paramValue": ""}'
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
name: k8s_ziti_controller
|
||||||
|
service_id: 88
|
||||||
|
service_display_name: k8sZitiController
|
||||||
|
service_short_name: k8sZitiController
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 99
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 105
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 294
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '300'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 295
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 296
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 297
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 298
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 299
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: k8sZitiController-1
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
99:
|
||||||
|
- 294
|
||||||
|
- 295
|
||||||
|
- 296
|
||||||
|
- 297
|
||||||
|
- 298
|
||||||
|
- 299
|
||||||
|
105: []
|
||||||
|
stateParams:
|
||||||
|
resourceCPU: '300'
|
||||||
|
resourceMemory: '512'
|
||||||
|
resourceDisk: '1'
|
||||||
|
resourceInstances: '1'
|
||||||
|
resourceRealm: ''
|
||||||
|
domain: k8sZitiController-1
|
||||||
+19
-21
@@ -66,10 +66,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1038
|
- svcOperationCfsParamId: 1038
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -106,7 +105,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: flask-ub0sbq5h
|
defaultValue: flask-67i6r0en
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1040
|
- svcOperationCfsParamId: 1040
|
||||||
@@ -116,13 +115,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: '3.12'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '3.12'
|
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
||||||
@@ -133,6 +125,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '3.12'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '3.12'
|
||||||
- svcOperationCfsParamId: 1041
|
- svcOperationCfsParamId: 1041
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -173,13 +172,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '3.12'
|
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -190,6 +182,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '3.12'
|
||||||
- svcOperationCfsParamId: 1044
|
- svcOperationCfsParamId: 1044
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -209,10 +208,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
376:
|
376:
|
||||||
- 1037
|
- 1037
|
||||||
@@ -233,6 +231,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "flask-ub0sbq5h"}'
|
accessConfiguration: '{"domain": "flask-67i6r0en"}'
|
||||||
appConfiguration: '{"version": "3.12", "gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git", "healthPath": ""}'
|
appConfiguration: '{"gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git", "healthPath": "", "version": "3.12"}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{}'
|
||||||
|
|||||||
+183
-116
@@ -101,6 +101,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '512'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -116,16 +126,6 @@ cfsParams:
|
|||||||
defaultValue: '10'
|
defaultValue: '10'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '500'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '512'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 789
|
- svcOperationCfsParamId: 789
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -139,10 +139,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 790
|
- svcOperationCfsParamId: 790
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -150,11 +149,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
slaveAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -170,6 +164,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 791
|
- svcOperationCfsParamId: 791
|
||||||
svcOperationCfsParam: postgresConfiguration
|
svcOperationCfsParam: postgresConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -183,16 +182,10 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
- '15'
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
poolerMaster:
|
poolerMaster:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -209,25 +202,41 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
sslRequired:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 792
|
- svcOperationCfsParamId: 792
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 793
|
- svcOperationCfsParamId: 793
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -237,9 +246,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 00000000-0000-0000-0000-000000000000
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
retain:
|
retain:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -251,6 +260,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: '0'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 794
|
- svcOperationCfsParamId: 794
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -258,15 +272,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -290,6 +295,15 @@ cfsParams:
|
|||||||
defaultValue: '100'
|
defaultValue: '100'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 1094
|
- svcOperationCfsParamId: 1094
|
||||||
svcOperationCfsParam: mtlsConfiguration
|
svcOperationCfsParam: mtlsConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -297,11 +311,6 @@ cfsParams:
|
|||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
certServer:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
type:
|
type:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 'off'
|
defaultValue: 'off'
|
||||||
@@ -318,7 +327,7 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
durationServer:
|
durationServer:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '87600'
|
defaultValue: '43800'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
certCA:
|
certCA:
|
||||||
@@ -326,6 +335,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
certServer:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 741
|
- svcOperationCfsParamId: 741
|
||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -455,6 +469,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
sslRequired:
|
||||||
@@ -480,24 +495,32 @@ cfsParams:
|
|||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 798
|
- svcOperationCfsParamId: 798
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramValue:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
|
||||||
paramName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
|
log_disconnections:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 799
|
- svcOperationCfsParamId: 799
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -505,11 +528,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
retain:
|
retain:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -520,6 +538,16 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
s3Uid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 800
|
- svcOperationCfsParamId: 800
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -527,20 +555,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
quota:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -559,6 +573,20 @@ cfsParams:
|
|||||||
- '5'
|
- '5'
|
||||||
- '12'
|
- '12'
|
||||||
- '23'
|
- '23'
|
||||||
|
quota:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 1095
|
- svcOperationCfsParamId: 1095
|
||||||
svcOperationCfsParam: mtlsConfiguration
|
svcOperationCfsParam: mtlsConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -566,6 +594,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- manual
|
||||||
|
- auto
|
||||||
durationCA:
|
durationCA:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -594,15 +631,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
type:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'off'
|
|
||||||
- manual
|
|
||||||
- auto
|
|
||||||
- svcOperationCfsParamId: 801
|
- svcOperationCfsParamId: 801
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -616,10 +644,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
recoveryPoint:
|
recoveryPoint:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -632,6 +659,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '512'
|
defaultValue: '512'
|
||||||
@@ -652,11 +684,6 @@ cfsParams:
|
|||||||
defaultValue: '10'
|
defaultValue: '10'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '500'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 803
|
- svcOperationCfsParamId: 803
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -664,6 +691,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
masterAccessList:
|
masterAccessList:
|
||||||
dataType: json
|
dataType: json
|
||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
@@ -679,11 +711,6 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterIpSpace:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 804
|
- svcOperationCfsParamId: 804
|
||||||
svcOperationCfsParam: postgresConfiguration
|
svcOperationCfsParam: postgresConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -725,23 +752,31 @@ cfsParams:
|
|||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 805
|
- svcOperationCfsParamId: 805
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 806
|
- svcOperationCfsParamId: 806
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -765,6 +800,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 807
|
- svcOperationCfsParamId: 807
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -804,6 +844,32 @@ cfsParams:
|
|||||||
- '10'
|
- '10'
|
||||||
- '15'
|
- '15'
|
||||||
- '20'
|
- '20'
|
||||||
|
- svcOperationCfsParamId: 1106
|
||||||
|
svcOperationCfsParam: mtlsConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 'off'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- manual
|
||||||
|
- auto
|
||||||
|
durationCA:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '175200'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
durationServer:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '87600'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
19:
|
19:
|
||||||
- 788
|
- 788
|
||||||
@@ -845,15 +911,16 @@ cfsParamsByOp:
|
|||||||
- 805
|
- 805
|
||||||
- 806
|
- 806
|
||||||
- 807
|
- 807
|
||||||
|
- 1106
|
||||||
54: []
|
54: []
|
||||||
114: []
|
114: []
|
||||||
115: []
|
115: []
|
||||||
stateParams:
|
stateParams:
|
||||||
clusterConfiguration: '{"replicas": 1, "disk": 10, "cpu": 500, "memory": 512}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
accessConfiguration: '{"slaveAccessList": "[]", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
postgresConfiguration: '{"version": "17", "sslRequired": true, "poolerMaster": false, "poolerSlave": false}'
|
postgresConfiguration: '{"version": "17", "poolerMaster": false, "poolerSlave": false, "sslRequired": true}'
|
||||||
postgresConf: '{"paramName": "", "paramValue": ""}'
|
postgresConf: '{"log_disconnections": "off", "log_connections": "off", "max_connections": 100}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "00000000-0000-0000-0000-000000000000", "retain": 7, "schedule": "0 0 * * *", "incrementCount": 0}'
|
||||||
autoscaleConfiguration: '{"percent": 10, "enabled": false, "schedule": 0, "quota": 100}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
mtlsConfiguration: '{"certServer": "", "type": "off", "durationCA": 175200, "durationServer": 87600, "certCA": ""}'
|
mtlsConfiguration: '{"type": "off", "durationCA": 175200, "durationServer": 43800, "certCA": "", "certServer": ""}'
|
||||||
|
|||||||
@@ -46,10 +46,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1062
|
- svcOperationCfsParamId: 1062
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -116,6 +115,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -136,11 +140,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1065
|
- svcOperationCfsParamId: 1065
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
|
|||||||
+177
-39
@@ -3,34 +3,65 @@ service_id: 92
|
|||||||
service_display_name: MongoDB
|
service_display_name: MongoDB
|
||||||
service_short_name: mongodb
|
service_short_name: mongodb
|
||||||
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
||||||
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>* **suspend** —
|
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>*
|
||||||
остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>*
|
**suspend** — остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/>* **create_backup** — создание бэкапа вручную<br/>* **delete_backup** —
|
||||||
**modify_user** — модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры развертывания базы данных<br/><br/>Эти параметры необходимо указать при создании
|
удаление бэкапов<br/>* **rollback** — восстановление кластера из бэкапа<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>* **modify_user**
|
||||||
базы данных.<br/><br/>### Платформа для развертывания<br/><br/>Среда, в которой будет развернут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в
|
— модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания базы данных<br/><br/>Эти параметры необходимо указать при создании базы данных.<br/><br/>###
|
||||||
кластере MongoDB.<br/>Оптимально выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>>
|
Платформа для развертывания<br/><br/>Среда, в которой будет развёрнут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально
|
||||||
**Примечание:** уменьшение количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>###
|
выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение
|
||||||
Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример:
|
количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
`20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример:
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример: `20`<br/><br/>### Расписание
|
||||||
`internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример:
|
резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько
|
||||||
`["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система автоматически
|
последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример: `7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>>
|
||||||
подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать нечётное
|
созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>> их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя
|
||||||
значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества узлов
|
ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых
|
||||||
после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>###
|
||||||
|
Включить TLS<br/><br/>Булевый параметр. Определяет режим работы TLS кластера.<br/><br/>- `true` — TLS включён (`tls.mode: allowTLS`). Сертификаты сохраняются в Vault.<br/>- `false` — TLS выключен (`tls.mode:
|
||||||
|
disabled`).<br/><br/>По умолчанию: `false`.<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система
|
||||||
|
автоматически подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать
|
||||||
|
нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества
|
||||||
|
узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
||||||
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для
|
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Расписание резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются
|
||||||
доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей,
|
резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример:
|
||||||
с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры создания пользователя<br/><br/>###
|
`7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>> созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>>
|
||||||
Имя пользователя<br/><br/>Указывается имя пользователя (любой регистр).<br/>Пример: `readApp`<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если база отсутствует,
|
их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите
|
||||||
она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner** — полный
|
`no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если
|
||||||
контроль над базой данных<br/><br/>---<br/><br/>## 4. Параметры модификации пользователя<br/><br/>### Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется
|
оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 4. Параметры удаления базы данных<br/><br/>### Удалить бакет S3 с бэкапами<br/><br/>Булевый
|
||||||
предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>###
|
параметр.<br/><br/>- `true` — вместе с кластером также будут удалены все резервные копии и бакет S3.<br/>- `false` — бакет S3 и хранящиеся в нём бэкапы сохраняются после удаления кластера.<br/><br/>По
|
||||||
Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/><br/>---<br/><br/>## 5. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для
|
умолчанию: `false`.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя резервной копии, которое будет присвоено объекту бэкапа в кластере.<br/>Должно соответствовать
|
||||||
удаления.<br/><br/>---<br/><br/>## 6. Выходные параметры<br/><br/>После успешного развертывания базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт
|
требованиям Kubernetes к именам объектов (строчные буквы, цифры, дефисы).<br/>Пример: `manual-20260904`<br/><br/>> **Примечание:** такой бэкап не участвует в автоматической ротации по параметру<br/>>
|
||||||
для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к
|
"Хранить последних бэкапов" (она применяется только к бэкапам по расписанию) и не удаляется<br/>> сам — при необходимости убрать его нужно вручную операцией `delete_backup`.<br/><br/>---<br/><br/>## 6.
|
||||||
кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>---<br/><br/>## 7. Пример подключения<br/><br/>Перед подключением необходимо установить **mongosh**.<br/><br/>Команда подключения к базе данных:<br/><br/>```<br/>mongosh
|
Параметры восстановления из бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя существующей резервной копии кластера, из которой будет выполнено восстановление. Указывается один из бэкапов в состоянии `ready`
|
||||||
"mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"<br/>```<br/><br/>Где:<br/><br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect или
|
(созданных автоматически по расписанию или вручную через операцию create_backup).<br/><br/>---<br/><br/>## 7. Параметры удаления бэкапов<br/><br/>### Имена бэкапов<br/><br/>Список имён резервных копий
|
||||||
externalConnect<br/>* `<dbName>` — имя базы данных<br/><br/>## 8. Дополнительная информация<br/><br/>Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину
|
для удаления.<br/>Пример: `["manual-20260904", "cron-mongok8s-...-20260903020000"]`<br/><br/>---<br/><br/>## 8. Параметры создания пользователя<br/><br/>### Имя пользователя<br/><br/>Указывается имя пользователя
|
||||||
и паролю.'
|
(любой регистр).<br/>Пример: `readApp`<br/><br/>> **Примечание:** имя пользователя должно быть уникальным в рамках кластера. Если пользователь<br/>> с таким именем уже существует, операция завершится
|
||||||
|
ошибкой — используйте `modify_user` для<br/>> изменения прав или `delete_user` + `create_user` для пересоздания.<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если
|
||||||
|
база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner**
|
||||||
|
— полный контроль над базой данных<br/>* **dbAdmin** — администрирование базы данных (индексы, статистика, схема) без доступа к чтению/записи данных<br/><br/>---<br/><br/>## 9. Параметры модификации пользователя<br/><br/>###
|
||||||
|
Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой
|
||||||
|
относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/>* **dbAdmin**<br/><br/>---<br/><br/>##
|
||||||
|
10. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для удаления.<br/><br/>---<br/><br/>## 11. Выходные параметры<br/><br/>После успешного развертывания
|
||||||
|
базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних
|
||||||
|
интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>> **Важно:** оба эндпоинта — это Kubernetes
|
||||||
|
Service на весь replset, а не адрес конкретно<br/>> primary-узла. Kubernetes не отслеживает, кто из узлов сейчас primary, поэтому новое<br/>> подключение без параметра `replicaSet` может попасть на secondary
|
||||||
|
и упасть с ошибкой записи<br/>> `not writable primary`. Обязательно указывайте `replicaSet=rs0` в строке подключения (см.<br/>> примеры ниже) — тогда драйвер сам обнаружит топологию кластера и всегда
|
||||||
|
направит запись на<br/>> актуальный primary, независимо от количества реплик и от того, происходили ли выборы.<br/><br/>---<br/><br/>## 12. Пример подключения<br/><br/>Перед подключением необходимо установить
|
||||||
|
**mongosh**.<br/><br/>### 12.1 Подключение без TLS<br/><br/>Для внутреннего подключения из той же сети:<br/><br/>```<br/>mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>?authSource=admin&replicaSet=rs0"<br/>```<br/><br/>###
|
||||||
|
12.2 Подключение через внешний endpoint с TLS<br/><br/>Кластер требует клиентский TLS-сертификат (mutual TLS). Сертификаты сохраняются в Vault при создании кластера в блоке `cer` в полях `ca`, `cer`,
|
||||||
|
`key` в кодировке base64.<br/><br/>Подготовка файлов:<br/><br/>```bash<br/># Декодировать сертификаты из Vault<br/>echo "<ca из блока Учётные данные>" | base64 -d > ca.crt<br/>echo "<cer из из блока Учётные
|
||||||
|
данные" | base64 -d > tls.crt<br/>echo "<key из из блока Учётные данные>" | base64 -d > tls.key<br/><br/># Собрать клиентский PEM<br/>cat tls.key tls.crt > client.pem<br/>```<br/><br/>Подключение:<br/><br/>```<br/>mongosh
|
||||||
|
"mongodb://<username>:<password>@<external_endpoint_db>:27017/<dbName>?tls=true&tlsCAFile=ca.crt&tlsCertificateKeyFile=client.pem&authSource=admin&replicaSet=rs0"<br/>```<br/><br/>Где:<br/><br/>* `<username>`
|
||||||
|
— имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect (для подключения без TLS)<br/>* `<external_endpoint_db>` — externalConnect (для внешнего подключения с TLS)<br/>*
|
||||||
|
`<dbName>` — имя базы данных<br/><br/>## 13. Дополнительная информация<br/><br/>Режим TLS задаётся параметром `mongoConfiguration.tls` только при создании кластера.<br/>После создания изменение TLS через
|
||||||
|
модификацию не поддерживается.<br/><br/>- При `true` кластер разворачивается с включённым TLS (`tls.mode: allowTLS`). Сервер принимает как обычные, так и TLS-соединения.<br/>- При `false` TLS выключен
|
||||||
|
(`tls.mode: disabled`).<br/><br/>Для внешнего подключения (`externalConnect`) используется сертификат, выпущенный через cert-manager, с SAN, покрывающим внешний DNS-адрес кластера — поэтому `tlsAllowInvalidHostnames`
|
||||||
|
не требуется, хост проверяется как обычно.<br/><br/>Внутренние подключения TLS-сертификат не используют вообще: режим `allowTLS` допускает как TLS, так и обычные соединения, но для внутреннего трафика
|
||||||
|
применяется обычное (не TLS) подключение — см. пример 12.1.<br/><br/>### Почему обязателен `replicaSet=rs0` в строке подключения<br/><br/>Percona-оператор не проставляет на поды никакого динамического
|
||||||
|
лейбла роли (primary/secondary) —<br/>у всех подов replset''а полностью одинаковые лейблы, различается только имя/индекс пода.<br/>`master`-сервис — это обычный Kubernetes Service с фиксированным селектором
|
||||||
|
на весь replset, он<br/>не знает и не может знать, какой под сейчас primary: k8s просто раздаёт новые TCP-подключения<br/>по кругу между всеми узлами. Без `replicaSet=rs0` в URI подключение может закрепиться
|
||||||
|
на<br/>secondary, и любая попытка записи будет падать с `not writable primary` — независимо от того,<br/>происходили выборы недавно или нет. Указание `replicaSet=rs0` включает у драйвера обнаружение<br/>топологии
|
||||||
|
реплики, и он сам направляет запись на актуальный primary при любом количестве узлов<br/>и после любых переизбраний.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -39,6 +70,10 @@ operations:
|
|||||||
operation: create
|
operation: create
|
||||||
kind: instance
|
kind: instance
|
||||||
action: create
|
action: create
|
||||||
|
- svcOperationId: 411
|
||||||
|
operation: create_backup
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
- svcOperationId: 198
|
- svcOperationId: 198
|
||||||
operation: create_user
|
operation: create_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -47,6 +82,10 @@ operations:
|
|||||||
operation: delete
|
operation: delete
|
||||||
kind: instance
|
kind: instance
|
||||||
action: delete
|
action: delete
|
||||||
|
- svcOperationId: 414
|
||||||
|
operation: delete_backup
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
- svcOperationId: 199
|
- svcOperationId: 199
|
||||||
operation: delete_user
|
operation: delete_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -67,11 +106,16 @@ operations:
|
|||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
action: resume
|
action: resume
|
||||||
|
- svcOperationId: 413
|
||||||
|
operation: rollback
|
||||||
|
kind: action
|
||||||
|
action: rollback
|
||||||
- svcOperationId: 194
|
- svcOperationId: 194
|
||||||
operation: suspend
|
operation: suspend
|
||||||
kind: instance
|
kind: instance
|
||||||
action: suspend
|
action: suspend
|
||||||
stateOut:
|
stateOut:
|
||||||
|
backups: {}
|
||||||
users: {}
|
users: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 1089
|
- svcOperationCfsParamId: 1089
|
||||||
@@ -87,10 +131,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1090
|
- svcOperationCfsParamId: 1090
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -130,16 +173,59 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
masterAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1102
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
s3Uid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '7'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0 0 * * *
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1116
|
||||||
|
svcOperationCfsParam: mongoConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
tls:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
- svcOperationCfsParamId: 1109
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 635
|
- svcOperationCfsParamId: 635
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -159,12 +245,28 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1103
|
||||||
|
svcOperationCfsParam: deleteS3Bucket
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 'true'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
- svcOperationCfsParamId: 1111
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 644
|
- svcOperationCfsParamId: 644
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: array
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
@@ -217,6 +319,23 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1104
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 640
|
- svcOperationCfsParamId: 640
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -236,32 +355,51 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1108
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
37:
|
37:
|
||||||
- 1089
|
- 1089
|
||||||
- 1090
|
- 1090
|
||||||
- 1091
|
- 1091
|
||||||
|
- 1102
|
||||||
|
- 1116
|
||||||
|
411:
|
||||||
|
- 1109
|
||||||
198:
|
198:
|
||||||
- 635
|
- 635
|
||||||
- 636
|
- 636
|
||||||
- 643
|
- 643
|
||||||
190: []
|
190:
|
||||||
|
- 1103
|
||||||
|
414:
|
||||||
|
- 1111
|
||||||
199:
|
199:
|
||||||
- 644
|
- 644
|
||||||
201:
|
201:
|
||||||
- 1092
|
- 1092
|
||||||
- 1093
|
- 1093
|
||||||
|
- 1104
|
||||||
200:
|
200:
|
||||||
- 640
|
- 640
|
||||||
- 641
|
- 641
|
||||||
- 642
|
- 642
|
||||||
409: []
|
409: []
|
||||||
196: []
|
196: []
|
||||||
|
413:
|
||||||
|
- 1108
|
||||||
194: []
|
194: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
|
mongoConfiguration: '{"tls": false}'
|
||||||
|
|||||||
@@ -76,10 +76,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1098
|
- svcOperationCfsParamId: 1098
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -129,6 +128,18 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1113
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
maxMessageSize:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '4'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1100
|
- svcOperationCfsParamId: 1100
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -136,11 +147,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -161,6 +167,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1101
|
- svcOperationCfsParamId: 1101
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -178,15 +189,29 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1114
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
maxMessageSize:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
38:
|
38:
|
||||||
- 1097
|
- 1097
|
||||||
- 1098
|
- 1098
|
||||||
- 1099
|
- 1099
|
||||||
|
- 1113
|
||||||
39: []
|
39: []
|
||||||
106:
|
106:
|
||||||
- 1100
|
- 1100
|
||||||
- 1101
|
- 1101
|
||||||
|
- 1114
|
||||||
410: []
|
410: []
|
||||||
117: []
|
117: []
|
||||||
116: []
|
116: []
|
||||||
@@ -194,3 +219,4 @@ stateParams:
|
|||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
|
mqConfiguration: '{"maxMessageSize": 4}'
|
||||||
|
|||||||
@@ -53,10 +53,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1020
|
- svcOperationCfsParamId: 1020
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -93,7 +92,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: lucee-tepsq9jk
|
defaultValue: lucee-bpp5vpr5
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1022
|
- svcOperationCfsParamId: 1022
|
||||||
@@ -161,11 +160,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
healthPath:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
version:
|
version:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -179,6 +173,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
healthPath:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1026
|
- svcOperationCfsParamId: 1026
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -198,10 +197,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
49:
|
49:
|
||||||
- 1019
|
- 1019
|
||||||
@@ -223,6 +221,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "lucee-tepsq9jk"}'
|
accessConfiguration: '{"domain": "lucee-bpp5vpr5"}'
|
||||||
appConfiguration: '{"version": "6.0", "gitPath": "https://github.com/xahys/testlucee", "healthPath": ""}'
|
appConfiguration: '{"version": "6.0", "gitPath": "https://github.com/xahys/testlucee", "healthPath": ""}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{}'
|
||||||
|
|||||||
@@ -51,10 +51,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 1029
|
- svcOperationCfsParamId: 1029
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -91,7 +90,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: node-btf263ja
|
defaultValue: node-zjkc4kir
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1031
|
- svcOperationCfsParamId: 1031
|
||||||
@@ -118,7 +117,7 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
healthPath:
|
healthPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: '1'
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1032
|
- svcOperationCfsParamId: 1032
|
||||||
@@ -127,6 +126,12 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
DB_PASS:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1033
|
- svcOperationCfsParamId: 1033
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -200,10 +205,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
58:
|
58:
|
||||||
- 1028
|
- 1028
|
||||||
@@ -224,6 +228,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "node-btf263ja"}'
|
accessConfiguration: '{"domain": "node-zjkc4kir"}'
|
||||||
appConfiguration: '{"version": "23", "gitPath": "https://github.com/xahys/testnode.git", "healthPath": ""}'
|
appConfiguration: '{"version": "23", "gitPath": "https://github.com/xahys/testnode.git", "healthPath": "1"}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{"DB_PASS": ""}'
|
||||||
|
|||||||
@@ -64,10 +64,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 170
|
- svcOperationCfsParamId: 170
|
||||||
svcOperationCfsParam: login
|
svcOperationCfsParam: login
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -105,10 +104,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
62:
|
62:
|
||||||
- 164
|
- 164
|
||||||
|
|||||||
@@ -0,0 +1,74 @@
|
|||||||
|
name: nodered
|
||||||
|
service_id: 97
|
||||||
|
service_display_name: NodeRed
|
||||||
|
service_short_name: nodered
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 72
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 73
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 193
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '500'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 194
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 195
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 196
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 197
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: nodered-1
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 323
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
72:
|
||||||
|
- 193
|
||||||
|
- 194
|
||||||
|
- 195
|
||||||
|
- 196
|
||||||
|
- 197
|
||||||
|
- 323
|
||||||
|
73: []
|
||||||
|
stateParams:
|
||||||
|
resourceCPU: '500'
|
||||||
|
resourceMemory: '512'
|
||||||
|
resourceDisk: '1'
|
||||||
|
resourceRealm: ''
|
||||||
|
domain: nodered-1
|
||||||
|
resourceInstances: '1'
|
||||||
@@ -67,28 +67,27 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
- svcOperationCfsParamId: 217
|
- svcOperationCfsParamId: 217
|
||||||
svcOperationCfsParam: registryPath
|
svcOperationCfsParam: registryPath
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: nexus-sa.tst.nubes.ru/docker-nubes/jolt
|
defaultValue: nexus-sa.tst.nubes.ru/docker-nubes/jolt
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 241
|
- svcOperationCfsParamId: 241
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 782
|
- svcOperationCfsParamId: 782
|
||||||
svcOperationCfsParam: ingressAnnotations
|
svcOperationCfsParam: ingressAnnotations
|
||||||
dataType: map
|
dataType: map
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 218
|
- svcOperationCfsParamId: 218
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -107,6 +106,24 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1120
|
||||||
|
svcOperationCfsParam: registryPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1121
|
||||||
|
svcOperationCfsParam: jsonEnv
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1122
|
||||||
|
svcOperationCfsParam: ingressAnnotations
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 272
|
- svcOperationCfsParamId: 272
|
||||||
svcOperationCfsParam: resourceRealm
|
svcOperationCfsParam: resourceRealm
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -114,10 +131,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
- iot-naeel
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- naeel-test-3
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
77:
|
77:
|
||||||
- 212
|
- 212
|
||||||
@@ -133,6 +149,9 @@ cfsParamsByOp:
|
|||||||
- 218
|
- 218
|
||||||
- 219
|
- 219
|
||||||
- 220
|
- 220
|
||||||
|
- 1120
|
||||||
|
- 1121
|
||||||
|
- 1122
|
||||||
403: []
|
403: []
|
||||||
79:
|
79:
|
||||||
- 272
|
- 272
|
||||||
|
|||||||
@@ -97,6 +97,12 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1124
|
||||||
|
svcOperationCfsParam: iniServiceParams
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: DISABLE_REGISTRATION:true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 259
|
- svcOperationCfsParamId: 259
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -143,6 +149,7 @@ cfsParamsByOp:
|
|||||||
- 238
|
- 238
|
||||||
- 818
|
- 818
|
||||||
- 821
|
- 821
|
||||||
|
- 1124
|
||||||
83: []
|
83: []
|
||||||
91:
|
91:
|
||||||
- 259
|
- 259
|
||||||
@@ -162,3 +169,4 @@ stateParams:
|
|||||||
psqlUid: ''
|
psqlUid: ''
|
||||||
ingressExtraAnnotations: ''
|
ingressExtraAnnotations: ''
|
||||||
iniServerParams: ''
|
iniServerParams: ''
|
||||||
|
iniServiceParams: DISABLE_REGISTRATION:true
|
||||||
|
|||||||
@@ -150,16 +150,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
recordName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recordTTL:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '3600'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recordType:
|
recordType:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: A
|
defaultValue: A
|
||||||
@@ -176,11 +166,21 @@ cfsParams:
|
|||||||
- NS
|
- NS
|
||||||
- SSHFP
|
- SSHFP
|
||||||
- CAA
|
- CAA
|
||||||
|
recordName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
recordInput:
|
recordInput:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
recordTTL:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3600'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 783
|
- svcOperationCfsParamId: 783
|
||||||
svcOperationCfsParam: recordName
|
svcOperationCfsParam: recordName
|
||||||
dataType: string
|
dataType: string
|
||||||
|
|||||||
@@ -2,7 +2,54 @@ name: mariadb
|
|||||||
service_id: 115
|
service_id: 115
|
||||||
service_display_name: Mariadb
|
service_display_name: Mariadb
|
||||||
service_short_name: mariadb
|
service_short_name: mariadb
|
||||||
service_man: 'Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.<br/>Автоматическое резервное копирование, ручное восстановление.'
|
service_man: '# Инструкция по развертыванию MariaDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MariaDB — реляционная база данных, совместимая с MySQL. Разворачивается через `mariadb-operator`
|
||||||
|
в Kubernetes.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание кластера<br/>* **delete** — удаление кластера<br/>* **suspend** — остановка кластера (под реально останавливается,
|
||||||
|
ресурсы не потребляются)<br/>* **resume** — запуск ранее остановленного кластера<br/>* **modify** — изменение параметров кластера<br/>* **reconcile** — синхронизация состояния инстанса с платформой<br/><br/>###
|
||||||
|
Доступные операции с базами данных<br/><br/>* **create_database** — создание базы данных<br/>* **delete_database** — удаление базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user**
|
||||||
|
— создание пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания кластера<br/><br/>### Платформа для развертывания (`startupConfiguration.resourceRealm`)<br/><br/>Среда,
|
||||||
|
в которой будет развёрнут кластер.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>JSON-объект:<br/>* `cpu` — квота CPU пода в миликорах (1000 = 1 vCPU). Пример: `500`<br/>* `memory`
|
||||||
|
— квота памяти пода в мегабайтах. Пример: `512`<br/>* `disk` — размер диска в гигабайтах. Пример: `10`<br/>* `replicas` — количество реплик. Сервис работает в режиме одного primary-узла (Galera выключена),
|
||||||
|
значение `0` эквивалентно остановке кластера.<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Поддерживаются только две версии: `8.4.0` и `9.4.0`.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`masterIpSpace` — имя ipSpace для выделения внешнего IP. Укажите `no-needed`, если внешний адрес не требуется.<br/>* `masterAccessList` — список IP/подсетей, которым разрешён доступ к порту 3306 снаружи.
|
||||||
|
Пустой список — доступ не ограничен на уровне firewall (в рамках выделенного ipSpace).<br/><br/>### Резервное копирование (`backupConfiguration`)<br/><br/>JSON-объект:<br/>* `s3Uid` — идентификатор S3-пользователя/квоты
|
||||||
|
для бэкапов.<br/>* `schedule` — cron-выражение расписания бэкапов. По умолчанию `0 0 * * *` (раз в сутки в полночь).<br/>* `retain` — время хранения бэкапов **в часах** (не в днях!). По умолчанию `7`
|
||||||
|
— то есть 7 часов. При суточном расписании этого значения обычно недостаточно, чтобы между двумя бэкапами всегда оставалась хотя бы одна валидная копия — рекомендуется указывать `retain` явно, с запасом
|
||||||
|
(например `720` = 30 суток).<br/><br/>> **Важно:** расписание и срок хранения бэкапов задаются **только при создании кластера**. Оператор MariaDB не позволяет изменить cron-расписание бэкапа после создания
|
||||||
|
(поле `spec.schedule.cron` неизменяемо на уровне admission-вебхука самого оператора) — поэтому эти параметры недоступны для изменения через `modify`.<br/><br/>> **Восстановление из бэкапа пока не реализовано
|
||||||
|
как самостоятельная операция платформы.** Бэкапы физически хранятся в S3-бакете инстанса (`technicals3backup-<instanceUid>`, префикс `mariadb/backups/`). Если нужно восстановить данные из бэкапа — бэкап
|
||||||
|
нужно **скачать из S3 и применить к базе вручную** (например через `mariabackup`/`mariadb-backup` restore или соответствующий инструмент).<br/><br/>### Автомасштабирование диска (`autoscaleConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`enabled` — включить автоматическое расширение диска при исчерпании места.<br/>* `quota` — максимальный размер диска, до которого разрешено автоматическое расширение (не может быть меньше `clusterConfiguration.disk`).<br/>*
|
||||||
|
`percent`, `schedule` — параметры триггера автомасштабирования.<br/><br/>---<br/><br/>## 3. Параметры модификации кластера<br/><br/>Все параметры модификации, кроме версии, можно как увеличивать, так
|
||||||
|
и уменьшать (кроме диска — см. ниже) — система подставит текущие сохранённые значения, если их не менять.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>* `cpu`, `memory` — можно
|
||||||
|
менять в любую сторону.<br/>* `disk` — можно **только увеличивать**, уменьшение уже выделенного размера не поддерживается.<br/>* `replicas` — `0` останавливает кластер тем же образом, что и `suspend`
|
||||||
|
(альтернативный способ временной остановки через `modify`).<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Можно только повышать версию (`8.4.0 → 9.4.0`). Попытка понизить версию
|
||||||
|
будет отклонена с явной ошибкой ещё до применения изменений.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>Можно включить внешний доступ (было `no-needed` → указали реальный `masterIpSpace`),
|
||||||
|
изменить список разрешённых IP, либо полностью отключить внешний доступ (`masterIpSpace: no-needed`) — в этом случае внешний Service, DNS-запись и правило firewall будут корректно откреплены и удалены.<br/><br/>###
|
||||||
|
Резервное копирование<br/><br/>Не передаётся при модификации — расписание и срок хранения бэкапов фиксируются на этапе `create` (см. п.2).<br/><br/>---<br/><br/>## 4. Параметры создания базы данных (`create_database`)<br/><br/>###
|
||||||
|
Имя базы данных (`dbName`)<br/><br/>Строка с именем новой базы. Не может совпадать с зарезервированными системными именами: `mysql`, `sys`, `information_schema`, `performance_schema`. База с таким же
|
||||||
|
именем не должна уже существовать в кластере.<br/><br/>---<br/><br/>## 5. Параметры удаления базы данных (`delete_database`)<br/><br/>### Имя базы данных (`dbName`)<br/><br/>База должна существовать в
|
||||||
|
кластере. Удаление будет отклонено, если к базе всё ещё привязаны пользователи — сначала нужно снять доступ (`delete_user`) у всех пользователей, ссылающихся на эту базу.<br/><br/>---<br/><br/>## 6. Параметры
|
||||||
|
создания пользователя (`create_user`)<br/><br/>### Имя пользователя (`username`)<br/><br/>Не может быть `root`, `healthcheck` или `mariadb.sys` — эти имена зарезервированы платформой/оператором. Пользователь
|
||||||
|
с таким именем не должен уже существовать в кластере — операция сверяется с текущим стейтом сервиса и отклоняется, если имя занято.<br/><br/>### Пароль (`password`)<br/><br/>Пароль для подключения от
|
||||||
|
имени создаваемого пользователя.<br/><br/>### Базы данных (`dbName`)<br/><br/>JSON-массив вида `[{"dbname": "имя_базы"}]` — список баз, к которым выдаётся полный доступ (`ALL PRIVILEGES`). Все перечисленные
|
||||||
|
базы должны уже существовать в кластере (создать заранее через `create_database`).<br/><br/>> Ограничения доступа по IP/подсети на уровне пользователя больше нет — `user@host` в самой MariaDB всегда `%`.
|
||||||
|
Доступ к порту 3306 контролируется только на уровне инстанса через `accessConfiguration.masterAccessList`, задаваемый при `create`/`modify` (см. п.2/п.3).<br/><br/>---<br/><br/>## 7. Параметры удаления
|
||||||
|
пользователя (`delete_user`)<br/><br/>### Имя пользователя (`username`)<br/><br/>Пользователь должен существовать в кластере. `root`/`healthcheck`/`mariadb.sys` удалить нельзя.<br/><br/>---<br/><br/>##
|
||||||
|
8. Выходные параметры<br/><br/>### internalConnect<br/><br/>Внутренний адрес для подключения из сервисов, работающих в том же кластере Kubernetes:<br/>```json<br/>{<br/> "master": {<br/> "dns": "<clusterResourceName>.<namespace>.svc.<domain>",<br/> "ip":
|
||||||
|
null,<br/> "port": 3306<br/> }<br/>}<br/>```<br/><br/>### externalConnect<br/><br/>Присутствует в выходных данных, **только если** был запрошен внешний доступ (`accessConfiguration.masterIpSpace`
|
||||||
|
отличен от `no-needed`). Если внешний доступ не запрошен или был отключён через `modify` — этого блока не будет вовсе (пустой блок в состояние не пишется):<br/>```json<br/>{<br/> "master": {<br/> "dns":
|
||||||
|
"write.<namespace>.<domain>",<br/> "ip": "<внешний IP>",<br/> "port": 3306<br/> }<br/>}<br/>```<br/><br/>---<br/><br/>## 9. Пример подключения<br/><br/>### 9.1 Изнутри кластера / того же namespace<br/><br/>```bash<br/>mariadb
|
||||||
|
-h <internalConnect.dns> -P 3306 -u <username> -p<br/>```<br/><br/>### 9.2 Через port-forward<br/><br/>```bash<br/>kubectl port-forward svc/<clusterResourceName> 3306:3306 -n <namespace><br/>```<br/><br/>**Важно:**
|
||||||
|
после `port-forward` подключайтесь именно по `127.0.0.1`, а не `localhost`:<br/><br/>```bash<br/>mariadb -h 127.0.0.1 -P 3306 -u <username> -p<br/>```<br/><br/>Клиент `mysql`/`mariadb` при указании `-h
|
||||||
|
localhost` **игнорирует TCP/порт** и всегда пытается подключиться через локальный unix-сокет (`/var/lib/mysql/mysql.sock`), которого на вашей машине нет — подключение упадёт с `ERROR 2002 (HY000): Can''t
|
||||||
|
connect to local server through socket`. `127.0.0.1` форсирует реальное TCP-подключение. Также не забывайте `-P` (порт) с заглавной буквы — строчная `-p` относится к паролю.<br/><br/>### 9.3 Снаружи (внешний
|
||||||
|
адрес)<br/><br/>```bash<br/>mariadb -h <externalConnect.ip или externalConnect.dns> -P 3306 -u <username> -p<br/>```<br/><br/>Доступно только если при создании/модификации был указан реальный `masterIpSpace`
|
||||||
|
и подключающийся IP входит в `accessConfiguration.masterAccessList` (или список пуст).<br/><br/>Где:<br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль пользователя<br/><br/>---<br/><br/>##
|
||||||
|
10. Дополнительная информация<br/><br/>* Расписание бэкапов (`backupConfiguration.schedule`/`retain`) задаётся один раз при создании и не может быть изменено позже — ограничение самого `mariadb-operator`,
|
||||||
|
а не платформы.<br/>* Версию MariaDB можно только повышать, откат на более старую версию не поддерживается.<br/>* Размер диска можно только увеличивать.<br/>* `suspend` реально останавливает под (масштабирование
|
||||||
|
StatefulSet в 0 реплик), а не просто помечает кластер как приостановленный — расход ресурсов CPU/RAM/диска (кроме уже занятого диска) прекращается.<br/>* При отключении внешнего доступа через `modify`
|
||||||
|
(`masterIpSpace: no-needed`) внешний Service, DNS-запись и правило firewall удаляются, а `externalConnect` пропадает из выходных данных.<br/>* Самостоятельного восстановления из бэкапа (операции `restore`)
|
||||||
|
пока нет. Бэкапы лежат в S3 инстанса — восстановление данных в существующий кластер выполняется вручную, скачиванием и применением бэкапа самим владельцем инстанса.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -64,6 +111,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 878
|
- svcOperationCfsParamId: 878
|
||||||
@@ -102,16 +150,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
masterAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 880
|
- svcOperationCfsParamId: 880
|
||||||
svcOperationCfsParam: mariadbConfiguration
|
svcOperationCfsParam: mariadbConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -132,7 +180,7 @@ cfsParams:
|
|||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
@@ -192,19 +240,19 @@ cfsParams:
|
|||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: db-ebbjso21
|
defaultValue: db-nmdlrebb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 735
|
- svcOperationCfsParamId: 735
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: user3vanbmfy
|
defaultValue: useroxxeykhb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 736
|
- svcOperationCfsParamId: 736
|
||||||
svcOperationCfsParam: password
|
svcOperationCfsParam: password
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: p4egnsar
|
defaultValue: apsyfstb
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 737
|
- svcOperationCfsParamId: 737
|
||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
@@ -218,12 +266,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 738
|
|
||||||
svcOperationCfsParam: accessHosts
|
|
||||||
dataType: string
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: '%'
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 456
|
- svcOperationCfsParamId: 456
|
||||||
svcOperationCfsParam: deleteS3Bucket
|
svcOperationCfsParam: deleteS3Bucket
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
@@ -306,28 +348,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 8.4.0
|
- 8.4.0
|
||||||
- 9.4.0
|
- 9.4.0
|
||||||
- svcOperationCfsParamId: 886
|
|
||||||
svcOperationCfsParam: backupConfiguration
|
|
||||||
dataType: map-fixed
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: true
|
|
||||||
dataDescriptor:
|
|
||||||
schedule:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
s3Uid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
retain:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 887
|
- svcOperationCfsParamId: 887
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -335,15 +355,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -367,6 +378,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
138:
|
138:
|
||||||
- 877
|
- 877
|
||||||
@@ -381,7 +401,6 @@ cfsParamsByOp:
|
|||||||
- 735
|
- 735
|
||||||
- 736
|
- 736
|
||||||
- 737
|
- 737
|
||||||
- 738
|
|
||||||
139:
|
139:
|
||||||
- 456
|
- 456
|
||||||
248:
|
248:
|
||||||
@@ -392,7 +411,6 @@ cfsParamsByOp:
|
|||||||
- 883
|
- 883
|
||||||
- 884
|
- 884
|
||||||
- 885
|
- 885
|
||||||
- 886
|
|
||||||
- 887
|
- 887
|
||||||
287: []
|
287: []
|
||||||
141: []
|
141: []
|
||||||
@@ -400,7 +418,7 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
mariadbConfiguration: '{"version": "9.4.0"}'
|
mariadbConfiguration: '{"version": "9.4.0"}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
||||||
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
|
|||||||
@@ -2,21 +2,24 @@ name: kafka
|
|||||||
service_id: 116
|
service_id: 116
|
||||||
service_display_name: ApacheKafka
|
service_display_name: ApacheKafka
|
||||||
service_short_name: kafka
|
service_short_name: kafka
|
||||||
service_man: '# Инструкция по развертыванию Организация в Cloud Director через платформу<br/><br/>## 1. Общая информация<br/><br/>Сервис **Организация в Cloud Director** предназначен для управления изолированными
|
service_man: "# Инструкция по развертыванию Apache Kafka через платформу<br/><br/>---<br/>## 1. Общая информация<br/>Брокер сообщений Apache Kafka — это отказоустойчивая распределённая платформа для обмена\
|
||||||
организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль
|
\ сообщениями и потоковой обработки данных в реальном времени.<br/>Позволяет надёжно передавать события между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние,\
|
||||||
уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.<br/><br/>### Доступные операции<br/><br/>**create**
|
\ так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.<br/><br/>## Доступные операции<br/>- **create** — Создание кластера<br/>- **delete** — Удаление кластера<br/>-\
|
||||||
— Создание новой организации с заданными характеристиками и типом доступа.<br/>**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.<br/>**modify**
|
\ **suspend** — Остановка кластера<br/>- **resume** — Запуск кластера<br/><br/>- **create_topic** — Создание топика<br/>- **modify_topic** — Модификация топика<br/>- **delete_topic** — Удаление\
|
||||||
— Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).<br/>**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.<br/>**resume**
|
\ топика<br/><br/>- **create_user** — Создание пользователя<br/>- **modify_user** — Модификация пользователя<br/>- **delete_user** — Удаление пользователя<br/><br/><br/>---<br/>## 2. Параметры\
|
||||||
— Разморозка организации, восстановление функций управления.<br/><br/>---<br/><br/>## 2. Параметры развертывания<br/><br/>Параметры входных данных операции **create**:<br/><br/>### Платформа для развертывания<br/>Описание:
|
\ развертывания кластера<br/>Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:<br/><br/>* **Платформа для развертывания:**<br/> Платформа для развертывания (среда, в\
|
||||||
платформа, на которой будет создана организация.<br/>Пример значения: `ngcloud.ru`.<br/><br/>### Тип организации<br/>Описание: тип создаваемой организации.<br/>Варианты:<br/>- `iaas` — организация с прямым
|
\ которой будет развернут кластер). Пример: `\tk8s-3.ext.nubes.ru`.<br/><br/>* **Количество узлов в сети:**<br/> Количество узлов (брокеров) в кластере Kafka<br/><br/>* **Квота (megabyte) памяти пода:**<br/>\
|
||||||
доступом к облаку и авторизацией через Keycloak.<br/>- `saas` — организация под управлением Nubes, без прямого доступа к облаку.<br/><br/>---<br/><br/>## 3. Рекомендованные характеристики<br/><br/>###
|
\ Квота памяти пода в мегабайтах. Пример: `2048`<br/><br/>* **Квота (millicore ) ядра пода:**<br/> Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`<br/><br/>* **Размер (gigabyte) диска\
|
||||||
Тестовое окружение<br/>- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.<br/><br/>### Промышленное окружение<br/>- Тип организации: `saas` (упрощённая
|
\ для базы данных:**<br/> Размер диска для хранения данных в гигабайтах. Пример: `20`<br/><br/>* **Выделяет внешний IP для доступа к master:**<br/> Флаг, определяющий, нужно ли выделять внешний IP для\
|
||||||
модель использования).<br/><br/>---<br/><br/>## 4. Выходные параметры<br/><br/>Услуга предоставляет следующие выходные параметры (формируются в процессе операций):<br/><br/>### Идентификатор организации<br/>Уникальный
|
\ доступа к master-брокеру. Пример: `true` или `false`<br/><br/>* **Имя ipSpace для публикации внешнего IP**<br/> Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`<br/><br/>---<br/>##\
|
||||||
идентификатор созданной организации. Используется для всех дальнейших API-операций.<br/><br/>### Статус организации<br/>Отражает текущее состояние: active, suspended, modifying, deleting.<br/><br/>###
|
\ 4. Выходные параметры<br/>После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.<br/>Ключевыми из них являются:<br/><br/>**internalConnect** (выдаётся только при работе кластера\
|
||||||
Параметры сети<br/>Выходные данные при наличии ipSpaces: список выделенных внешних IP, имя ip_space, количество IP.<br/><br/>---<br/><br/>## 5. Дополнительная информация<br/><br/>- Для конфигурации внешних
|
\ по внутренним адресам)<br/>Внутренние эндпоинты для подключения из сервисов, развёрнутых внутри того же Kubernetes-кластера.<br/>```yaml<br/>internalConnect:<br/> bootstrap:<br/> fqdn: \"<serviceName>-kafka-tls-bootstrap.<namespace>.svc.<clusterDomain>\"\
|
||||||
IP внутри организации необходимо предварительно создать:<br/>-- хотя бы один **Виртуальный датацентр (VDC)**;<br/>-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к этой организации.<br/>-
|
<br/> port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"<serviceName>-<serviceName>-pool-0.<serviceName>-kafka-brokers.<namespace>.svc.<clusterDomain>\"<br/> port: 9093<br/>```<br/><br/>**externalConnect**\
|
||||||
Удаление организации возможно только через 14 дней после перевода в состояние suspend.<br/>- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок
|
\ (выдаётся только при выделении внешнего IP)<br/>Внешние эндпоинты, зарегистрированные в DNS.<br/>```yaml<br/>externalConnect:<br/> bootstrap:<br/> fqdn: \"bootstrap.<namespace>.<dnsZone>\"<br/>\
|
||||||
и иных объектов.<br/>- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.<br/>- Для iaas-организаций доступ осуществляется через Keycloak.<br/><br/>'
|
\ port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"broker-1.<namespace>.<dnsZone>\"<br/> port: 9093<br/>```<br/><br/>Заполняется **только один** из параметров:<br/>- при внешней аллокации\
|
||||||
|
\ (`loadbalancer`) — `externalConnect`, `internalConnect` остаётся пустым;<br/>- при внутреннем режиме — `internalConnect`, `externalConnect` остаётся пустым.<br/><br/>Для подключения используются следующие\
|
||||||
|
\ порты:<br/><br/>* 9092 — внутренний нешифрованный доступ (plain).<br/>* 9093 — внутренний и внешний доступ по TLS, с обязательной TLS-аутентификацией.<br/><br/>---<br/>## 5. Дополнительная информация<br/>Для\
|
||||||
|
\ создания топиков, пользователей и управления ими, а также для интеграции с кластерами Kafka используйте соответствующие сервисы и раздел \"Облачные сервисы\".<br/>---"
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -82,6 +85,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1085
|
- svcOperationCfsParamId: 1085
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 551
|
- svcOperationCfsParamId: 551
|
||||||
|
|||||||
@@ -85,6 +85,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 838
|
- svcOperationCfsParamId: 838
|
||||||
@@ -114,6 +115,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
shards:
|
shards:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -123,11 +129,6 @@ cfsParams:
|
|||||||
- '1'
|
- '1'
|
||||||
- '2'
|
- '2'
|
||||||
- '3'
|
- '3'
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 839
|
- svcOperationCfsParamId: 839
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -192,11 +193,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
schedule:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: 0 0 * * *
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -207,6 +203,11 @@ cfsParams:
|
|||||||
defaultValue: '7'
|
defaultValue: '7'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0 0 * * *
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 843
|
- svcOperationCfsParamId: 843
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -214,6 +215,14 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
enabled:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
schedule:
|
schedule:
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
defaultValue: '0'
|
defaultValue: '0'
|
||||||
@@ -238,14 +247,6 @@ cfsParams:
|
|||||||
- '10'
|
- '10'
|
||||||
- '15'
|
- '15'
|
||||||
- '20'
|
- '20'
|
||||||
enabled:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'false'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
- svcOperationCfsParamId: 851
|
- svcOperationCfsParamId: 851
|
||||||
svcOperationCfsParam: clickhouseFilesConfiguration
|
svcOperationCfsParam: clickhouseFilesConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -312,20 +313,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
shards:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '2'
|
|
||||||
- '3'
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -346,6 +333,20 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 845
|
- svcOperationCfsParamId: 845
|
||||||
svcOperationCfsParam: clickhouseKeeperConfiguration
|
svcOperationCfsParam: clickhouseKeeperConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -353,15 +354,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer >= 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '0'
|
|
||||||
- '1'
|
|
||||||
- '3'
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -372,6 +364,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '0'
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
- svcOperationCfsParamId: 846
|
- svcOperationCfsParamId: 846
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -512,10 +513,10 @@ cfsParamsByOp:
|
|||||||
182: []
|
182: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 2048, "replicas": 1, "shards": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 2048, "replicas": 1, "disk": 10, "shards": 1}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
||||||
clickhouseConfiguration: '{"version": "25.10"}'
|
clickhouseConfiguration: '{"version": "25.10"}'
|
||||||
backupConfiguration: '{"schedule": "0 0 * * *", "s3Uid": "", "retain": 7}'
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
autoscaleConfiguration: '{"schedule": 0, "quota": 100, "percent": 10, "enabled": false}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
||||||
|
|||||||
@@ -19,6 +19,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
clusterName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: k8s-6sa9dyug
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
resourceRealm:
|
resourceRealm:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: sandbox.nubes.ru
|
defaultValue: sandbox.nubes.ru
|
||||||
@@ -26,9 +31,14 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- sandbox.nubes.ru
|
- sandbox.nubes.ru
|
||||||
clusterName:
|
providerVdc:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-brcyqrjr
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
networkProvider:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 772
|
- svcOperationCfsParamId: 772
|
||||||
@@ -40,10 +50,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -82,6 +93,18 @@ cfsParams:
|
|||||||
defaultValue: '[{}]'
|
defaultValue: '[{}]'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
groupName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: workers-5tcvtwk4
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
sizingPolicy:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '{}'
|
||||||
sizingDisk:
|
sizingDisk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '50'
|
defaultValue: '50'
|
||||||
@@ -92,18 +115,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
groupName:
|
autoscale:
|
||||||
dataType: string
|
dataType: boolean
|
||||||
defaultValue: workers-jax0kk2f
|
defaultValue: 'false'
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
sizingPolicy:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '{}'
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 775
|
- svcOperationCfsParamId: 775
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -143,8 +180,8 @@ cfsParamsByOp:
|
|||||||
- 774
|
- 774
|
||||||
- 775
|
- 775
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "sandbox.nubes.ru", "clusterName": "example-brcyqrjr"}'
|
startupConfiguration: '{"clusterName": "k8s-6sa9dyug", "resourceRealm": "sandbox.nubes.ru", "providerVdc": "", "networkProvider": ""}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
controlPlaneConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 1}'
|
controlPlaneConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 1}'
|
||||||
workerConfiguration: '{"sizingDisk": 50, "count": 2, "groupName": "workers-jax0kk2f", "sizingPolicy": ""}'
|
workerConfiguration: '{"groupName": "workers-5tcvtwk4", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
|
|||||||
@@ -62,35 +62,6 @@ cfsParams:
|
|||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
ffThemes:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
ffPublicLink:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
ffLogging:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
userCount:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
requestApproveMaxPeriod:
|
requestApproveMaxPeriod:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
@@ -120,6 +91,35 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
ffThemes:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
ffPublicLink:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
ffLogging:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
userCount:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 658
|
- svcOperationCfsParamId: 658
|
||||||
svcOperationCfsParam: s3Storage
|
svcOperationCfsParam: s3Storage
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -133,6 +133,24 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
userCount:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
requestApproveMaxPeriod:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
ffOnlineEditor:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
ffWatermark:
|
ffWatermark:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -173,24 +191,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
userCount:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
requestApproveMaxPeriod:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
ffOnlineEditor:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
- svcOperationCfsParamId: 660
|
- svcOperationCfsParamId: 660
|
||||||
svcOperationCfsParam: s3Storage
|
svcOperationCfsParam: s3Storage
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -212,5 +212,5 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: valo.ngcloud.ru
|
resourceRealm: valo.ngcloud.ru
|
||||||
domain: ''
|
domain: ''
|
||||||
valoOptions: '{"ffThemes": true, "ffPublicLink": true, "ffLogging": true, "userCount": 10, "requestApproveMaxPeriod": 2, "ffOnlineEditor": true, "ffWatermark": true, "ffUserImport": true}'
|
valoOptions: '{"requestApproveMaxPeriod": 2, "ffOnlineEditor": true, "ffWatermark": true, "ffUserImport": true, "ffThemes": true, "ffPublicLink": true, "ffLogging": true, "userCount": 10}'
|
||||||
s3Storage: '10'
|
s3Storage: '10'
|
||||||
|
|||||||
@@ -2,7 +2,17 @@ name: k8s_sthutrval_cluster
|
|||||||
service_id: 150
|
service_id: 150
|
||||||
service_display_name: Kubernetes кластер Штурвал
|
service_display_name: Kubernetes кластер Штурвал
|
||||||
service_short_name: k8sSthutrvalCluster
|
service_short_name: k8sSthutrvalCluster
|
||||||
service_man: Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле
|
service_man: '# Развёртывание Kubernetes: ограничения и предварительный чек-лист<br/><br/>> **Внимание:** перед началом развёртывания кластера Kubernetes убедитесь, что выполнены все описанные ниже условия.
|
||||||
|
Несоблюдение порядка шагов может привести к ошибкам при создании кластера.<br/><br/>---<br/><br/>## Ограничения при развёртывании<br/><br/>| Ограничение | Статус |<br/>|---|---|<br/>| 1 кластер = 1 vDC
|
||||||
|
| Действует (будет исправлено в ближайшее время) |<br/><br/>---<br/><br/>## Предварительный чек-лист<br/><br/>Перед установкой кластера Kubernetes необходимо последовательно выполнить следующие шаги.<br/><br/>###
|
||||||
|
1. Создать организацию в Cloud Director<br/><br/>- Перейдите в услугу **Организация в Cloud Director**.<br/>- Создайте организацию.<br/><br/>### 2. Создать виртуальный датацентр (vDC)<br/><br/>- Перейдите
|
||||||
|
в услугу **Виртуальный датацентр (vDC)**.<br/>- Создайте vDC.<br/>- Выделите **достаточно ресурсов для разворачивания _всех_ нод** кластера.<br/><br/>### 3. Создать Edge (сетевой шлюз периметра)<br/><br/>-
|
||||||
|
Перейдите в услугу **Сетевой шлюз периметра (Edge)**.<br/>- Создайте Edge.<br/>- Обязательно:<br/> - Включить **ALB**.<br/> - Установить **Кол-во VS на AVI ≥ 3**.<br/><br/>### 4. Добавить внешние адреса
|
||||||
|
в организации<br/><br/>- Вернитесь в **Организация в Cloud Director**.<br/>- Выполните операцию **Modify**.<br/>- Добавьте **3 внешних адреса**.<br/>- Количество `ipSpaces` значения не имеет, важно чтобы
|
||||||
|
суммарно было 3 адреса.<br/><br/>### 5. Настроить SNAT для виртуальных машин<br/><br/>- Вернитесь в **Сетевой шлюз периметра (Edge)**.<br/>- Выполните операцию **Modify**.<br/>- Выберите доступный `ipSpaceName`.<br/>-
|
||||||
|
Это будет **SNAT для виртуальных машин**.<br/><br/>### 6. Развернуть кластер Kubernetes<br/><br/>- Только **после выполнения всех шагов выше** переходите к услуге **Kubernetes кластер Штурвал**.<br/>-
|
||||||
|
Начните разворачивание кластера.<br/><br/>---<br/><br/>## Минимальные требования к кластеру<br/><br/>| Параметр | Значение |<br/>|---|---|<br/>| Мастер-ноды | минимум **1** |<br/>| Воркер-ноды | минимум
|
||||||
|
**1** |<br/>| CPU (на ноду) | **4 vCPU** |<br/>| RAM (на ноду) | **8 GB** |<br/>| Диск (на ноду) | **50 GB** |<br/><br/>---'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -61,9 +71,65 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
clusterName:
|
clusterName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-imhltbba
|
defaultValue: example-ryatr2rx
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
exLogging:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exMonitoring:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exLocalCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exVip:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exUpdate:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exIngress:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exNamedCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 751
|
- svcOperationCfsParamId: 751
|
||||||
svcOperationCfsParam: controlPlaneConfiguration
|
svcOperationCfsParam: controlPlaneConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -99,6 +165,11 @@ cfsParams:
|
|||||||
defaultValue: '[{}]'
|
defaultValue: '[{}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
groupName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: workers-e6bfgpqf
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -116,11 +187,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
groupName:
|
autoscale:
|
||||||
dataType: string
|
dataType: boolean
|
||||||
defaultValue: workers-0krz2kek
|
defaultValue: 'false'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 753
|
- svcOperationCfsParamId: 753
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -161,10 +253,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -205,6 +298,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -245,7 +339,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
groupName:
|
groupName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: workers-apak4rks
|
defaultValue: workers-ohtgog3p
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
@@ -265,6 +359,32 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
autoscale:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 759
|
- svcOperationCfsParamId: 759
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -317,8 +437,9 @@ cfsParamsByOp:
|
|||||||
174: []
|
174: []
|
||||||
173: []
|
173: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"vdcUid": "", "nsxtUid": "", "clusterName": "example-imhltbba"}'
|
startupConfiguration: '{"vdcUid": "", "nsxtUid": "", "clusterName": "example-ryatr2rx", "exLogging": true, "exMonitoring": true, "exLocalCsi": true, "exVip": true, "exUpdate": true, "exIngress": true,
|
||||||
|
"exNamedCsi": true}'
|
||||||
controlPlaneConfiguration: '{"sizingPolicy": "[]", "sizingDisk": 50, "count": 1}'
|
controlPlaneConfiguration: '{"sizingPolicy": "[]", "sizingDisk": 50, "count": 1}'
|
||||||
workerConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 2, "groupName": "workers-0krz2kek"}'
|
workerConfiguration: '{"groupName": "workers-e6bfgpqf", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
|
|||||||
@@ -71,10 +71,6 @@ operations:
|
|||||||
operation: recovery_secrets
|
operation: recovery_secrets
|
||||||
kind: subresource
|
kind: subresource
|
||||||
action: recovery
|
action: recovery
|
||||||
- svcOperationId: 234
|
|
||||||
operation: restart
|
|
||||||
kind: action
|
|
||||||
action: restart
|
|
||||||
- svcOperationId: 216
|
- svcOperationId: 216
|
||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
@@ -103,6 +99,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 664
|
- svcOperationCfsParamId: 664
|
||||||
@@ -141,13 +138,13 @@ cfsParams:
|
|||||||
svcOperationCfsParam: domain
|
svcOperationCfsParam: domain
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: bao-onbcvsgk
|
defaultValue: bao-nosgzjqe
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 675
|
- svcOperationCfsParamId: 675
|
||||||
svcOperationCfsParam: kvName
|
svcOperationCfsParam: kvName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: kvname-9e9wvkt2
|
defaultValue: kvname-ps9az5f9
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 728
|
- svcOperationCfsParamId: 728
|
||||||
svcOperationCfsParam: policySettings
|
svcOperationCfsParam: policySettings
|
||||||
@@ -156,21 +153,21 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
capabilities:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '["read", "list"]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
path:
|
path:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
capabilities:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '["read", "list"]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 729
|
- svcOperationCfsParamId: 729
|
||||||
svcOperationCfsParam: policyName
|
svcOperationCfsParam: policyName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: policy-s0hfjfmn
|
defaultValue: policy-kyvtdypv
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 677
|
- svcOperationCfsParamId: 677
|
||||||
svcOperationCfsParam: kvName
|
svcOperationCfsParam: kvName
|
||||||
@@ -277,12 +274,12 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
capabilities:
|
path:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
path:
|
capabilities:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
@@ -351,7 +348,6 @@ cfsParamsByOp:
|
|||||||
- 723
|
- 723
|
||||||
- 724
|
- 724
|
||||||
- 725
|
- 725
|
||||||
234: []
|
|
||||||
216: []
|
216: []
|
||||||
215: []
|
215: []
|
||||||
238:
|
238:
|
||||||
@@ -369,4 +365,4 @@ stateParams:
|
|||||||
resourceMemory: '512'
|
resourceMemory: '512'
|
||||||
resourceDisk: '10'
|
resourceDisk: '10'
|
||||||
appVersion: 2.5.2
|
appVersion: 2.5.2
|
||||||
domain: bao-onbcvsgk
|
domain: bao-nosgzjqe
|
||||||
|
|||||||
@@ -0,0 +1,100 @@
|
|||||||
|
name: nifi
|
||||||
|
service_id: 153
|
||||||
|
service_display_name: Nifi
|
||||||
|
service_short_name: nifi
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 229
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 235
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 711
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: nifi-qmpqdalo
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 712
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '2000'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 713
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '4096'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 714
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- svcOperationCfsParamId: 715
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '10'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 716
|
||||||
|
svcOperationCfsParam: appVersion
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 2.6.0
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 2.6.0
|
||||||
|
- svcOperationCfsParamId: 717
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 718
|
||||||
|
svcOperationCfsParam: jdbcDrivers
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
path:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: https://jdbc.postgresql.org/download/postgresql-42.7.8.jar
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
229:
|
||||||
|
- 711
|
||||||
|
- 712
|
||||||
|
- 713
|
||||||
|
- 714
|
||||||
|
- 715
|
||||||
|
- 716
|
||||||
|
- 717
|
||||||
|
- 718
|
||||||
|
235: []
|
||||||
|
stateParams:
|
||||||
|
domain: nifi-qmpqdalo
|
||||||
|
resourceCPU: '2000'
|
||||||
|
resourceMemory: '4096'
|
||||||
|
resourceInstances: '1'
|
||||||
|
resourceDisk: '10'
|
||||||
|
appVersion: 2.6.0
|
||||||
|
resourceRealm: ''
|
||||||
|
jdbcDrivers: '{"path": "https://jdbc.postgresql.org/download/postgresql-42.7.8.jar"}'
|
||||||
@@ -1,33 +1,39 @@
|
|||||||
name: llm_ai
|
name: llm_ai
|
||||||
service_id: 163
|
service_id: 163
|
||||||
service_display_name: LLM
|
service_display_name: ML Улей
|
||||||
service_short_name: llmAi
|
service_short_name: llmAi
|
||||||
service_man: '## 1. Общая информация<br/><br/>LLMaaS (Large Language Model as a Service) — это сервис для доступа к языковым моделям через OpenAI-совместимое API.<br/>Платформа позволяет создавать организации
|
service_man: '## 1. Общая информация<br/><br/>LLMaaS (Large Language Model as a Service) — это сервис для доступа к языковым моделям через OpenAI-совместимое API.<br/>Платформа позволяет создавать организации
|
||||||
(тенанты), команды, выпускать и управлять API-ключами, устанавливать лимиты на использование.<br/><br/>---<br/><br/>## Доступные операции<br/><br/>- **create** — Создание организации в LLMaaS<br/>-
|
(тенанты), команды, выпускать и управлять API-ключами, устанавливать лимиты на использование.<br/><br/>### Ограничение: одна организация на контрагента<br/><br/>На одного контрагента может быть создана
|
||||||
**delete** — Удаление организации<br/><br/>- **create_team** — Создание команды внутри организации<br/>- **modify_team** — Редактирование команды (модели, RPM, TPM)<br/>- **delete_team** —
|
**только одна организация** в LLMaaS.<br/>Повторная попытка создать организацию для того же контрагента завершится ошибкой.<br/><br/>### Возможные ошибки и как их обрабатывать<br/><br/>При работе с сервисом
|
||||||
Удаление команды<br/><br/>- **create_secrets** — Создание API-ключа<br/>- **update_secrets** — Обновление параметров API-ключа<br/>- **delete_secrets** — Удаление API-ключа<br/><br/>---<br/><br/>##
|
могут возникнуть типовые ошибки. Ниже описано, как их распознать и что делать.<br/><br/>| Ошибка | Когда возникает | Что делать |<br/>|--------|-----------------|------------|<br/>| `Организация в LLMaaS
|
||||||
|
уже привязана к контрагенту <contragentCode>` | При операции `create`, если организация для данного контрагента уже существует | На одного контрагента допускается только одна организация. Если нужно изменить
|
||||||
|
существующую организацию, используйте операции управления командами и ключами |<br/>| `Не хватает нужного гранта. Примените реконсиляцию для данного инстанса` | При операциях `create_team`, `modify_team`,
|
||||||
|
если модель не выдана организации на Layer 1 | Запустите операцию `reconcile` для данного инстанса. Она обновит список моделей, доступных организации, после чего повторите исходную операцию |<br/>| `Лимиты
|
||||||
|
API-ключа не могут превышать лимиты команды` | При операциях `create_secrets`, `update_secrets` | Уменьшите значения `RPM` и/или `TPM` ключа до уровня команды или увеличьте лимиты самой команды через
|
||||||
|
`modify_team` |<br/><br/>---<br/><br/>## Доступные операции<br/><br/>- **create** — Создание организации в LLMaaS<br/>- **delete** — Удаление организации<br/><br/>- **create_team** —
|
||||||
|
Создание команды внутри организации<br/>- **modify_team** — Редактирование команды (модели, RPM, TPM)<br/>- **delete_team** — Удаление команды<br/><br/>- **create_secrets** — Создание API-ключа<br/>-
|
||||||
|
**update_secrets** — Обновление параметров API-ключа<br/>- **delete_secrets** — Удаление API-ключа<br/><br/>- **reconcile** — Обновление списка моделей, доступных организации<br/><br/>---<br/><br/>##
|
||||||
2. Параметры создания организации<br/><br/>Ниже перечислены параметры, которые необходимо указать при создании организации:<br/><br/>* **Платформа для развертывания**<br/> Выбирается автоматически, изменять
|
2. Параметры создания организации<br/><br/>Ниже перечислены параметры, которые необходимо указать при создании организации:<br/><br/>* **Платформа для развертывания**<br/> Выбирается автоматически, изменять
|
||||||
не нужно.<br/><br/>* **Период бюджета**<br/> Срок жизни организации в днях.<br/> Пример: `30`<br/><br/><br/>---<br/><br/>## 3. Параметры создания команды<br/><br/>* **Имя команды**<br/> Уникальное
|
не нужно.<br/><br/>## 3. Параметры создания команды<br/><br/>* **Имя команды**<br/> Уникальное имя команды в рамках организации.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели,
|
||||||
имя команды в рамках организации.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для команды.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Максимальное
|
доступной для команды.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в
|
||||||
количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример: `100000`<br/><br/>---<br/><br/>##
|
минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример: `100000`<br/><br/>---<br/><br/>## 4. Параметры редактирования команды<br/><br/>Для существующей команды
|
||||||
4. Параметры редактирования команды<br/><br/>Для существующей команды можно изменить:<br/><br/>* **Модель**<br/> Новая модель для команды.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту
|
можно изменить:<br/><br/>* **Модель**<br/> Новая модель для команды.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>*
|
||||||
(RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>---<br/><br/>## 5. Параметры создания API-ключа<br/><br/>Ниже
|
**Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>---<br/><br/>## 5. Параметры создания API-ключа<br/><br/>Ниже перечислены параметры, которые необходимо указать
|
||||||
перечислены параметры, которые необходимо указать при создании API-ключа:<br/><br/>* **Имя ключа**<br/> Уникальное имя ключа в рамках организации.<br/> Пример: `prod-key`<br/><br/>* **Команда**<br/> Имя
|
при создании API-ключа:<br/><br/>* **Имя ключа**<br/> Уникальное имя ключа в рамках организации.<br/> Пример: `prod-key`<br/><br/>* **Команда**<br/> Имя команды для привязки ключа. Если не указано
|
||||||
команды для привязки ключа. Если не указано — ключ привязывается к команде `main`.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для данного ключа.<br/> Пример: `gpt-oss-120b`<br/><br/>*
|
— ключ привязывается к команде `main`.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для данного ключа.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту
|
||||||
**Лимит запросов в минуту (RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих
|
(RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример:
|
||||||
+ исходящих) в минуту.<br/> Пример: `100000`<br/><br/>**Важно:** Лимиты API-ключа не могут превышать лимиты команды, к которой он привязан.<br/>При превышении операция будет отклонена с ошибкой.<br/>Перед
|
`100000`<br/><br/>**Важно:** Лимиты API-ключа не могут превышать лимиты команды, к которой он привязан.<br/>При превышении операция будет отклонена с ошибкой.<br/>Перед созданием ключа убедитесь, что
|
||||||
созданием ключа убедитесь, что `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/><br/>---<br/><br/>## 6. Параметры обновления API-ключа<br/><br/>Для уже существующего ключа можно изменить параметры. Все
|
`RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/><br/>---<br/><br/>## 6. Параметры обновления API-ключа<br/><br/>Для уже существующего ключа можно изменить параметры. Все параметры являются опциональными:<br/><br/>*
|
||||||
параметры являются опциональными:<br/><br/>* **Имя ключа**<br/> Имя обновляемого ключа.<br/> Пример: `prod-key`<br/><br/>* **Модель**<br/> Новое название модели.<br/> Пример: `gpt-oss-20b`<br/><br/>*
|
**Имя ключа**<br/> Имя обновляемого ключа.<br/> Пример: `prod-key`<br/><br/>* **Модель**<br/> Новое название модели.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое
|
||||||
**Лимит запросов в минуту (RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>**Важно:** При обновлении
|
значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>**Важно:** При обновлении лимитов API-ключа новые значения не могут
|
||||||
лимитов API-ключа новые значения не могут превышать лимиты команды.<br/>Если указать значения выше командных, операция завершится ошибкой.<br/>Указывайте `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/>Команда
|
превышать лимиты команды.<br/>Если указать значения выше командных, операция завершится ошибкой.<br/>Указывайте `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/>Команда определяется автоматически по стейту
|
||||||
определяется автоматически по стейту услуги — изменить привязку к другой команде через эту операцию нельзя.<br/><br/>---<br/><br/>## 7. Параметры удаления API-ключа<br/><br/>* **Команда**<br/> Имя команды,
|
услуги — изменить привязку к другой команде через эту операцию нельзя.<br/><br/>---<br/><br/>## 7. Параметры удаления API-ключа<br/><br/>* **Команда**<br/> Имя команды, к которой привязан ключ.<br/> Пример:
|
||||||
к которой привязан ключ.<br/> Пример: `production`<br/><br/>* **Имя ключа**<br/> Имя удаляемого ключа.<br/> Пример: `prod-key`<br/><br/>---<br/><br/>## 8. Параметры удаления команды<br/><br/>* **Имя
|
`production`<br/><br/>* **Имя ключа**<br/> Имя удаляемого ключа.<br/> Пример: `prod-key`<br/><br/>---<br/><br/>## 8. Параметры удаления команды<br/><br/>* **Имя команды**<br/> Имя удаляемой команды.<br/> Пример:
|
||||||
команды**<br/> Имя удаляемой команды.<br/> Пример: `production`<br/><br/>---<br/><br/>## 9. Параметры удаления организации<br/><br/>Удаление организации не требует дополнительных параметров — удаляется
|
`production`<br/><br/>---<br/><br/>## 9. Параметры удаления организации<br/><br/>Удаление организации не требует дополнительных параметров — удаляется вся организация со всеми командами и ключами.<br/><br/>---<br/><br/>##
|
||||||
вся организация со всеми командами и ключами.<br/><br/>---<br/><br/>## 10. Выходные параметры<br/><br/>После успешного создания организации платформа возвращает:<br/><br/>* **connectionUrl**<br/> URL
|
10. Выходные параметры<br/><br/>После успешного создания организации платформа возвращает:<br/><br/>* **connectionUrl**<br/> URL для доступа к inference API (OpenAI-совместимый).<br/> Пример: `https://api.aillm.ru`<br/><br/>---<br/><br/><br/>##
|
||||||
для доступа к inference API (OpenAI-совместимый).<br/> Пример: `https://api.aillm.ru`<br/><br/>---<br/><br/><br/>## 12. Пример использования API<br/><br/>После получения API-ключа клиент может обращаться
|
11. Пример использования API<br/><br/>После получения API-ключа клиент может обращаться к LLMaaS напрямую:<br/><br/>**Запрос к chat completions:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/chat/completions
|
||||||
к LLMaaS напрямую:<br/><br/>**Запрос к chat completions:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/chat/completions \<br/> -H "Authorization: Bearer sk-..." \<br/> -H "Content-Type: application/json"
|
\<br/> -H "Authorization: Bearer sk-..." \<br/> -H "Content-Type: application/json" \<br/> -d ''{<br/> "model": "gpt-oss-120b",<br/> "messages": [<br/> {"role": "user", "content": "Привет!"}<br/> ]<br/> }''<br/>```<br/><br/>**Получение
|
||||||
\<br/> -d ''{<br/> "model": "gpt-oss-120b",<br/> "messages": [<br/> {"role": "user", "content": "Привет!"}<br/> ]<br/> }''<br/>```<br/><br/>**Получение списка доступных моделей:**<br/><br/>```bash<br/>curl
|
списка доступных моделей:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/models \<br/> -H "Authorization: Bearer sk-..."<br/>```<br/>'
|
||||||
https://api.aillm.ru/v1/models \<br/> -H "Authorization: Bearer sk-..."<br/>```<br/>'
|
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: false
|
suspendOnDestroyDefault: false
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -60,6 +66,10 @@ operations:
|
|||||||
operation: modify_team
|
operation: modify_team
|
||||||
kind: subresource
|
kind: subresource
|
||||||
action: modify
|
action: modify
|
||||||
|
- svcOperationId: 412
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
- svcOperationId: 277
|
- svcOperationId: 277
|
||||||
operation: update_secrets
|
operation: update_secrets
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -106,45 +116,6 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1083
|
|
||||||
svcOperationCfsParam: variablesKeys
|
|
||||||
dataType: array-map-fixed
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: false
|
|
||||||
dataDescriptor:
|
|
||||||
teamName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
keyName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
models:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '{}'
|
|
||||||
tpmLimit:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '100000'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
rpmLimit:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '60'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
count:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 858
|
- svcOperationCfsParamId: 858
|
||||||
svcOperationCfsParam: teamName
|
svcOperationCfsParam: teamName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -241,6 +212,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1157
|
||||||
|
svcOperationCfsParam: ''
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
271:
|
271:
|
||||||
- 826
|
- 826
|
||||||
@@ -250,7 +227,6 @@ cfsParamsByOp:
|
|||||||
- 835
|
- 835
|
||||||
- 857
|
- 857
|
||||||
- 859
|
- 859
|
||||||
- 1083
|
|
||||||
278:
|
278:
|
||||||
- 858
|
- 858
|
||||||
- 860
|
- 860
|
||||||
@@ -267,11 +243,13 @@ cfsParamsByOp:
|
|||||||
- 865
|
- 865
|
||||||
- 873
|
- 873
|
||||||
- 874
|
- 874
|
||||||
|
412: []
|
||||||
277:
|
277:
|
||||||
- 852
|
- 852
|
||||||
- 853
|
- 853
|
||||||
- 854
|
- 854
|
||||||
- 855
|
- 855
|
||||||
- 875
|
- 875
|
||||||
|
- 1157
|
||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: llmAi.aillm.ru
|
resourceRealm: llmAi.aillm.ru
|
||||||
|
|||||||
@@ -73,6 +73,12 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- iaas
|
- iaas
|
||||||
- saas
|
- saas
|
||||||
|
- svcOperationCfsParamId: 1125
|
||||||
|
svcOperationCfsParam: organizationSuffix
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 871
|
- svcOperationCfsParamId: 871
|
||||||
svcOperationCfsParam: admins
|
svcOperationCfsParam: admins
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -110,7 +116,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
count:
|
count:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -118,6 +124,7 @@ cfsParamsByOp:
|
|||||||
136:
|
136:
|
||||||
- 418
|
- 418
|
||||||
- 556
|
- 556
|
||||||
|
- 1125
|
||||||
283:
|
283:
|
||||||
- 871
|
- 871
|
||||||
137: []
|
137: []
|
||||||
@@ -131,3 +138,4 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: sandbox.nubes.ru
|
resourceRealm: sandbox.nubes.ru
|
||||||
organizationType: iaas
|
organizationType: iaas
|
||||||
|
organizationSuffix: ''
|
||||||
|
|||||||
@@ -95,12 +95,12 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
subparam2:
|
subparam1:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
subparam1:
|
subparam2:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
@@ -159,10 +159,17 @@ cfsParams:
|
|||||||
minStr1:
|
minStr1:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: abracadabra
|
defaultValue: abracadabra
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- abracadabra
|
- abracadabra
|
||||||
|
- incorr
|
||||||
|
- correctvalue
|
||||||
|
s3-inst:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 654
|
- svcOperationCfsParamId: 654
|
||||||
svcOperationCfsParam: arrayMapFixedExample
|
svcOperationCfsParam: arrayMapFixedExample
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -170,21 +177,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
bol1:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
minStr1:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- abracadabra
|
|
||||||
param1:
|
param1:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -204,6 +196,21 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
bol1:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
minStr1:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- abracadabra
|
||||||
- svcOperationCfsParamId: 863
|
- svcOperationCfsParamId: 863
|
||||||
svcOperationCfsParam: arr
|
svcOperationCfsParam: arr
|
||||||
dataType: array
|
dataType: array
|
||||||
@@ -214,6 +221,12 @@ cfsParams:
|
|||||||
- test
|
- test
|
||||||
- '2'
|
- '2'
|
||||||
- val1
|
- val1
|
||||||
|
- svcOperationCfsParamId: 1131
|
||||||
|
svcOperationCfsParam: s3-ref-root
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 287
|
- svcOperationCfsParamId: 287
|
||||||
svcOperationCfsParam: durationMs
|
svcOperationCfsParam: durationMs
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
@@ -286,6 +299,7 @@ cfsParamsByOp:
|
|||||||
- 647
|
- 647
|
||||||
- 654
|
- 654
|
||||||
- 863
|
- 863
|
||||||
|
- 1131
|
||||||
71: []
|
71: []
|
||||||
92:
|
92:
|
||||||
- 287
|
- 287
|
||||||
@@ -306,9 +320,10 @@ stateParams:
|
|||||||
whereFail: '1'
|
whereFail: '1'
|
||||||
resourceRealm: dummy
|
resourceRealm: dummy
|
||||||
bodymessage: ''
|
bodymessage: ''
|
||||||
mapExample: '{"subparam2": "", "subparam1": "", "secret": ""}'
|
mapExample: '{"subparam1": "", "subparam2": "", "secret": ""}'
|
||||||
jsonExample: ''
|
jsonExample: ''
|
||||||
nestedRefExample: ''
|
nestedRefExample: ''
|
||||||
mapFixed: '{"param1": 1, "param2": "1", "param3": 1, "bol1": false, "minStr1": "abracadabra"}'
|
mapFixed: '{"param1": 1, "param2": "1", "param3": 1, "bol1": false, "minStr1": "abracadabra", "s3-inst": ""}'
|
||||||
arrayMapFixedExample: '{"bol1": false, "minStr1": "", "param1": 0, "param2": "", "param3": 1}'
|
arrayMapFixedExample: '{"param1": 0, "param2": "", "param3": 1, "bol1": false, "minStr1": ""}'
|
||||||
arr: ''
|
arr: ''
|
||||||
|
s3-ref-root: ''
|
||||||
|
|||||||
@@ -84,12 +84,12 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 397
|
- svcOperationCfsParamId: 397
|
||||||
svcOperationCfsParam: cpuGuaranteed
|
svcOperationCfsParam: cpuGuaranteed
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '20'
|
defaultValue: '0'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '20'
|
- '0'
|
||||||
- '50'
|
- '50'
|
||||||
- '80'
|
- '80'
|
||||||
- svcOperationCfsParamId: 557
|
- svcOperationCfsParamId: 557
|
||||||
@@ -110,6 +110,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1130
|
||||||
|
svcOperationCfsParam: suffixName
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: 7uabwsgb
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 560
|
- svcOperationCfsParamId: 560
|
||||||
svcOperationCfsParam: cpuAllocated
|
svcOperationCfsParam: cpuAllocated
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -148,6 +154,7 @@ cfsParamsByOp:
|
|||||||
- 557
|
- 557
|
||||||
- 558
|
- 558
|
||||||
- 746
|
- 746
|
||||||
|
- 1130
|
||||||
24: []
|
24: []
|
||||||
112:
|
112:
|
||||||
- 560
|
- 560
|
||||||
@@ -160,7 +167,8 @@ stateParams:
|
|||||||
organizationUid: ''
|
organizationUid: ''
|
||||||
providerVdc: ''
|
providerVdc: ''
|
||||||
storageConfig: '{"name": "", "size": 2000}'
|
storageConfig: '{"name": "", "size": 2000}'
|
||||||
cpuGuaranteed: '20'
|
cpuGuaranteed: '0'
|
||||||
cpuAllocated: '80'
|
cpuAllocated: '80'
|
||||||
memAllocated: '200'
|
memAllocated: '200'
|
||||||
networkProvider: ''
|
networkProvider: ''
|
||||||
|
suffixName: 7uabwsgb
|
||||||
|
|||||||
@@ -88,6 +88,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1110
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 10.10.102.0/24
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 81.22.46.22
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 185.247.187.77
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 368
|
- svcOperationCfsParamId: 368
|
||||||
svcOperationCfsParam: needEnableAVI
|
svcOperationCfsParam: needEnableAVI
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
@@ -115,6 +137,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1112
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
10:
|
10:
|
||||||
- 8
|
- 8
|
||||||
@@ -123,12 +167,14 @@ cfsParamsByOp:
|
|||||||
- 621
|
- 621
|
||||||
- 622
|
- 622
|
||||||
- 825
|
- 825
|
||||||
|
- 1110
|
||||||
25: []
|
25: []
|
||||||
111:
|
111:
|
||||||
- 368
|
- 368
|
||||||
- 369
|
- 369
|
||||||
- 372
|
- 372
|
||||||
- 856
|
- 856
|
||||||
|
- 1112
|
||||||
252: []
|
252: []
|
||||||
stateParams:
|
stateParams:
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
@@ -137,3 +183,4 @@ stateParams:
|
|||||||
vdcType: vdc
|
vdcType: vdc
|
||||||
vdcGroupUid: ''
|
vdcGroupUid: ''
|
||||||
qosProfile: ''
|
qosProfile: ''
|
||||||
|
routedNetConfiguration: '{"ipAddrPool": "10.10.102.0/24", "mainDns": "81.22.46.22", "secondDns": "185.247.187.77"}'
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
name: vcexternalip
|
name: vcexternalip
|
||||||
service_id: 25
|
service_id: 25
|
||||||
service_display_name: Публичные IP адреса
|
service_display_name: '[DEPRECATED] Публичные IP адреса'
|
||||||
service_short_name: vcexternalip
|
service_short_name: vcexternalip
|
||||||
service_man: '**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**<br/>Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать<br/><br/>Резервировать
|
service_man: '**Обычно эта услуга разворачивается автоматически при развёртывании более сложных услуг**<br/>Вручную создавать можно, однако услуга требует много параметров, о которых можно просто не знать<br/><br/>Резервировать
|
||||||
публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.<br/>Вы можете назначить IP адрес для существующего экземпляра
|
публичные IP адреса можно только после создания NGcloud Organization, NGcloud Виртуальный датацентр, NGcloud Каталог, Сетевой шлюз периметра.<br/>Вы можете назначить IP адрес для существующего экземпляра
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ cfsParams:
|
|||||||
svcOperationCfsParam: vappName
|
svcOperationCfsParam: vappName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: fgpdul5a
|
defaultValue: j8lanwbr
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 623
|
- svcOperationCfsParamId: 623
|
||||||
svcOperationCfsParam: vdcUid
|
svcOperationCfsParam: vdcUid
|
||||||
@@ -71,5 +71,5 @@ cfsParamsByOp:
|
|||||||
208: []
|
208: []
|
||||||
stateParams:
|
stateParams:
|
||||||
nsxtUid: ''
|
nsxtUid: ''
|
||||||
vappName: fgpdul5a
|
vappName: j8lanwbr
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
|
|||||||
@@ -83,11 +83,22 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 411
|
- svcOperationCfsParamId: 411
|
||||||
svcOperationCfsParam: vmDisk
|
svcOperationCfsParam: vmDisks
|
||||||
dataType: integer > 0
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: '[{"busNum": 0, "size": "20"}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
busNum:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
size:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 412
|
- svcOperationCfsParamId: 412
|
||||||
svcOperationCfsParam: ipSpaceName
|
svcOperationCfsParam: ipSpaceName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -96,9 +107,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 413
|
- svcOperationCfsParamId: 413
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: array
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: '["0.0.0.0/0"]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 414
|
- svcOperationCfsParamId: 414
|
||||||
svcOperationCfsParam: imageVm
|
svcOperationCfsParam: imageVm
|
||||||
@@ -126,10 +137,34 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 448
|
- svcOperationCfsParamId: 448
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '["22"]'
|
defaultValue: '[{"port": "22", "type": "tcp"}, {"port": "10050", "type": "tcp"}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '22'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1118
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: 'false'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 493
|
- svcOperationCfsParamId: 493
|
||||||
svcOperationCfsParam: vmCpu
|
svcOperationCfsParam: vmCpu
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -143,22 +178,28 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 495
|
- svcOperationCfsParamId: 495
|
||||||
svcOperationCfsParam: vmDisk
|
svcOperationCfsParam: vmDisks
|
||||||
dataType: integer > 0
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
busNum:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
size:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 496
|
- svcOperationCfsParamId: 496
|
||||||
svcOperationCfsParam: ipSpaceName
|
svcOperationCfsParam: ipSpaceName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 497
|
- svcOperationCfsParamId: 497
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -167,10 +208,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 498
|
- svcOperationCfsParamId: 498
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1119
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 509
|
- svcOperationCfsParamId: 509
|
||||||
svcOperationCfsParam: vmName
|
svcOperationCfsParam: vmName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -201,11 +266,6 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 514
|
- svcOperationCfsParamId: 514
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -242,10 +302,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 520
|
- svcOperationCfsParamId: 520
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1123
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
132:
|
132:
|
||||||
- 407
|
- 407
|
||||||
@@ -260,6 +344,7 @@ cfsParamsByOp:
|
|||||||
- 416
|
- 416
|
||||||
- 417
|
- 417
|
||||||
- 448
|
- 448
|
||||||
|
- 1118
|
||||||
133: []
|
133: []
|
||||||
159:
|
159:
|
||||||
- 493
|
- 493
|
||||||
@@ -268,6 +353,7 @@ cfsParamsByOp:
|
|||||||
- 496
|
- 496
|
||||||
- 497
|
- 497
|
||||||
- 498
|
- 498
|
||||||
|
- 1119
|
||||||
286: []
|
286: []
|
||||||
164:
|
164:
|
||||||
- 509
|
- 509
|
||||||
@@ -281,6 +367,7 @@ cfsParamsByOp:
|
|||||||
- 517
|
- 517
|
||||||
- 518
|
- 518
|
||||||
- 520
|
- 520
|
||||||
|
- 1123
|
||||||
135: []
|
135: []
|
||||||
134: []
|
134: []
|
||||||
stateParams:
|
stateParams:
|
||||||
@@ -288,11 +375,12 @@ stateParams:
|
|||||||
vmName: web01
|
vmName: web01
|
||||||
vmCpu: '1'
|
vmCpu: '1'
|
||||||
vmRam: '1'
|
vmRam: '1'
|
||||||
vmDisk: ''
|
vmDisks: '{"busNum": 0, "size": 1}'
|
||||||
ipSpaceName: ''
|
ipSpaceName: ''
|
||||||
accessIpList: ''
|
accessIpList: '["0.0.0.0/0"]'
|
||||||
imageVm: ''
|
imageVm: ''
|
||||||
cloudInit: ''
|
cloudInit: ''
|
||||||
userLogin: myuser
|
userLogin: myuser
|
||||||
userPublicKey: ''
|
userPublicKey: ''
|
||||||
accessPortList: '["22"]'
|
accessPortList: '{"port": "22", "type": "all"}'
|
||||||
|
sameSnat: 'false'
|
||||||
|
|||||||
@@ -39,6 +39,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '128'
|
defaultValue: '128'
|
||||||
@@ -49,11 +54,6 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '100'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
disk:
|
disk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '5'
|
defaultValue: '5'
|
||||||
@@ -72,6 +72,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 815
|
- svcOperationCfsParamId: 815
|
||||||
@@ -91,7 +92,7 @@ cfsParams:
|
|||||||
- service
|
- service
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: abracadabra-l9gtqv1m
|
defaultValue: abracadabra-i5kntoh3
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
@@ -121,26 +122,26 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
disk:
|
disk:
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 817
|
- svcOperationCfsParamId: 817
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -148,16 +149,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
slaveIpSpace:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
slaveAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
type:
|
type:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -176,11 +167,21 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
masterAccessList:
|
masterAccessList:
|
||||||
dataType: json
|
dataType: json
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
74:
|
74:
|
||||||
- 813
|
- 813
|
||||||
@@ -194,6 +195,6 @@ cfsParamsByOp:
|
|||||||
98: []
|
98: []
|
||||||
97: []
|
97: []
|
||||||
stateParams:
|
stateParams:
|
||||||
clusterConfiguration: '{"memory": 128, "replicas": 1, "cpu": 100, "disk": 5}'
|
clusterConfiguration: '{"cpu": 100, "memory": 128, "replicas": 1, "disk": 5}'
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
accessConfiguration: '{"type": "ingress", "domain": "abracadabra-l9gtqv1m", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
accessConfiguration: '{"type": "ingress", "domain": "abracadabra-i5kntoh3", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
|
|||||||
@@ -2,7 +2,49 @@ name: nextcloud
|
|||||||
service_id: 50
|
service_id: 50
|
||||||
service_display_name: Nextcloud
|
service_display_name: Nextcloud
|
||||||
service_short_name: nextcloud
|
service_short_name: nextcloud
|
||||||
service_man: 'Ресурсная платформа: k8s. Автоматизация: helm chart'
|
service_man: '# Инструкция по развертыванию Nextcloud через платформу<br/><br/>## 1. Общая информация<br/><br/>Nextcloud — платформа для хранения и совместной работы с файлами. Разворачивается в K8s через
|
||||||
|
Helm-чарт `nextcloud/nextcloud`.<br/><br/>Сервис **не самодостаточен** — для создания необходимы заранее развёрнутые в той же ресурсной платформе:<br/><br/>* **PostgreSQL (k8s)** — база данных Nextcloud.
|
||||||
|
У СУБД должен быть выставлен параметр `sslRequired: false`.<br/>* **Redis (k8s)** — используется как memcache/locking backend.<br/><br/>Резервное копирование выполняется через **Velero** (бэкапятся под
|
||||||
|
и PVC с данными), а не штатным S3-бэкапом СУБД.<br/><br/>### Доступные операции с сервисом<br/><br/>* **create** — создание сервиса<br/>* **delete** — удаление сервиса<br/>* **suspend** —
|
||||||
|
остановка сервиса (масштабирование реплик в 0)<br/>* **resume** — запуск сервиса<br/>* **restart** — перезапуск (`kubectl rollout restart`)<br/>* **modify** — изменение настроек
|
||||||
|
сервиса<br/>* **reconcile** — служебная операция синхронизации версии (запускается платформой автоматически)<br/>* **create_backup** — создание резервной копии вручную (через Velero)<br/>* **recovery** —
|
||||||
|
восстановление из резервной копии в **новый** инстанс<br/><br/>> **Примечание:** операций работы с пользователями Nextcloud (`create_user`/`modify_user`/`delete_user`) на уровне платформы нет — пользователи
|
||||||
|
приложения администрируются внутри самого Nextcloud.<br/><br/>---<br/><br/>## 2. Параметры создания сервиса<br/><br/>### Платформа для развертывания<br/><br/>Ресурсная платформа (`resourceRealm`), в которой
|
||||||
|
будет развёрнут сервис. PostgreSQL и Redis, указанные ниже, обязаны находиться в той же ресурсной платформе.<br/><br/>### СУБД PostgreSQL (psqlUid)<br/><br/>UID инстанса PostgreSQL (k8s), в котором будет
|
||||||
|
создана база и пользователь `nextcloud`.<br/><br/>* У выбранной СУБД должна отсутствовать база `nextcloud` и пользователь `nextcloud`.<br/>* У СУБД обязан быть выключен `sslMode` (`false`).<br/><br/>###
|
||||||
|
СУБД Redis (redisUid)<br/><br/>UID инстанса Redis (k8s), который будет использоваться как memcache/locking backend.<br/><br/>### Количество реплик<br/><br/>Количество реплик Nextcloud (`clusterConfiguration.replicas`).<br/><br/>###
|
||||||
|
Квота памяти пода (MB)<br/><br/>Объём памяти для пода Nextcloud в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода Nextcloud в миликорах (1000 mCPU = 1 vCPU).<br/>Пример:
|
||||||
|
`1000`<br/><br/>### Размер диска для данных (GB)<br/><br/>Объём диска под данные Nextcloud (`/var/www/html/data`) в гигабайтах.<br/>Пример: `20`<br/><br/>### Домен<br/><br/>Домен, на котором будет доступен
|
||||||
|
Nextcloud (`accessConfiguration.domain`).<br/><br/>* Если указано **полное доменное имя** (содержит точку, например `cloud.company.ru`) — домен считается клиентским. Перед созданием клиент обязан сам
|
||||||
|
настроить DNS-запись, указывающую на адрес Ingress платформы, иначе создание завершится ошибкой.<br/>* Если указано **короткое имя** (без точки, например `mycloud`) — платформа сама создаёт DNS-запись
|
||||||
|
вида `<domain>.nextcloudk8s` и настраивает сертификат.<br/><br/>### Версия<br/><br/>Версия приложения Nextcloud (`appConfiguration.version`, поле `appVersion` Helm-чарта). По ней автоматически подбирается
|
||||||
|
последняя подходящая версия Helm-чарта.<br/><br/>### Document Server<br/><br/>Параметр `appConfiguration.documentServer`. Если указать `collabora` — в кластер дополнительно разворачивается Collabora Online
|
||||||
|
(совместное редактирование офисных документов), доступный по пути `/collabora` на том же домене.<br/>Оставьте пустым, если Document Server не нужен.<br/><br/>### Уровень логирования<br/><br/>Параметр
|
||||||
|
`appConfiguration.logLevel`. Одно из значений: `DEBUG`, `INFO`, `WARN`, `ERROR`, `FATAL`, либо `NONE` — чтобы не переопределять логирование Nextcloud.<br/><br/>---<br/><br/>## 3. Параметры модификации
|
||||||
|
сервиса<br/><br/>Изменению подлежат ресурсы, версия и часть `appConfiguration`. Параметры `psqlUid`/`redisUid` менять после создания не рекомендуется.<br/><br/>### Количество реплик<br/><br/>См. раздел
|
||||||
|
2.<br/><br/>### Квота памяти пода (MB) / Квота CPU пода (mCPU) / Размер диска (GB)<br/><br/>См. раздел 2.<br/><br/>> **Примечание:** уменьшить уже выделенный размер диска нельзя.<br/><br/>### Версия<br/><br/>Обновление
|
||||||
|
версии разрешено только **на один патч** либо **на одну минорную версию вперёд** (с `patch=0`). Прыжок сразу через несколько минорных версий или через несколько мажорных версий запрещён — обновляться
|
||||||
|
нужно последовательно.<br/><br/>> **Примечание:** перед обновлением на новую minor/major-версию необходимо сначала выполнить `modify` на текущей версии, обновившись до последнего релиза этой версии (иначе
|
||||||
|
операция завершится ошибкой с описанием, до какой версии нужно обновиться сначала).<br/><br/>### Document Server / Уровень логирования<br/><br/>См. раздел 2.<br/><br/>---<br/><br/>## 4. Параметры удаления
|
||||||
|
сервиса<br/><br/>Специальных параметров нет — удаление сносит namespace целиком.<br/><br/>> **Примечание:** резервные копии, созданные через `create_backup`, хранятся в Velero отдельно от инстанса и **не
|
||||||
|
удаляются** вместе с сервисом — операции `delete_backup` для Nextcloud нет, копии нужно вычищать на стороне Velero отдельно.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>Специальных
|
||||||
|
пользовательских параметров нет — имя бэкапа генерируется автоматически в формате `<дата>-<версия>-<namespace>`.<br/><br/>> **Примечание:** создать бэкап можно только если сервис предварительно приостановлен
|
||||||
|
(`suspend`). Velero, в который создаётся бэкап, должен быть развёрнут в той же ресурсной платформе, что и Nextcloud, и не может быть сменён на другой Velero-инстанс в рамках одного сервиса.<br/><br/>Бэкапится
|
||||||
|
под с данными вместе с PVC/PV (файлы), метаданные и БД PostgreSQL бэкапом не затрагиваются — версия схемы БД фиксируется отдельно (см. раздел 6).<br/><br/>---<br/><br/>## 6. Параметры восстановления из
|
||||||
|
бэкапа (recovery)<br/><br/>В отличие от СУБД-сервисов, `recovery` у Nextcloud **не восстанавливает данные в текущий инстанс**, а создаёт **новый** инстанс сервиса (аналог `create`), в который переносятся
|
||||||
|
файлы из указанной резервной копии.<br/><br/>### Точка восстановления (recoveryPoint)<br/><br/>Имя резервной копии Velero, из которой будет выполнено восстановление.<br/><br/>### Домен нового инстанса<br/><br/>Обязан
|
||||||
|
отличаться от домена исходного (текущего) инстанса — восстановление на тот же домен не поддерживается.<br/><br/>### СУБД PostgreSQL нового инстанса<br/><br/>Если версия Nextcloud в бэкапе отличается от
|
||||||
|
текущей версии инстанса, для нового инстанса обязательно нужно указать **другую** СУБД PostgreSQL (нельзя восстанавливать бэкап со старой схемой БД поверх БД с более новой схемой).<br/><br/>---<br/><br/>##
|
||||||
|
7. Выходные параметры<br/><br/>После успешного создания сервиса платформа возвращает:<br/><br/>### connectionUrl<br/><br/>Адрес для входа в Nextcloud: `https://<домен>`.<br/><br/>### namespace<br/><br/>Namespace
|
||||||
|
в K8s-кластере, в котором развёрнут сервис.<br/><br/>### Учётные данные (Vault)<br/><br/>В Vault сохраняется пароль администратора (`adminPass`) под логином `admin`.<br/><br/>---<br/><br/>## 8. Пример
|
||||||
|
подключения<br/><br/>Откройте `connectionUrl` в браузере и авторизуйтесь:<br/><br/>* **Логин:** `admin`<br/>* **Пароль:** значение `adminPass` из блока «Учётные данные» в Vault<br/><br/>---<br/><br/>##
|
||||||
|
9. Дополнительная информация<br/><br/>### Зависимости<br/><br/>Nextcloud нельзя создать без уже существующих в том же `resourceRealm` сервисов PostgreSQL (k8s, `sslRequired: false`) и Redis (k8s). При
|
||||||
|
`delete` зависимые СУБД и Redis не трогаются — удаляется только сам Nextcloud.<br/><br/>### suspend/resume<br/><br/>При `suspend` количество реплик Nextcloud, Collabora и exporter''а метрик принудительно
|
||||||
|
выставляется в `0` через `helm upgrade` (реальное масштабирование, а не просто пауза cron). При `resume` реплики возвращаются к значению из `clusterConfiguration.replicas`.<br/><br/>### Collabora<br/><br/>Собирается
|
||||||
|
из отдельного `image.repository: nexus-sa.tst.nubes.ru/collabora/code` и включается только при `appConfiguration.documentServer == ''collabora''`. Доступен на том же домене и том же TLS-сертификате, что
|
||||||
|
и сам Nextcloud, по пути `/collabora`.<br/><br/>### Бэкап/восстановление через Velero<br/><br/>Бэкап/восстановление файлов идёт через Velero с селектором `backup=<serviceName>-velero-backup` и включает
|
||||||
|
под, PVC и PV — то есть непосредственно файлы `/var/www/html/data`. Восстановление БД в новый инстанс выполняется штатным механизмом `create` с параметром `instanceUidFrom`, который проставляет `recovery`-джоба
|
||||||
|
автоматически.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -53,6 +95,22 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
resourceRealm:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
psqlEnabled:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
redisEnabled:
|
redisEnabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -70,21 +128,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
resourceRealm:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- k8s-3-sandbox-nubes-ru
|
|
||||||
- k8s-4-sandbox-nubes-ru
|
|
||||||
psqlEnabled:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'true'
|
|
||||||
- svcOperationCfsParamId: 1056
|
- svcOperationCfsParamId: 1056
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -138,7 +181,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-vbxjicr2
|
defaultValue: nextcloud-gsjkslra
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1058
|
- svcOperationCfsParamId: 1058
|
||||||
@@ -193,19 +236,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '2'
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -230,6 +260,19 @@ cfsParams:
|
|||||||
- '6144'
|
- '6144'
|
||||||
- '7168'
|
- '7168'
|
||||||
- '8192'
|
- '8192'
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1060
|
- svcOperationCfsParamId: 1060
|
||||||
svcOperationCfsParam: appConfiguration
|
svcOperationCfsParam: appConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -276,18 +319,9 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
veleroUid:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recoveryPoint:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
psqlEnabled:
|
psqlEnabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -302,6 +336,11 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'true'
|
- 'true'
|
||||||
|
recoveryPoint:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
psqlUid:
|
psqlUid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -312,6 +351,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
veleroUid:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1079
|
- svcOperationCfsParamId: 1079
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -319,16 +363,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: 1,2
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -353,6 +387,16 @@ cfsParams:
|
|||||||
- '6144'
|
- '6144'
|
||||||
- '7168'
|
- '7168'
|
||||||
- '8192'
|
- '8192'
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: 1,2
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1080
|
- svcOperationCfsParamId: 1080
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -362,7 +406,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-bcdguda1
|
defaultValue: nextcloud-cpp3zfhe
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1081
|
- svcOperationCfsParamId: 1081
|
||||||
@@ -372,6 +416,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
documentServer:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: collabora
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- collabora
|
||||||
logLevel:
|
logLevel:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: NONE
|
defaultValue: NONE
|
||||||
@@ -389,13 +440,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
documentServer:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: collabora
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- collabora
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
16:
|
16:
|
||||||
- 1055
|
- 1055
|
||||||
@@ -418,7 +462,7 @@ cfsParamsByOp:
|
|||||||
129: []
|
129: []
|
||||||
128: []
|
128: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"redisEnabled": true, "psqlUid": "", "redisUid": "", "resourceRealm": "", "psqlEnabled": true}'
|
startupConfiguration: '{"resourceRealm": "", "psqlEnabled": true, "redisEnabled": true, "psqlUid": "", "redisUid": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"domain": "nextcloud-vbxjicr2"}'
|
accessConfiguration: '{"domain": "nextcloud-gsjkslra"}'
|
||||||
appConfiguration: '{"version": "33.0.4", "documentServer": "collabora", "logLevel": "INFO"}'
|
appConfiguration: '{"version": "33.0.4", "documentServer": "collabora", "logLevel": "INFO"}'
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 227
|
- svcOperationCfsParamId: 227
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ service_man: 'Расширенный реестр для управления Do
|
|||||||
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
||||||
keycloak'
|
keycloak'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: false
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
operations:
|
operations:
|
||||||
- svcOperationId: 14
|
- svcOperationId: 14
|
||||||
@@ -26,6 +26,14 @@ operations:
|
|||||||
operation: reconcile
|
operation: reconcile
|
||||||
kind: action
|
kind: action
|
||||||
action: reconcile
|
action: reconcile
|
||||||
|
- svcOperationId: 415
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 416
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
stateOut: {}
|
stateOut: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 16
|
- svcOperationCfsParamId: 16
|
||||||
@@ -41,6 +49,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 228
|
- svcOperationCfsParamId: 228
|
||||||
@@ -64,9 +73,33 @@ cfsParams:
|
|||||||
- svcOperationCfsParamId: 231
|
- svcOperationCfsParamId: 231
|
||||||
svcOperationCfsParam: s3Uid
|
svcOperationCfsParam: s3Uid
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
isRequired: true
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1126
|
||||||
|
svcOperationCfsParam: pvType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: s3
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- s3
|
||||||
|
- local
|
||||||
|
- svcOperationCfsParamId: 1127
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: '5'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1128
|
||||||
|
svcOperationCfsParam: authType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: local
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- local
|
||||||
|
- keycloak
|
||||||
- svcOperationCfsParamId: 822
|
- svcOperationCfsParamId: 822
|
||||||
svcOperationCfsParam: resourceInstances
|
svcOperationCfsParam: resourceInstances
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -85,6 +118,12 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1129
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
14:
|
14:
|
||||||
- 16
|
- 16
|
||||||
@@ -93,12 +132,18 @@ cfsParamsByOp:
|
|||||||
- 229
|
- 229
|
||||||
- 230
|
- 230
|
||||||
- 231
|
- 231
|
||||||
|
- 1126
|
||||||
|
- 1127
|
||||||
|
- 1128
|
||||||
15: []
|
15: []
|
||||||
270:
|
270:
|
||||||
- 822
|
- 822
|
||||||
- 823
|
- 823
|
||||||
- 824
|
- 824
|
||||||
|
- 1129
|
||||||
405: []
|
405: []
|
||||||
|
415: []
|
||||||
|
416: []
|
||||||
stateParams:
|
stateParams:
|
||||||
domain: harbor-1
|
domain: harbor-1
|
||||||
resourceRealm: ''
|
resourceRealm: ''
|
||||||
@@ -106,3 +151,6 @@ stateParams:
|
|||||||
resourceMemory: '1024'
|
resourceMemory: '1024'
|
||||||
resourceInstances: '1'
|
resourceInstances: '1'
|
||||||
s3Uid: ''
|
s3Uid: ''
|
||||||
|
pvType: s3
|
||||||
|
resourceDisk: '5'
|
||||||
|
authType: local
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 964
|
- svcOperationCfsParamId: 964
|
||||||
@@ -118,6 +119,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -132,11 +138,6 @@ cfsParams:
|
|||||||
- '1'
|
- '1'
|
||||||
- '2'
|
- '2'
|
||||||
- '3'
|
- '3'
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 966
|
- svcOperationCfsParamId: 966
|
||||||
svcOperationCfsParam: nodeAgentConfiguration
|
svcOperationCfsParam: nodeAgentConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
|
|||||||
@@ -0,0 +1,254 @@
|
|||||||
|
name: k8svalkey
|
||||||
|
service_id: 87
|
||||||
|
service_display_name: Valkey
|
||||||
|
service_short_name: k8svalkey
|
||||||
|
service_man: Valkey-кластер.<br/>Пока в статусе EXPEREMENTAL
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: true
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 396
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 401
|
||||||
|
operation: create_user
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 395
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 402
|
||||||
|
operation: delete_user
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 400
|
||||||
|
operation: modify
|
||||||
|
kind: instance
|
||||||
|
action: modify
|
||||||
|
- svcOperationId: 397
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 399
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 398
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
|
stateOut:
|
||||||
|
users: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 1066
|
||||||
|
svcOperationCfsParam: startupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
resourceRealm:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 1067
|
||||||
|
svcOperationCfsParam: clusterConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '512'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
|
- '4'
|
||||||
|
- '5'
|
||||||
|
- svcOperationCfsParamId: 1068
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1071
|
||||||
|
svcOperationCfsParam: valkeyConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0.1.0
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 0.1.0
|
||||||
|
- svcOperationCfsParamId: 1072
|
||||||
|
svcOperationCfsParam: valkeyConf
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
paramName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
paramValue:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1073
|
||||||
|
svcOperationCfsParam: username
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1074
|
||||||
|
svcOperationCfsParam: permissions
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1075
|
||||||
|
svcOperationCfsParam: username
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1069
|
||||||
|
svcOperationCfsParam: clusterConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
|
- '4'
|
||||||
|
- '5'
|
||||||
|
- svcOperationCfsParamId: 1070
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
396:
|
||||||
|
- 1066
|
||||||
|
- 1067
|
||||||
|
- 1068
|
||||||
|
- 1071
|
||||||
|
- 1072
|
||||||
|
401:
|
||||||
|
- 1073
|
||||||
|
- 1074
|
||||||
|
395: []
|
||||||
|
402:
|
||||||
|
- 1075
|
||||||
|
400:
|
||||||
|
- 1069
|
||||||
|
- 1070
|
||||||
|
397: []
|
||||||
|
399: []
|
||||||
|
398: []
|
||||||
|
stateParams:
|
||||||
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
|
clusterConfiguration: '{"cpu": 500, "disk": 10, "memory": 512, "replicas": 1, "shards": 1}'
|
||||||
|
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
||||||
|
valkeyConfiguration: '{"version": "0.1.0"}'
|
||||||
|
valkeyConf: '{"paramName": "", "paramValue": ""}'
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
name: k8s_ziti_controller
|
||||||
|
service_id: 88
|
||||||
|
service_display_name: k8sZitiController
|
||||||
|
service_short_name: k8sZitiController
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 99
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 105
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 294
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '300'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 295
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 296
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 297
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 298
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 299
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: k8sZitiController-1
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
99:
|
||||||
|
- 294
|
||||||
|
- 295
|
||||||
|
- 296
|
||||||
|
- 297
|
||||||
|
- 298
|
||||||
|
- 299
|
||||||
|
105: []
|
||||||
|
stateParams:
|
||||||
|
resourceCPU: '300'
|
||||||
|
resourceMemory: '512'
|
||||||
|
resourceDisk: '1'
|
||||||
|
resourceInstances: '1'
|
||||||
|
resourceRealm: ''
|
||||||
|
domain: k8sZitiController-1
|
||||||
@@ -66,6 +66,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1038
|
- svcOperationCfsParamId: 1038
|
||||||
@@ -104,7 +105,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: flask-4brtjmwm
|
defaultValue: flask-67i6r0en
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1040
|
- svcOperationCfsParamId: 1040
|
||||||
@@ -114,6 +115,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
gitPath:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
healthPath:
|
healthPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -126,11 +132,6 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '3.12'
|
- '3.12'
|
||||||
gitPath:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1041
|
- svcOperationCfsParamId: 1041
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -171,13 +172,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '3.12'
|
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -188,6 +182,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '3.12'
|
||||||
- svcOperationCfsParamId: 1044
|
- svcOperationCfsParamId: 1044
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -207,6 +208,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
@@ -229,6 +231,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "flask-4brtjmwm"}'
|
accessConfiguration: '{"domain": "flask-67i6r0en"}'
|
||||||
appConfiguration: '{"healthPath": "", "version": "3.12", "gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git"}'
|
appConfiguration: '{"gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git", "healthPath": "", "version": "3.12"}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{}'
|
||||||
|
|||||||
@@ -101,6 +101,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '512'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -116,16 +126,6 @@ cfsParams:
|
|||||||
defaultValue: '10'
|
defaultValue: '10'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '500'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '512'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 789
|
- svcOperationCfsParamId: 789
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -139,6 +139,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 790
|
- svcOperationCfsParamId: 790
|
||||||
@@ -181,16 +182,10 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
- '15'
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
poolerMaster:
|
poolerMaster:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -207,25 +202,41 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
sslRequired:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 792
|
- svcOperationCfsParamId: 792
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 793
|
- svcOperationCfsParamId: 793
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -235,9 +246,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 00000000-0000-0000-0000-000000000000
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
retain:
|
retain:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -249,6 +260,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: '0'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 794
|
- svcOperationCfsParamId: 794
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -311,7 +327,7 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
durationServer:
|
durationServer:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '87600'
|
defaultValue: '43800'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
certCA:
|
certCA:
|
||||||
@@ -453,6 +469,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
sslRequired:
|
||||||
@@ -478,23 +495,31 @@ cfsParams:
|
|||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 798
|
- svcOperationCfsParamId: 798
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 799
|
- svcOperationCfsParamId: 799
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -503,6 +528,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
schedule:
|
schedule:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
@@ -513,10 +543,10 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
retain:
|
incrementCount:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 800
|
- svcOperationCfsParamId: 800
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
@@ -564,24 +594,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
certCA:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
certServer:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
refreshCert:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'false'
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
type:
|
type:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -601,6 +613,24 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
certCA:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
certServer:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
refreshCert:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 801
|
- svcOperationCfsParamId: 801
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -614,6 +644,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
recoveryPoint:
|
recoveryPoint:
|
||||||
@@ -628,11 +659,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '500'
|
defaultValue: '500'
|
||||||
@@ -653,6 +679,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 803
|
- svcOperationCfsParamId: 803
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -721,23 +752,31 @@ cfsParams:
|
|||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 805
|
- svcOperationCfsParamId: 805
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 806
|
- svcOperationCfsParamId: 806
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -761,6 +800,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 807
|
- svcOperationCfsParamId: 807
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -768,6 +812,14 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
enabled:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
schedule:
|
schedule:
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
defaultValue: '0'
|
defaultValue: '0'
|
||||||
@@ -792,14 +844,32 @@ cfsParams:
|
|||||||
- '10'
|
- '10'
|
||||||
- '15'
|
- '15'
|
||||||
- '20'
|
- '20'
|
||||||
enabled:
|
- svcOperationCfsParamId: 1106
|
||||||
dataType: boolean
|
svcOperationCfsParam: mtlsConfiguration
|
||||||
defaultValue: 'false'
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'off'
|
||||||
- 'true'
|
- manual
|
||||||
|
- auto
|
||||||
|
durationCA:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '175200'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
durationServer:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '87600'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
19:
|
19:
|
||||||
- 788
|
- 788
|
||||||
@@ -841,15 +911,16 @@ cfsParamsByOp:
|
|||||||
- 805
|
- 805
|
||||||
- 806
|
- 806
|
||||||
- 807
|
- 807
|
||||||
|
- 1106
|
||||||
54: []
|
54: []
|
||||||
114: []
|
114: []
|
||||||
115: []
|
115: []
|
||||||
stateParams:
|
stateParams:
|
||||||
clusterConfiguration: '{"replicas": 1, "disk": 10, "cpu": 500, "memory": 512}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
postgresConfiguration: '{"version": "17", "sslRequired": true, "poolerMaster": false, "poolerSlave": false}'
|
postgresConfiguration: '{"version": "17", "poolerMaster": false, "poolerSlave": false, "sslRequired": true}'
|
||||||
postgresConf: '{"paramName": "", "paramValue": ""}'
|
postgresConf: '{"log_disconnections": "off", "log_connections": "off", "max_connections": 100}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "00000000-0000-0000-0000-000000000000", "retain": 7, "schedule": "0 0 * * *", "incrementCount": 0}'
|
||||||
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
mtlsConfiguration: '{"type": "off", "durationCA": 175200, "durationServer": 87600, "certCA": "", "certServer": ""}'
|
mtlsConfiguration: '{"type": "off", "durationCA": 175200, "durationServer": 43800, "certCA": "", "certServer": ""}'
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1062
|
- svcOperationCfsParamId: 1062
|
||||||
@@ -55,6 +56,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '500'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '512'
|
defaultValue: '512'
|
||||||
@@ -75,11 +81,6 @@ cfsParams:
|
|||||||
defaultValue: '10'
|
defaultValue: '10'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '500'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1063
|
- svcOperationCfsParamId: 1063
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -146,6 +147,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
masterIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
masterAccessList:
|
masterAccessList:
|
||||||
dataType: json
|
dataType: json
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -161,11 +167,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterIpSpace:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
21:
|
21:
|
||||||
- 1061
|
- 1061
|
||||||
@@ -180,5 +181,5 @@ cfsParamsByOp:
|
|||||||
392: []
|
392: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"memory": 512, "replicas": 1, "disk": 10, "cpu": 500}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
|
|||||||
@@ -3,34 +3,65 @@ service_id: 92
|
|||||||
service_display_name: MongoDB
|
service_display_name: MongoDB
|
||||||
service_short_name: mongodb
|
service_short_name: mongodb
|
||||||
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
||||||
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>* **suspend** —
|
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>*
|
||||||
остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>*
|
**suspend** — остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/>* **create_backup** — создание бэкапа вручную<br/>* **delete_backup** —
|
||||||
**modify_user** — модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры развертывания базы данных<br/><br/>Эти параметры необходимо указать при создании
|
удаление бэкапов<br/>* **rollback** — восстановление кластера из бэкапа<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>* **modify_user**
|
||||||
базы данных.<br/><br/>### Платформа для развертывания<br/><br/>Среда, в которой будет развернут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в
|
— модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания базы данных<br/><br/>Эти параметры необходимо указать при создании базы данных.<br/><br/>###
|
||||||
кластере MongoDB.<br/>Оптимально выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>>
|
Платформа для развертывания<br/><br/>Среда, в которой будет развёрнут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально
|
||||||
**Примечание:** уменьшение количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>###
|
выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение
|
||||||
Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример:
|
количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
`20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример:
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример: `20`<br/><br/>### Расписание
|
||||||
`internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример:
|
резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько
|
||||||
`["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система автоматически
|
последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример: `7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>>
|
||||||
подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать нечётное
|
созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>> их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя
|
||||||
значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества узлов
|
ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых
|
||||||
после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>###
|
||||||
|
Включить TLS<br/><br/>Булевый параметр. Определяет режим работы TLS кластера.<br/><br/>- `true` — TLS включён (`tls.mode: allowTLS`). Сертификаты сохраняются в Vault.<br/>- `false` — TLS выключен (`tls.mode:
|
||||||
|
disabled`).<br/><br/>По умолчанию: `false`.<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система
|
||||||
|
автоматически подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать
|
||||||
|
нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества
|
||||||
|
узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
||||||
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для
|
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Расписание резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются
|
||||||
доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей,
|
резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример:
|
||||||
с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры создания пользователя<br/><br/>###
|
`7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>> созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>>
|
||||||
Имя пользователя<br/><br/>Указывается имя пользователя (любой регистр).<br/>Пример: `readApp`<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если база отсутствует,
|
их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите
|
||||||
она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner** — полный
|
`no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если
|
||||||
контроль над базой данных<br/><br/>---<br/><br/>## 4. Параметры модификации пользователя<br/><br/>### Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется
|
оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 4. Параметры удаления базы данных<br/><br/>### Удалить бакет S3 с бэкапами<br/><br/>Булевый
|
||||||
предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>###
|
параметр.<br/><br/>- `true` — вместе с кластером также будут удалены все резервные копии и бакет S3.<br/>- `false` — бакет S3 и хранящиеся в нём бэкапы сохраняются после удаления кластера.<br/><br/>По
|
||||||
Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/><br/>---<br/><br/>## 5. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для
|
умолчанию: `false`.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя резервной копии, которое будет присвоено объекту бэкапа в кластере.<br/>Должно соответствовать
|
||||||
удаления.<br/><br/>---<br/><br/>## 6. Выходные параметры<br/><br/>После успешного развертывания базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт
|
требованиям Kubernetes к именам объектов (строчные буквы, цифры, дефисы).<br/>Пример: `manual-20260904`<br/><br/>> **Примечание:** такой бэкап не участвует в автоматической ротации по параметру<br/>>
|
||||||
для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к
|
"Хранить последних бэкапов" (она применяется только к бэкапам по расписанию) и не удаляется<br/>> сам — при необходимости убрать его нужно вручную операцией `delete_backup`.<br/><br/>---<br/><br/>## 6.
|
||||||
кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>---<br/><br/>## 7. Пример подключения<br/><br/>Перед подключением необходимо установить **mongosh**.<br/><br/>Команда подключения к базе данных:<br/><br/>```<br/>mongosh
|
Параметры восстановления из бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя существующей резервной копии кластера, из которой будет выполнено восстановление. Указывается один из бэкапов в состоянии `ready`
|
||||||
"mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"<br/>```<br/><br/>Где:<br/><br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect или
|
(созданных автоматически по расписанию или вручную через операцию create_backup).<br/><br/>---<br/><br/>## 7. Параметры удаления бэкапов<br/><br/>### Имена бэкапов<br/><br/>Список имён резервных копий
|
||||||
externalConnect<br/>* `<dbName>` — имя базы данных<br/><br/>## 8. Дополнительная информация<br/><br/>Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину
|
для удаления.<br/>Пример: `["manual-20260904", "cron-mongok8s-...-20260903020000"]`<br/><br/>---<br/><br/>## 8. Параметры создания пользователя<br/><br/>### Имя пользователя<br/><br/>Указывается имя пользователя
|
||||||
и паролю.'
|
(любой регистр).<br/>Пример: `readApp`<br/><br/>> **Примечание:** имя пользователя должно быть уникальным в рамках кластера. Если пользователь<br/>> с таким именем уже существует, операция завершится
|
||||||
|
ошибкой — используйте `modify_user` для<br/>> изменения прав или `delete_user` + `create_user` для пересоздания.<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если
|
||||||
|
база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner**
|
||||||
|
— полный контроль над базой данных<br/>* **dbAdmin** — администрирование базы данных (индексы, статистика, схема) без доступа к чтению/записи данных<br/><br/>---<br/><br/>## 9. Параметры модификации пользователя<br/><br/>###
|
||||||
|
Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой
|
||||||
|
относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/>* **dbAdmin**<br/><br/>---<br/><br/>##
|
||||||
|
10. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для удаления.<br/><br/>---<br/><br/>## 11. Выходные параметры<br/><br/>После успешного развертывания
|
||||||
|
базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних
|
||||||
|
интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>> **Важно:** оба эндпоинта — это Kubernetes
|
||||||
|
Service на весь replset, а не адрес конкретно<br/>> primary-узла. Kubernetes не отслеживает, кто из узлов сейчас primary, поэтому новое<br/>> подключение без параметра `replicaSet` может попасть на secondary
|
||||||
|
и упасть с ошибкой записи<br/>> `not writable primary`. Обязательно указывайте `replicaSet=rs0` в строке подключения (см.<br/>> примеры ниже) — тогда драйвер сам обнаружит топологию кластера и всегда
|
||||||
|
направит запись на<br/>> актуальный primary, независимо от количества реплик и от того, происходили ли выборы.<br/><br/>---<br/><br/>## 12. Пример подключения<br/><br/>Перед подключением необходимо установить
|
||||||
|
**mongosh**.<br/><br/>### 12.1 Подключение без TLS<br/><br/>Для внутреннего подключения из той же сети:<br/><br/>```<br/>mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>?authSource=admin&replicaSet=rs0"<br/>```<br/><br/>###
|
||||||
|
12.2 Подключение через внешний endpoint с TLS<br/><br/>Кластер требует клиентский TLS-сертификат (mutual TLS). Сертификаты сохраняются в Vault при создании кластера в блоке `cer` в полях `ca`, `cer`,
|
||||||
|
`key` в кодировке base64.<br/><br/>Подготовка файлов:<br/><br/>```bash<br/># Декодировать сертификаты из Vault<br/>echo "<ca из блока Учётные данные>" | base64 -d > ca.crt<br/>echo "<cer из из блока Учётные
|
||||||
|
данные" | base64 -d > tls.crt<br/>echo "<key из из блока Учётные данные>" | base64 -d > tls.key<br/><br/># Собрать клиентский PEM<br/>cat tls.key tls.crt > client.pem<br/>```<br/><br/>Подключение:<br/><br/>```<br/>mongosh
|
||||||
|
"mongodb://<username>:<password>@<external_endpoint_db>:27017/<dbName>?tls=true&tlsCAFile=ca.crt&tlsCertificateKeyFile=client.pem&authSource=admin&replicaSet=rs0"<br/>```<br/><br/>Где:<br/><br/>* `<username>`
|
||||||
|
— имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect (для подключения без TLS)<br/>* `<external_endpoint_db>` — externalConnect (для внешнего подключения с TLS)<br/>*
|
||||||
|
`<dbName>` — имя базы данных<br/><br/>## 13. Дополнительная информация<br/><br/>Режим TLS задаётся параметром `mongoConfiguration.tls` только при создании кластера.<br/>После создания изменение TLS через
|
||||||
|
модификацию не поддерживается.<br/><br/>- При `true` кластер разворачивается с включённым TLS (`tls.mode: allowTLS`). Сервер принимает как обычные, так и TLS-соединения.<br/>- При `false` TLS выключен
|
||||||
|
(`tls.mode: disabled`).<br/><br/>Для внешнего подключения (`externalConnect`) используется сертификат, выпущенный через cert-manager, с SAN, покрывающим внешний DNS-адрес кластера — поэтому `tlsAllowInvalidHostnames`
|
||||||
|
не требуется, хост проверяется как обычно.<br/><br/>Внутренние подключения TLS-сертификат не используют вообще: режим `allowTLS` допускает как TLS, так и обычные соединения, но для внутреннего трафика
|
||||||
|
применяется обычное (не TLS) подключение — см. пример 12.1.<br/><br/>### Почему обязателен `replicaSet=rs0` в строке подключения<br/><br/>Percona-оператор не проставляет на поды никакого динамического
|
||||||
|
лейбла роли (primary/secondary) —<br/>у всех подов replset''а полностью одинаковые лейблы, различается только имя/индекс пода.<br/>`master`-сервис — это обычный Kubernetes Service с фиксированным селектором
|
||||||
|
на весь replset, он<br/>не знает и не может знать, какой под сейчас primary: k8s просто раздаёт новые TCP-подключения<br/>по кругу между всеми узлами. Без `replicaSet=rs0` в URI подключение может закрепиться
|
||||||
|
на<br/>secondary, и любая попытка записи будет падать с `not writable primary` — независимо от того,<br/>происходили выборы недавно или нет. Указание `replicaSet=rs0` включает у драйвера обнаружение<br/>топологии
|
||||||
|
реплики, и он сам направляет запись на актуальный primary при любом количестве узлов<br/>и после любых переизбраний.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -39,6 +70,10 @@ operations:
|
|||||||
operation: create
|
operation: create
|
||||||
kind: instance
|
kind: instance
|
||||||
action: create
|
action: create
|
||||||
|
- svcOperationId: 411
|
||||||
|
operation: create_backup
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
- svcOperationId: 198
|
- svcOperationId: 198
|
||||||
operation: create_user
|
operation: create_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -47,6 +82,10 @@ operations:
|
|||||||
operation: delete
|
operation: delete
|
||||||
kind: instance
|
kind: instance
|
||||||
action: delete
|
action: delete
|
||||||
|
- svcOperationId: 414
|
||||||
|
operation: delete_backup
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
- svcOperationId: 199
|
- svcOperationId: 199
|
||||||
operation: delete_user
|
operation: delete_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -67,11 +106,16 @@ operations:
|
|||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
action: resume
|
action: resume
|
||||||
|
- svcOperationId: 413
|
||||||
|
operation: rollback
|
||||||
|
kind: action
|
||||||
|
action: rollback
|
||||||
- svcOperationId: 194
|
- svcOperationId: 194
|
||||||
operation: suspend
|
operation: suspend
|
||||||
kind: instance
|
kind: instance
|
||||||
action: suspend
|
action: suspend
|
||||||
stateOut:
|
stateOut:
|
||||||
|
backups: {}
|
||||||
users: {}
|
users: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 1089
|
- svcOperationCfsParamId: 1089
|
||||||
@@ -87,6 +131,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1090
|
- svcOperationCfsParamId: 1090
|
||||||
@@ -96,6 +141,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1000'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1024'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -111,16 +166,6 @@ cfsParams:
|
|||||||
defaultValue: '5'
|
defaultValue: '5'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1000'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1024'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1091
|
- svcOperationCfsParamId: 1091
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -128,16 +173,59 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
masterAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1102
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
s3Uid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '7'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0 0 * * *
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1116
|
||||||
|
svcOperationCfsParam: mongoConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
tls:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
- svcOperationCfsParamId: 1109
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 635
|
- svcOperationCfsParamId: 635
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -157,12 +245,28 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1103
|
||||||
|
svcOperationCfsParam: deleteS3Bucket
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 'true'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
- svcOperationCfsParamId: 1111
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 644
|
- svcOperationCfsParamId: 644
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: array
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
@@ -173,11 +277,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -198,6 +297,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1093
|
- svcOperationCfsParamId: 1093
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -215,6 +319,23 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1104
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 640
|
- svcOperationCfsParamId: 640
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -234,32 +355,51 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1108
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
37:
|
37:
|
||||||
- 1089
|
- 1089
|
||||||
- 1090
|
- 1090
|
||||||
- 1091
|
- 1091
|
||||||
|
- 1102
|
||||||
|
- 1116
|
||||||
|
411:
|
||||||
|
- 1109
|
||||||
198:
|
198:
|
||||||
- 635
|
- 635
|
||||||
- 636
|
- 636
|
||||||
- 643
|
- 643
|
||||||
190: []
|
190:
|
||||||
|
- 1103
|
||||||
|
414:
|
||||||
|
- 1111
|
||||||
199:
|
199:
|
||||||
- 644
|
- 644
|
||||||
201:
|
201:
|
||||||
- 1092
|
- 1092
|
||||||
- 1093
|
- 1093
|
||||||
|
- 1104
|
||||||
200:
|
200:
|
||||||
- 640
|
- 640
|
||||||
- 641
|
- 641
|
||||||
- 642
|
- 642
|
||||||
409: []
|
409: []
|
||||||
196: []
|
196: []
|
||||||
|
413:
|
||||||
|
- 1108
|
||||||
194: []
|
194: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"replicas": 1, "disk": 5, "cpu": 1000, "memory": 1024}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
|
mongoConfiguration: '{"tls": false}'
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1098
|
- svcOperationCfsParamId: 1098
|
||||||
@@ -127,6 +128,18 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1113
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
maxMessageSize:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '4'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1100
|
- svcOperationCfsParamId: 1100
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -134,11 +147,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -159,6 +167,11 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1101
|
- svcOperationCfsParamId: 1101
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -176,15 +189,29 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1114
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
maxMessageSize:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
38:
|
38:
|
||||||
- 1097
|
- 1097
|
||||||
- 1098
|
- 1098
|
||||||
- 1099
|
- 1099
|
||||||
|
- 1113
|
||||||
39: []
|
39: []
|
||||||
106:
|
106:
|
||||||
- 1100
|
- 1100
|
||||||
- 1101
|
- 1101
|
||||||
|
- 1114
|
||||||
410: []
|
410: []
|
||||||
117: []
|
117: []
|
||||||
116: []
|
116: []
|
||||||
@@ -192,3 +219,4 @@ stateParams:
|
|||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
|
mqConfiguration: '{"maxMessageSize": 4}'
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1020
|
- svcOperationCfsParamId: 1020
|
||||||
@@ -91,7 +92,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: lucee-pzpvwkuk
|
defaultValue: lucee-bpp5vpr5
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1022
|
- svcOperationCfsParamId: 1022
|
||||||
@@ -101,11 +102,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
healthPath:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: false
|
|
||||||
isModifiable: false
|
|
||||||
version:
|
version:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: '6.0'
|
defaultValue: '6.0'
|
||||||
@@ -119,6 +115,11 @@ cfsParams:
|
|||||||
defaultValue: https://github.com/xahys/testlucee
|
defaultValue: https://github.com/xahys/testlucee
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
healthPath:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1023
|
- svcOperationCfsParamId: 1023
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -159,6 +160,14 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '6.0'
|
||||||
|
- '5.4'
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -169,14 +178,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '6.0'
|
|
||||||
- '5.4'
|
|
||||||
- svcOperationCfsParamId: 1026
|
- svcOperationCfsParamId: 1026
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -196,6 +197,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
@@ -219,6 +221,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "lucee-pzpvwkuk"}'
|
accessConfiguration: '{"domain": "lucee-bpp5vpr5"}'
|
||||||
appConfiguration: '{"healthPath": "", "version": "6.0", "gitPath": "https://github.com/xahys/testlucee"}'
|
appConfiguration: '{"version": "6.0", "gitPath": "https://github.com/xahys/testlucee", "healthPath": ""}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{}'
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 1029
|
- svcOperationCfsParamId: 1029
|
||||||
@@ -89,7 +90,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: node-ctkmt4iw
|
defaultValue: node-zjkc4kir
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1031
|
- svcOperationCfsParamId: 1031
|
||||||
@@ -125,6 +126,12 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
DB_PASS:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1033
|
- svcOperationCfsParamId: 1033
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -198,6 +205,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
@@ -220,6 +228,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": ""}'
|
startupConfiguration: '{"resourceRealm": ""}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "node-ctkmt4iw"}'
|
accessConfiguration: '{"domain": "node-zjkc4kir"}'
|
||||||
appConfiguration: '{"version": "23", "gitPath": "https://github.com/xahys/testnode.git", "healthPath": "1"}'
|
appConfiguration: '{"version": "23", "gitPath": "https://github.com/xahys/testnode.git", "healthPath": "1"}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{"DB_PASS": ""}'
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 170
|
- svcOperationCfsParamId: 170
|
||||||
@@ -103,6 +104,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
|
|||||||
@@ -0,0 +1,74 @@
|
|||||||
|
name: nodered
|
||||||
|
service_id: 97
|
||||||
|
service_display_name: NodeRed
|
||||||
|
service_short_name: nodered
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 72
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 73
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
stateOut: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 193
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '500'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 194
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 195
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 196
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- devclustername
|
||||||
|
- k8s-3-sandbox-nubes-ru
|
||||||
|
- k8s-4-sandbox-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 197
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: nodered-1
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 323
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '1'
|
||||||
|
isModifiable: false
|
||||||
|
cfsParamsByOp:
|
||||||
|
72:
|
||||||
|
- 193
|
||||||
|
- 194
|
||||||
|
- 195
|
||||||
|
- 196
|
||||||
|
- 197
|
||||||
|
- 323
|
||||||
|
73: []
|
||||||
|
stateParams:
|
||||||
|
resourceCPU: '500'
|
||||||
|
resourceMemory: '512'
|
||||||
|
resourceDisk: '1'
|
||||||
|
resourceRealm: ''
|
||||||
|
domain: nodered-1
|
||||||
|
resourceInstances: '1'
|
||||||
@@ -67,6 +67,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
- svcOperationCfsParamId: 217
|
- svcOperationCfsParamId: 217
|
||||||
@@ -74,19 +75,19 @@ cfsParams:
|
|||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: nexus-sa.tst.nubes.ru/docker-nubes/jolt
|
defaultValue: nexus-sa.tst.nubes.ru/docker-nubes/jolt
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 241
|
- svcOperationCfsParamId: 241
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 782
|
- svcOperationCfsParamId: 782
|
||||||
svcOperationCfsParam: ingressAnnotations
|
svcOperationCfsParam: ingressAnnotations
|
||||||
dataType: map
|
dataType: map
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: '{}'
|
defaultValue: '{}'
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 218
|
- svcOperationCfsParamId: 218
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -105,6 +106,24 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1120
|
||||||
|
svcOperationCfsParam: registryPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1121
|
||||||
|
svcOperationCfsParam: jsonEnv
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1122
|
||||||
|
svcOperationCfsParam: ingressAnnotations
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 272
|
- svcOperationCfsParamId: 272
|
||||||
svcOperationCfsParam: resourceRealm
|
svcOperationCfsParam: resourceRealm
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -112,6 +131,7 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
|
- devclustername
|
||||||
- k8s-3-sandbox-nubes-ru
|
- k8s-3-sandbox-nubes-ru
|
||||||
- k8s-4-sandbox-nubes-ru
|
- k8s-4-sandbox-nubes-ru
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
@@ -129,6 +149,9 @@ cfsParamsByOp:
|
|||||||
- 218
|
- 218
|
||||||
- 219
|
- 219
|
||||||
- 220
|
- 220
|
||||||
|
- 1120
|
||||||
|
- 1121
|
||||||
|
- 1122
|
||||||
403: []
|
403: []
|
||||||
79:
|
79:
|
||||||
- 272
|
- 272
|
||||||
|
|||||||
@@ -97,6 +97,12 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1124
|
||||||
|
svcOperationCfsParam: iniServiceParams
|
||||||
|
dataType: map
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: DISABLE_REGISTRATION:true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 259
|
- svcOperationCfsParamId: 259
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -143,6 +149,7 @@ cfsParamsByOp:
|
|||||||
- 238
|
- 238
|
||||||
- 818
|
- 818
|
||||||
- 821
|
- 821
|
||||||
|
- 1124
|
||||||
83: []
|
83: []
|
||||||
91:
|
91:
|
||||||
- 259
|
- 259
|
||||||
@@ -162,3 +169,4 @@ stateParams:
|
|||||||
psqlUid: ''
|
psqlUid: ''
|
||||||
ingressExtraAnnotations: ''
|
ingressExtraAnnotations: ''
|
||||||
iniServerParams: ''
|
iniServerParams: ''
|
||||||
|
iniServiceParams: DISABLE_REGISTRATION:true
|
||||||
|
|||||||
@@ -127,10 +127,16 @@ cfsParams:
|
|||||||
- SSHFP
|
- SSHFP
|
||||||
- svcOperationCfsParamId: 780
|
- svcOperationCfsParamId: 780
|
||||||
svcOperationCfsParam: recordInput
|
svcOperationCfsParam: recordInput
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: '[{}]'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
record:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 781
|
- svcOperationCfsParamId: 781
|
||||||
svcOperationCfsParam: recordName
|
svcOperationCfsParam: recordName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -160,12 +166,12 @@ cfsParams:
|
|||||||
- NS
|
- NS
|
||||||
- SSHFP
|
- SSHFP
|
||||||
- CAA
|
- CAA
|
||||||
recordInput:
|
recordName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
recordName:
|
recordInput:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
@@ -205,10 +211,16 @@ cfsParams:
|
|||||||
- SSHFP
|
- SSHFP
|
||||||
- svcOperationCfsParamId: 786
|
- svcOperationCfsParamId: 786
|
||||||
svcOperationCfsParam: recordInput
|
svcOperationCfsParam: recordInput
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: '[{}]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
record:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
254:
|
254:
|
||||||
- 761
|
- 761
|
||||||
|
|||||||
@@ -2,7 +2,54 @@ name: mariadb
|
|||||||
service_id: 115
|
service_id: 115
|
||||||
service_display_name: Mariadb
|
service_display_name: Mariadb
|
||||||
service_short_name: mariadb
|
service_short_name: mariadb
|
||||||
service_man: 'Mariadb кластер. Ресурсная платформа: k8s. Автоматизация: k8s operator.<br/>Автоматическое резервное копирование, ручное восстановление.'
|
service_man: '# Инструкция по развертыванию MariaDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MariaDB — реляционная база данных, совместимая с MySQL. Разворачивается через `mariadb-operator`
|
||||||
|
в Kubernetes.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание кластера<br/>* **delete** — удаление кластера<br/>* **suspend** — остановка кластера (под реально останавливается,
|
||||||
|
ресурсы не потребляются)<br/>* **resume** — запуск ранее остановленного кластера<br/>* **modify** — изменение параметров кластера<br/>* **reconcile** — синхронизация состояния инстанса с платформой<br/><br/>###
|
||||||
|
Доступные операции с базами данных<br/><br/>* **create_database** — создание базы данных<br/>* **delete_database** — удаление базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user**
|
||||||
|
— создание пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания кластера<br/><br/>### Платформа для развертывания (`startupConfiguration.resourceRealm`)<br/><br/>Среда,
|
||||||
|
в которой будет развёрнут кластер.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>JSON-объект:<br/>* `cpu` — квота CPU пода в миликорах (1000 = 1 vCPU). Пример: `500`<br/>* `memory`
|
||||||
|
— квота памяти пода в мегабайтах. Пример: `512`<br/>* `disk` — размер диска в гигабайтах. Пример: `10`<br/>* `replicas` — количество реплик. Сервис работает в режиме одного primary-узла (Galera выключена),
|
||||||
|
значение `0` эквивалентно остановке кластера.<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Поддерживаются только две версии: `8.4.0` и `9.4.0`.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`masterIpSpace` — имя ipSpace для выделения внешнего IP. Укажите `no-needed`, если внешний адрес не требуется.<br/>* `masterAccessList` — список IP/подсетей, которым разрешён доступ к порту 3306 снаружи.
|
||||||
|
Пустой список — доступ не ограничен на уровне firewall (в рамках выделенного ipSpace).<br/><br/>### Резервное копирование (`backupConfiguration`)<br/><br/>JSON-объект:<br/>* `s3Uid` — идентификатор S3-пользователя/квоты
|
||||||
|
для бэкапов.<br/>* `schedule` — cron-выражение расписания бэкапов. По умолчанию `0 0 * * *` (раз в сутки в полночь).<br/>* `retain` — время хранения бэкапов **в часах** (не в днях!). По умолчанию `7`
|
||||||
|
— то есть 7 часов. При суточном расписании этого значения обычно недостаточно, чтобы между двумя бэкапами всегда оставалась хотя бы одна валидная копия — рекомендуется указывать `retain` явно, с запасом
|
||||||
|
(например `720` = 30 суток).<br/><br/>> **Важно:** расписание и срок хранения бэкапов задаются **только при создании кластера**. Оператор MariaDB не позволяет изменить cron-расписание бэкапа после создания
|
||||||
|
(поле `spec.schedule.cron` неизменяемо на уровне admission-вебхука самого оператора) — поэтому эти параметры недоступны для изменения через `modify`.<br/><br/>> **Восстановление из бэкапа пока не реализовано
|
||||||
|
как самостоятельная операция платформы.** Бэкапы физически хранятся в S3-бакете инстанса (`technicals3backup-<instanceUid>`, префикс `mariadb/backups/`). Если нужно восстановить данные из бэкапа — бэкап
|
||||||
|
нужно **скачать из S3 и применить к базе вручную** (например через `mariabackup`/`mariadb-backup` restore или соответствующий инструмент).<br/><br/>### Автомасштабирование диска (`autoscaleConfiguration`)<br/><br/>JSON-объект:<br/>*
|
||||||
|
`enabled` — включить автоматическое расширение диска при исчерпании места.<br/>* `quota` — максимальный размер диска, до которого разрешено автоматическое расширение (не может быть меньше `clusterConfiguration.disk`).<br/>*
|
||||||
|
`percent`, `schedule` — параметры триггера автомасштабирования.<br/><br/>---<br/><br/>## 3. Параметры модификации кластера<br/><br/>Все параметры модификации, кроме версии, можно как увеличивать, так
|
||||||
|
и уменьшать (кроме диска — см. ниже) — система подставит текущие сохранённые значения, если их не менять.<br/><br/>### Конфигурация ресурсов (`clusterConfiguration`)<br/><br/>* `cpu`, `memory` — можно
|
||||||
|
менять в любую сторону.<br/>* `disk` — можно **только увеличивать**, уменьшение уже выделенного размера не поддерживается.<br/>* `replicas` — `0` останавливает кластер тем же образом, что и `suspend`
|
||||||
|
(альтернативный способ временной остановки через `modify`).<br/><br/>### Версия MariaDB (`mariadbConfiguration.version`)<br/><br/>Можно только повышать версию (`8.4.0 → 9.4.0`). Попытка понизить версию
|
||||||
|
будет отклонена с явной ошибкой ещё до применения изменений.<br/><br/>### Внешний доступ (`accessConfiguration`)<br/><br/>Можно включить внешний доступ (было `no-needed` → указали реальный `masterIpSpace`),
|
||||||
|
изменить список разрешённых IP, либо полностью отключить внешний доступ (`masterIpSpace: no-needed`) — в этом случае внешний Service, DNS-запись и правило firewall будут корректно откреплены и удалены.<br/><br/>###
|
||||||
|
Резервное копирование<br/><br/>Не передаётся при модификации — расписание и срок хранения бэкапов фиксируются на этапе `create` (см. п.2).<br/><br/>---<br/><br/>## 4. Параметры создания базы данных (`create_database`)<br/><br/>###
|
||||||
|
Имя базы данных (`dbName`)<br/><br/>Строка с именем новой базы. Не может совпадать с зарезервированными системными именами: `mysql`, `sys`, `information_schema`, `performance_schema`. База с таким же
|
||||||
|
именем не должна уже существовать в кластере.<br/><br/>---<br/><br/>## 5. Параметры удаления базы данных (`delete_database`)<br/><br/>### Имя базы данных (`dbName`)<br/><br/>База должна существовать в
|
||||||
|
кластере. Удаление будет отклонено, если к базе всё ещё привязаны пользователи — сначала нужно снять доступ (`delete_user`) у всех пользователей, ссылающихся на эту базу.<br/><br/>---<br/><br/>## 6. Параметры
|
||||||
|
создания пользователя (`create_user`)<br/><br/>### Имя пользователя (`username`)<br/><br/>Не может быть `root`, `healthcheck` или `mariadb.sys` — эти имена зарезервированы платформой/оператором.<br/><br/>###
|
||||||
|
Пароль (`password`)<br/><br/>Пароль для подключения от имени создаваемого пользователя.<br/><br/>### Базы данных (`dbName`)<br/><br/>JSON-массив вида `[{"dbname": "имя_базы"}]` — список баз, к которым
|
||||||
|
выдаётся полный доступ (`ALL PRIVILEGES`). Все перечисленные базы должны уже существовать в кластере (создать заранее через `create_database`).<br/><br/>### Разрешённые хосты (`accessHosts`)<br/><br/>MySQL
|
||||||
|
host-паттерн, с которого разрешено подключение под этим пользователем (например `%` — без ограничений, или конкретная подсеть). Определяет `user@host` в самой MariaDB — если указать слишком узкое значение,
|
||||||
|
подключение снаружи ожидаемого диапазона будет отклонено сервером на уровне аутентификации, даже если сеть/firewall пропускают трафик.<br/><br/>---<br/><br/>## 7. Параметры удаления пользователя (`delete_user`)<br/><br/>###
|
||||||
|
Имя пользователя (`username`)<br/><br/>Пользователь должен существовать в кластере. `root`/`healthcheck`/`mariadb.sys` удалить нельзя.<br/><br/>---<br/><br/>## 8. Выходные параметры<br/><br/>### internalConnect<br/><br/>Внутренний
|
||||||
|
адрес для подключения из сервисов, работающих в том же кластере Kubernetes:<br/>```json<br/>{<br/> "master": {<br/> "dns": "<clusterResourceName>.<namespace>.svc.<domain>",<br/> "ip": null,<br/> "port":
|
||||||
|
3306<br/> }<br/>}<br/>```<br/><br/>### externalConnect<br/><br/>Присутствует в выходных данных, **только если** был запрошен внешний доступ (`accessConfiguration.masterIpSpace` отличен от `no-needed`).
|
||||||
|
Если внешний доступ не запрошен или был отключён через `modify` — этого блока не будет вовсе (пустой блок в состояние не пишется):<br/>```json<br/>{<br/> "master": {<br/> "dns": "write.<namespace>.<domain>",<br/> "ip":
|
||||||
|
"<внешний IP>",<br/> "port": 3306<br/> }<br/>}<br/>```<br/><br/>---<br/><br/>## 9. Пример подключения<br/><br/>### 9.1 Изнутри кластера / того же namespace<br/><br/>```bash<br/>mariadb -h <internalConnect.dns>
|
||||||
|
-P 3306 -u <username> -p<br/>```<br/><br/>### 9.2 Через port-forward<br/><br/>```bash<br/>kubectl port-forward svc/<clusterResourceName> 3306:3306 -n <namespace><br/>```<br/><br/>**Важно:** после `port-forward`
|
||||||
|
подключайтесь именно по `127.0.0.1`, а не `localhost`:<br/><br/>```bash<br/>mariadb -h 127.0.0.1 -P 3306 -u <username> -p<br/>```<br/><br/>Клиент `mysql`/`mariadb` при указании `-h localhost` **игнорирует
|
||||||
|
TCP/порт** и всегда пытается подключиться через локальный unix-сокет (`/var/lib/mysql/mysql.sock`), которого на вашей машине нет — подключение упадёт с `ERROR 2002 (HY000): Can''t connect to local server
|
||||||
|
through socket`. `127.0.0.1` форсирует реальное TCP-подключение. Также не забывайте `-P` (порт) с заглавной буквы — строчная `-p` относится к паролю.<br/><br/>### 9.3 Снаружи (внешний адрес)<br/><br/>```bash<br/>mariadb
|
||||||
|
-h <externalConnect.ip или externalConnect.dns> -P 3306 -u <username> -p<br/>```<br/><br/>Доступно только если при создании/модификации был указан реальный `masterIpSpace` и подключающийся IP входит в
|
||||||
|
`accessConfiguration.masterAccessList` (или список пуст).<br/><br/>Где:<br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль пользователя<br/><br/>---<br/><br/>## 10. Дополнительная информация<br/><br/>*
|
||||||
|
Расписание бэкапов (`backupConfiguration.schedule`/`retain`) задаётся один раз при создании и не может быть изменено позже — ограничение самого `mariadb-operator`, а не платформы.<br/>* Версию MariaDB
|
||||||
|
можно только повышать, откат на более старую версию не поддерживается.<br/>* Размер диска можно только увеличивать.<br/>* `suspend` реально останавливает под (масштабирование StatefulSet в 0 реплик),
|
||||||
|
а не просто помечает кластер как приостановленный — расход ресурсов CPU/RAM/диска (кроме уже занятого диска) прекращается.<br/>* При отключении внешнего доступа через `modify` (`masterIpSpace: no-needed`)
|
||||||
|
внешний Service, DNS-запись и правило firewall удаляются, а `externalConnect` пропадает из выходных данных.<br/>* Самостоятельного восстановления из бэкапа (операции `restore`) пока нет. Бэкапы лежат
|
||||||
|
в S3 инстанса — восстановление данных в существующий кластер выполняется вручную, скачиванием и применением бэкапа самим владельцем инстанса.'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -101,16 +148,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
masterAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 880
|
- svcOperationCfsParamId: 880
|
||||||
svcOperationCfsParam: mariadbConfiguration
|
svcOperationCfsParam: mariadbConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -131,7 +178,7 @@ cfsParams:
|
|||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
@@ -155,6 +202,14 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
enabled:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
schedule:
|
schedule:
|
||||||
dataType: integer >= 0
|
dataType: integer >= 0
|
||||||
defaultValue: '0'
|
defaultValue: '0'
|
||||||
@@ -179,31 +234,23 @@ cfsParams:
|
|||||||
- '10'
|
- '10'
|
||||||
- '15'
|
- '15'
|
||||||
- '20'
|
- '20'
|
||||||
enabled:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'false'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
- svcOperationCfsParamId: 734
|
- svcOperationCfsParamId: 734
|
||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: db-utkbjfp1
|
defaultValue: db-wpm05duv
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 735
|
- svcOperationCfsParamId: 735
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: user4qtyx9eo
|
defaultValue: userhucihd6b
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 736
|
- svcOperationCfsParamId: 736
|
||||||
svcOperationCfsParam: password
|
svcOperationCfsParam: password
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: j84crbfp
|
defaultValue: oe063z3u
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 737
|
- svcOperationCfsParamId: 737
|
||||||
svcOperationCfsParam: dbName
|
svcOperationCfsParam: dbName
|
||||||
@@ -305,28 +352,6 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 8.4.0
|
- 8.4.0
|
||||||
- 9.4.0
|
- 9.4.0
|
||||||
- svcOperationCfsParamId: 886
|
|
||||||
svcOperationCfsParam: backupConfiguration
|
|
||||||
dataType: map-fixed
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: true
|
|
||||||
dataDescriptor:
|
|
||||||
s3Uid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
retain:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
schedule:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 887
|
- svcOperationCfsParamId: 887
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -391,7 +416,6 @@ cfsParamsByOp:
|
|||||||
- 883
|
- 883
|
||||||
- 884
|
- 884
|
||||||
- 885
|
- 885
|
||||||
- 886
|
|
||||||
- 887
|
- 887
|
||||||
287: []
|
287: []
|
||||||
141: []
|
141: []
|
||||||
@@ -399,7 +423,7 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
mariadbConfiguration: '{"version": "9.4.0"}'
|
mariadbConfiguration: '{"version": "9.4.0"}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "", "retain": 720, "schedule": "0 0 * * *"}'
|
||||||
autoscaleConfiguration: '{"schedule": 0, "quota": 100, "percent": 10, "enabled": false}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
|
|||||||
@@ -2,21 +2,24 @@ name: kafka
|
|||||||
service_id: 116
|
service_id: 116
|
||||||
service_display_name: ApacheKafka
|
service_display_name: ApacheKafka
|
||||||
service_short_name: kafka
|
service_short_name: kafka
|
||||||
service_man: '# Инструкция по развертыванию Организация в Cloud Director через платформу<br/><br/>## 1. Общая информация<br/><br/>Сервис **Организация в Cloud Director** предназначен для управления изолированными
|
service_man: "# Инструкция по развертыванию Apache Kafka через платформу<br/><br/>---<br/>## 1. Общая информация<br/>Брокер сообщений Apache Kafka — это отказоустойчивая распределённая платформа для обмена\
|
||||||
организационными единицами (тенантами) внутри инфраструктуры Cloud Director. Он обеспечивает создание, модификацию и администрирование организаций, предоставление им облачных ресурсов, а также контроль
|
\ сообщениями и потоковой обработки данных в реальном времени.<br/>Позволяет надёжно передавать события между сервисами и системами, интегрироваться с внешними решениями и использовать как внутренние,\
|
||||||
уровня доступа. Сервис используется для организации рабочих окружений потребителей, управления жизненным циклом организаций и их сетевой инфраструктурой.<br/><br/>### Доступные операции<br/><br/>**create**
|
\ так и защищённые TLS-подключения. Развёртывание полностью автоматизировано платформой.<br/><br/>## Доступные операции<br/>- **create** — Создание кластера<br/>- **delete** — Удаление кластера<br/>-\
|
||||||
— Создание новой организации с заданными характеристиками и типом доступа.<br/>**delete** — Удаление организации после перехода в состояние suspend; приводит к удалению всех связанных сущностей.<br/>**modify**
|
\ **suspend** — Остановка кластера<br/>- **resume** — Запуск кластера<br/><br/>- **create_topic** — Создание топика<br/>- **modify_topic** — Модификация топика<br/>- **delete_topic** — Удаление\
|
||||||
— Изменение параметров внутри организации (на текущий момент поддерживается изменение ipSpaces).<br/>**suspend** — Заморозка организации, ограничение возможности изменения и добавления сущностей.<br/>**resume**
|
\ топика<br/><br/>- **create_user** — Создание пользователя<br/>- **modify_user** — Модификация пользователя<br/>- **delete_user** — Удаление пользователя<br/><br/><br/>---<br/>## 2. Параметры\
|
||||||
— Разморозка организации, восстановление функций управления.<br/><br/>---<br/><br/>## 2. Параметры развертывания<br/><br/>Параметры входных данных операции **create**:<br/><br/>### Платформа для развертывания<br/>Описание:
|
\ развертывания кластера<br/>Ниже перечислены параметры, которые необходимо указать при создании ресурса Kafka:<br/><br/>* **Платформа для развертывания:**<br/> Платформа для развертывания (среда, в\
|
||||||
платформа, на которой будет создана организация.<br/>Пример значения: `ngcloud.ru`.<br/><br/>### Тип организации<br/>Описание: тип создаваемой организации.<br/>Варианты:<br/>- `iaas` — организация с прямым
|
\ которой будет развернут кластер). Пример: `\tk8s-3.ext.nubes.ru`.<br/><br/>* **Количество узлов в сети:**<br/> Количество узлов (брокеров) в кластере Kafka<br/><br/>* **Квота (megabyte) памяти пода:**<br/>\
|
||||||
доступом к облаку и авторизацией через Keycloak.<br/>- `saas` — организация под управлением Nubes, без прямого доступа к облаку.<br/><br/>---<br/><br/>## 3. Рекомендованные характеристики<br/><br/>###
|
\ Квота памяти пода в мегабайтах. Пример: `2048`<br/><br/>* **Квота (millicore ) ядра пода:**<br/> Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример: `1000`<br/><br/>* **Размер (gigabyte) диска\
|
||||||
Тестовое окружение<br/>- Тип организации: `iaas` для обеспечения полного доступа к облачным ресурсам и самостоятельного управления.<br/><br/>### Промышленное окружение<br/>- Тип организации: `saas` (упрощённая
|
\ для базы данных:**<br/> Размер диска для хранения данных в гигабайтах. Пример: `20`<br/><br/>* **Выделяет внешний IP для доступа к master:**<br/> Флаг, определяющий, нужно ли выделять внешний IP для\
|
||||||
модель использования).<br/><br/>---<br/><br/>## 4. Выходные параметры<br/><br/>Услуга предоставляет следующие выходные параметры (формируются в процессе операций):<br/><br/>### Идентификатор организации<br/>Уникальный
|
\ доступа к master-брокеру. Пример: `true` или `false`<br/><br/>* **Имя ipSpace для публикации внешнего IP**<br/> Если включен предыдущий параметр, то поле необходимо заполнить. Пример: `internet-no-antiddos-v1`<br/><br/>---<br/>##\
|
||||||
идентификатор созданной организации. Используется для всех дальнейших API-операций.<br/><br/>### Статус организации<br/>Отражает текущее состояние: active, suspended, modifying, deleting.<br/><br/>###
|
\ 4. Выходные параметры<br/>После успешного развертывания ресурса Kafka платформа возвращает ряд параметров.<br/>Ключевыми из них являются:<br/><br/>**internalConnect** (выдаётся только при работе кластера\
|
||||||
Параметры сети<br/>Выходные данные при наличии ipSpaces: список выделенных внешних IP, имя ip_space, количество IP.<br/><br/>---<br/><br/>## 5. Дополнительная информация<br/><br/>- Для конфигурации внешних
|
\ по внутренним адресам)<br/>Внутренние эндпоинты для подключения из сервисов, развёрнутых внутри того же Kubernetes-кластера.<br/>```yaml<br/>internalConnect:<br/> bootstrap:<br/> fqdn: \"<serviceName>-kafka-tls-bootstrap.<namespace>.svc.<clusterDomain>\"\
|
||||||
IP внутри организации необходимо предварительно создать:<br/>-- хотя бы один **Виртуальный датацентр (VDC)**;<br/>-- хотя бы один **Сетевой шлюз периметра (Edge Gateway)**, привязанный к этой организации.<br/>-
|
<br/> port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"<serviceName>-<serviceName>-pool-0.<serviceName>-kafka-brokers.<namespace>.svc.<clusterDomain>\"<br/> port: 9093<br/>```<br/><br/>**externalConnect**\
|
||||||
Удаление организации возможно только через 14 дней после перевода в состояние suspend.<br/>- Удаление организации приводит к удалению всех связанных сущностей: VDC, Edge Gateway, пулов IP, сетей, ВМок
|
\ (выдаётся только при выделении внешнего IP)<br/>Внешние эндпоинты, зарегистрированные в DNS.<br/>```yaml<br/>externalConnect:<br/> bootstrap:<br/> fqdn: \"bootstrap.<namespace>.<dnsZone>\"<br/>\
|
||||||
и иных объектов.<br/>- Операция suspend не останавливает виртуальные машины, но блокирует любые изменения инфраструктуры внутри организации.<br/>- Для iaas-организаций доступ осуществляется через Keycloak.<br/><br/>'
|
\ port: 9093<br/> brokers:<br/> broker-1:<br/> fqdn: \"broker-1.<namespace>.<dnsZone>\"<br/> port: 9093<br/>```<br/><br/>Заполняется **только один** из параметров:<br/>- при внешней аллокации\
|
||||||
|
\ (`loadbalancer`) — `externalConnect`, `internalConnect` остаётся пустым;<br/>- при внутреннем режиме — `internalConnect`, `externalConnect` остаётся пустым.<br/><br/>Для подключения используются следующие\
|
||||||
|
\ порты:<br/><br/>* 9092 — внутренний нешифрованный доступ (plain).<br/>* 9093 — внутренний и внешний доступ по TLS, с обязательной TLS-аутентификацией.<br/><br/>---<br/>## 5. Дополнительная информация<br/>Для\
|
||||||
|
\ создания топиков, пользователей и управления ими, а также для интеграции с кластерами Kafka используйте соответствующие сервисы и раздел \"Облачные сервисы\".<br/>---"
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -209,17 +212,17 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: '2000'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: '2048'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
@@ -229,7 +232,7 @@ cfsParams:
|
|||||||
- '7'
|
- '7'
|
||||||
disk:
|
disk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1088
|
- svcOperationCfsParamId: 1088
|
||||||
|
|||||||
@@ -93,20 +93,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
shards:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '2'
|
|
||||||
- '3'
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1000'
|
defaultValue: '1000'
|
||||||
@@ -127,6 +113,20 @@ cfsParams:
|
|||||||
- '3'
|
- '3'
|
||||||
- '5'
|
- '5'
|
||||||
- '7'
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
shards:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
- '3'
|
||||||
- svcOperationCfsParamId: 839
|
- svcOperationCfsParamId: 839
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -134,16 +134,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
masterAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 840
|
- svcOperationCfsParamId: 840
|
||||||
svcOperationCfsParam: clickhouseKeeperConfiguration
|
svcOperationCfsParam: clickhouseKeeperConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -213,20 +213,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
quota:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '100'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -245,6 +231,20 @@ cfsParams:
|
|||||||
- '5'
|
- '5'
|
||||||
- '12'
|
- '12'
|
||||||
- '23'
|
- '23'
|
||||||
|
quota:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 851
|
- svcOperationCfsParamId: 851
|
||||||
svcOperationCfsParam: clickhouseFilesConfiguration
|
svcOperationCfsParam: clickhouseFilesConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -311,6 +311,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -335,16 +345,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 845
|
- svcOperationCfsParamId: 845
|
||||||
svcOperationCfsParam: clickhouseKeeperConfiguration
|
svcOperationCfsParam: clickhouseKeeperConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -431,15 +431,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
percent:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '10'
|
|
||||||
- '15'
|
|
||||||
- '20'
|
|
||||||
enabled:
|
enabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: false,true
|
defaultValue: false,true
|
||||||
@@ -460,6 +451,15 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
percent:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '10'
|
||||||
|
- '15'
|
||||||
|
- '20'
|
||||||
- svcOperationCfsParamId: 850
|
- svcOperationCfsParamId: 850
|
||||||
svcOperationCfsParam: clickhouseFilesConfiguration
|
svcOperationCfsParam: clickhouseFilesConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -511,10 +511,10 @@ cfsParamsByOp:
|
|||||||
182: []
|
182: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
clusterConfiguration: '{"shards": 1, "disk": 10, "cpu": 1000, "memory": 2048, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 2048, "replicas": 1, "disk": 10, "shards": 1}'
|
||||||
accessConfiguration: '{"masterAccessList": "[]", "masterIpSpace": ""}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
clickhouseKeeperConfiguration: '{"cpu": 500, "memory": 512, "replicas": 0}'
|
||||||
clickhouseConfiguration: '{"version": "25.10"}'
|
clickhouseConfiguration: '{"version": "25.10"}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
autoscaleConfiguration: '{"quota": 100, "percent": 10, "enabled": false, "schedule": 0}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
clickhouseFilesConfiguration: '{"path": "something.xml", "xmlConfig": "<clickhouse></clickhouse>"}'
|
||||||
|
|||||||
@@ -19,6 +19,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
clusterName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: k8s-8bpzagxw
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
resourceRealm:
|
resourceRealm:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ngcloud.ru
|
defaultValue: ngcloud.ru
|
||||||
@@ -26,9 +31,14 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- ngcloud.ru
|
- ngcloud.ru
|
||||||
clusterName:
|
providerVdc:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-cgvxzckk
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
networkProvider:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 772
|
- svcOperationCfsParamId: 772
|
||||||
@@ -40,10 +50,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -54,15 +65,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
count:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '3'
|
|
||||||
- '5'
|
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -75,6 +77,15 @@ cfsParams:
|
|||||||
defaultValue: '50'
|
defaultValue: '50'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
count:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
- svcOperationCfsParamId: 774
|
- svcOperationCfsParamId: 774
|
||||||
svcOperationCfsParam: workerConfiguration
|
svcOperationCfsParam: workerConfiguration
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -82,6 +93,18 @@ cfsParams:
|
|||||||
defaultValue: '[{}]'
|
defaultValue: '[{}]'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
groupName:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: workers-wngkcnbs
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
sizingPolicy:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '{}'
|
||||||
sizingDisk:
|
sizingDisk:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '50'
|
defaultValue: '50'
|
||||||
@@ -92,18 +115,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
groupName:
|
autoscale:
|
||||||
dataType: string
|
dataType: boolean
|
||||||
defaultValue: workers-wqtdfsen
|
defaultValue: 'false'
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
sizingPolicy:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '{}'
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 775
|
- svcOperationCfsParamId: 775
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -111,11 +148,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
accessIpListIngress:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
needExternalAddressAPI:
|
needExternalAddressAPI:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -135,6 +167,11 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'true'
|
- 'true'
|
||||||
|
accessIpListIngress:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
258:
|
258:
|
||||||
- 771
|
- 771
|
||||||
@@ -143,8 +180,8 @@ cfsParamsByOp:
|
|||||||
- 774
|
- 774
|
||||||
- 775
|
- 775
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "ngcloud.ru", "clusterName": "example-cgvxzckk"}'
|
startupConfiguration: '{"clusterName": "k8s-8bpzagxw", "resourceRealm": "ngcloud.ru", "providerVdc": "", "networkProvider": ""}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
controlPlaneConfiguration: '{"count": 1, "sizingPolicy": "", "sizingDisk": 50}'
|
controlPlaneConfiguration: '{"sizingPolicy": "", "sizingDisk": 50, "count": 1}'
|
||||||
workerConfiguration: '{"sizingDisk": 50, "count": 2, "groupName": "workers-wqtdfsen", "sizingPolicy": ""}'
|
workerConfiguration: '{"groupName": "workers-wngkcnbs", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"accessIpListIngress": "[]", "needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
|
|||||||
@@ -133,22 +133,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
ffPublicLink:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
ffLogging:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
userCount:
|
userCount:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -191,6 +175,22 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
ffPublicLink:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
ffLogging:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 660
|
- svcOperationCfsParamId: 660
|
||||||
svcOperationCfsParam: s3Storage
|
svcOperationCfsParam: s3Storage
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
|
|||||||
@@ -2,7 +2,17 @@ name: k8s_sthutrval_cluster
|
|||||||
service_id: 150
|
service_id: 150
|
||||||
service_display_name: Kubernetes кластер Штурвал
|
service_display_name: Kubernetes кластер Штурвал
|
||||||
service_short_name: k8sSthutrvalCluster
|
service_short_name: k8sSthutrvalCluster
|
||||||
service_man: Перед разворачиванием убедиться, что в облаке есть 2 свободных невыделенных IP в пуле
|
service_man: '# Развёртывание Kubernetes: ограничения и предварительный чек-лист<br/><br/>> **Внимание:** перед началом развёртывания кластера Kubernetes убедитесь, что выполнены все описанные ниже условия.
|
||||||
|
Несоблюдение порядка шагов может привести к ошибкам при создании кластера.<br/><br/>---<br/><br/>## Ограничения при развёртывании<br/><br/>| Ограничение | Статус |<br/>|---|---|<br/>| 1 кластер = 1 vDC
|
||||||
|
| Действует (будет исправлено в ближайшее время) |<br/><br/>---<br/><br/>## Предварительный чек-лист<br/><br/>Перед установкой кластера Kubernetes необходимо последовательно выполнить следующие шаги.<br/><br/>###
|
||||||
|
1. Создать организацию в Cloud Director<br/><br/>- Перейдите в услугу **Организация в Cloud Director**.<br/>- Создайте организацию.<br/><br/>### 2. Создать виртуальный датацентр (vDC)<br/><br/>- Перейдите
|
||||||
|
в услугу **Виртуальный датацентр (vDC)**.<br/>- Создайте vDC.<br/>- Выделите **достаточно ресурсов для разворачивания _всех_ нод** кластера.<br/><br/>### 3. Создать Edge (сетевой шлюз периметра)<br/><br/>-
|
||||||
|
Перейдите в услугу **Сетевой шлюз периметра (Edge)**.<br/>- Создайте Edge.<br/>- Обязательно:<br/> - Включить **ALB**.<br/> - Установить **Кол-во VS на AVI ≥ 3**.<br/><br/>### 4. Добавить внешние адреса
|
||||||
|
в организации<br/><br/>- Вернитесь в **Организация в Cloud Director**.<br/>- Выполните операцию **Modify**.<br/>- Добавьте **3 внешних адреса**.<br/>- Количество `ipSpaces` значения не имеет, важно чтобы
|
||||||
|
суммарно было 3 адреса.<br/><br/>### 5. Настроить SNAT для виртуальных машин<br/><br/>- Вернитесь в **Сетевой шлюз периметра (Edge)**.<br/>- Выполните операцию **Modify**.<br/>- Выберите доступный `ipSpaceName`.<br/>-
|
||||||
|
Это будет **SNAT для виртуальных машин**.<br/><br/>### 6. Развернуть кластер Kubernetes<br/><br/>- Только **после выполнения всех шагов выше** переходите к услуге **Kubernetes кластер Штурвал**.<br/>-
|
||||||
|
Начните разворачивание кластера.<br/><br/>---<br/><br/>## Минимальные требования к кластеру<br/><br/>| Параметр | Значение |<br/>|---|---|<br/>| Мастер-ноды | минимум **1** |<br/>| Воркер-ноды | минимум
|
||||||
|
**1** |<br/>| CPU (на ноду) | **4 vCPU** |<br/>| RAM (на ноду) | **8 GB** |<br/>| Диск (на ноду) | **50 GB** |<br/><br/>---'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -61,9 +71,65 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
clusterName:
|
clusterName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: example-umab2vgx
|
defaultValue: example-yn5ajpm3
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
exLogging:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exMonitoring:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exLocalCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exVip:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exUpdate:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exIngress:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
exNamedCsi:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 751
|
- svcOperationCfsParamId: 751
|
||||||
svcOperationCfsParam: controlPlaneConfiguration
|
svcOperationCfsParam: controlPlaneConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -101,7 +167,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
groupName:
|
groupName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: workers-dum0vgn5
|
defaultValue: workers-smfsut8s
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
@@ -121,6 +187,32 @@ cfsParams:
|
|||||||
defaultValue: '2'
|
defaultValue: '2'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
autoscale:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'false'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '2'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '3'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 753
|
- svcOperationCfsParamId: 753
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -128,11 +220,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
accessIpListIngress:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
needExternalAddressAPI:
|
needExternalAddressAPI:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -152,6 +239,11 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'true'
|
- 'true'
|
||||||
|
accessIpListIngress:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 755
|
- svcOperationCfsParamId: 755
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -161,10 +253,11 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
appVersion:
|
appVersion:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 2.13.1
|
defaultValue: 2.14.0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -205,6 +298,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- 2.14.0
|
||||||
- 2.13.1
|
- 2.13.1
|
||||||
- 2.12.1
|
- 2.12.1
|
||||||
- 2.11.0
|
- 2.11.0
|
||||||
@@ -243,14 +337,9 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
count:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
groupName:
|
groupName:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: workers-tr9wauz1
|
defaultValue: workers-rhkpbeti
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
sizingPolicy:
|
sizingPolicy:
|
||||||
@@ -265,6 +354,37 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
count:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
autoscale:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
autoscaleMin:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
autoscaleMax:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
labelDeck:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 759
|
- svcOperationCfsParamId: 759
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -317,8 +437,9 @@ cfsParamsByOp:
|
|||||||
174: []
|
174: []
|
||||||
173: []
|
173: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"vdcUid": "", "nsxtUid": "", "clusterName": "example-umab2vgx"}'
|
startupConfiguration: '{"vdcUid": "", "nsxtUid": "", "clusterName": "example-yn5ajpm3", "exLogging": true, "exMonitoring": true, "exLocalCsi": true, "exVip": true, "exUpdate": true, "exIngress": true,
|
||||||
|
"exNamedCsi": true}'
|
||||||
controlPlaneConfiguration: '{"sizingPolicy": "[]", "sizingDisk": 50, "count": 1}'
|
controlPlaneConfiguration: '{"sizingPolicy": "[]", "sizingDisk": 50, "count": 1}'
|
||||||
workerConfiguration: '{"groupName": "workers-dum0vgn5", "sizingPolicy": "", "sizingDisk": 50, "count": 2}'
|
workerConfiguration: '{"groupName": "workers-smfsut8s", "sizingPolicy": "", "sizingDisk": 50, "count": 2, "autoscale": false, "autoscaleMin": 2, "autoscaleMax": 3, "labelDeck": true}'
|
||||||
accessConfiguration: '{"accessIpListIngress": "[]", "needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true}'
|
accessConfiguration: '{"needExternalAddressAPI": true, "accessIpListAPI": "[]", "needExternalAddressIngress": true, "accessIpListIngress": "[]"}'
|
||||||
clusterConfiguration: '{"appVersion": "2.13.1"}'
|
clusterConfiguration: '{"appVersion": "2.14.0"}'
|
||||||
|
|||||||
@@ -0,0 +1,366 @@
|
|||||||
|
name: k8s_openbao
|
||||||
|
service_id: 151
|
||||||
|
service_display_name: Vault
|
||||||
|
service_short_name: k8sOpenbao
|
||||||
|
service_man: '# Инструкция по развертыванию Хранилища секретов через платформу<br/><br/>## 1. Общая информация<br/>Хранилище секретов — сервис централизованного и защищённого хранения чувствительных данных
|
||||||
|
(секретов, ключей, конфигураций). Предназначен для использования приложениями и сервисами в Kubernetes с управлением доступом на основе ролей.<br/>В качестве приложения используется открытый проект OpenBao
|
||||||
|
с поддержкой кластерного режима RAFT.<br/><br/>### Доступные операции<br/>**create** — Создание хранилища секретов и инициализация кластера.<br/>**delete** — Удаление хранилища секретов с полной очисткой
|
||||||
|
всех связанных сущностей.<br/>**modify** — Изменение параметров развернутого хранилища секретов.<br/>**suspend** — Приостановка работы кластера без удаления Persistent Volume.<br/>**resume** — Возобновление
|
||||||
|
работы кластера с автоматическим unseal всех нод.<br/>**restart** — Поочередный перезапуск нод с последующим подключением в кластер.<br/>**create_kv** — Создание Key/Value хранилища версии V2.<br/>**delete_kv**
|
||||||
|
— Удаление Key/Value хранилища со всеми содержащимися секретами.<br/>**create_secrets** — Создание секрета внутри Key/Value хранилища.<br/>**delete_secrets** — Удаление секрета из Key/Value хранилища.<br/>**update_secrets**
|
||||||
|
— Обновление значения секрета.<br/>**recovery_secrets** — Откат секрета к указанной версии.<br/>**create_role** — Создание роли для управления Key/Value хранилищем или секретами.<br/>**update_role** —
|
||||||
|
Обновление параметров роли.<br/>**delete_role** — Удаление роли доступа.<br/><br/>---<br/><br/>## 2. Параметры развертывания<br/><br/>Параметры входных данных операции **create**:<br/><br/>### Платформа
|
||||||
|
для развертывания<br/>Описание: Кластер Kubernetes, в котором будет развернуто приложение.<br/>Формат значения: имя Kubernetes-кластера.<br/><br/>### Имя домена<br/>Описание: Доменное имя сервиса. При
|
||||||
|
указании полного FQDN выполняется проверка DNS A-записи или добавляется А-запись в техническую зону.<br/>Формат значения: secrets.domain.com / mysecretdomain.<br/><br/>### Кол-во реплик<br/>Описание:
|
||||||
|
Количество узлов в кластере.<br/>Формат значения: целое число.<br/><br/>### Квота ядра пода<br/>Описание: Лимит CPU для одного узла. Указывается в milicores (1000 milicores = 1 CPU).<br/>Формат значения:
|
||||||
|
целое число.<br/><br/>### Квота памяти пода<br/>Описание: Лимит оперативной памяти для одного узла. Указывается в megabytes.<br/>Формат значения: целое число.<br/><br/>### Размер диска под хранение секретов<br/>Описание:
|
||||||
|
Объем диска для хранения данных. Фактический объем равен значению, умноженному на количество реплик. Указывается в Gigabytes<br/>Формат значения: целое число.<br/><br/>### Версия OpenBao<br/>Описание:
|
||||||
|
Версия OpenBao для развертывания сервиса.<br/>Формат значения: выбор из предоставленного списка версий.<br/><br/>---<br/><br/>## 3. Рекомендованные характеристики<br/><br/>### Тестовое окружение<br/>Кол-во
|
||||||
|
реплик: 2.<br/>Квота ядра пода: 200.<br/>Квота памяти пода: 256.<br/>Размер диска под хранение секретов: 1.<br/>Версия OpenBao: актуальная стабильная версия.<br/><br/>### Промышленное окружение<br/>Кол-во
|
||||||
|
реплик: от 3.<br/>Квота ядра пода: от 1000.<br/>Квота памяти пода: от 1024.<br/>Размер диска под хранение секретов: от 10.<br/>Версия OpenBao: актуальная стабильная версия.<br/><br/>---<br/><br/>## 4.
|
||||||
|
Выходные параметры<br/>Настройки внутри хранилища (kv/secrets/roles) — конфигурации Key/Value, секретов и ролей, созданные соответствующими операциями.<br/>Настройки самого хранилище (сайзинг, объемы)
|
||||||
|
— параметры ресурсов и хранилища данных, примененные к сервису.<br/>Статус кластера (running / suspended) — текущее состояние работы кластера.<br/>url для подключения к веб — адрес веб-интерфейса сервиса.<br/><br/>---<br/><br/>##
|
||||||
|
5. Дополнительная информация<br/>При удалении хранилища все данные и настройки безвозвратно удаляются.<br/>При использовании доменного имени требуется корректная настройка DNS.<br/>Операции управления
|
||||||
|
секретами и ролями выполняются только после успешного создания хранилища.<br/>Удаление кластера производится через операцию `suspend`, а удаление становится доступно через 14 дней после остановки кластера<br/>Правило
|
||||||
|
выше не относится к операции `delete_kv` / `delete_secrets` / `delete_role`'
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: true
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 210
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 212
|
||||||
|
operation: create_kv
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 237
|
||||||
|
operation: create_policy
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 214
|
||||||
|
operation: create_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 231
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 213
|
||||||
|
operation: delete_kv
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 239
|
||||||
|
operation: delete_policy
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 233
|
||||||
|
operation: delete_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 211
|
||||||
|
operation: modify
|
||||||
|
kind: instance
|
||||||
|
action: modify
|
||||||
|
- svcOperationId: 236
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 232
|
||||||
|
operation: recovery_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: recovery
|
||||||
|
- svcOperationId: 216
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 215
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
|
- svcOperationId: 238
|
||||||
|
operation: update_policy
|
||||||
|
kind: subresource
|
||||||
|
action: update
|
||||||
|
- svcOperationId: 230
|
||||||
|
operation: update_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: update
|
||||||
|
stateOut:
|
||||||
|
kvs: {}
|
||||||
|
policies: {}
|
||||||
|
secrets: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 663
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: k8s-4-ext-nubes-ru
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- k8s-4-ext-nubes-ru
|
||||||
|
- svcOperationCfsParamId: 664
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '500'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 665
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '3'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 666
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 667
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '10'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 668
|
||||||
|
svcOperationCfsParam: appVersion
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 2.5.2
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 2.5.2
|
||||||
|
- svcOperationCfsParamId: 669
|
||||||
|
svcOperationCfsParam: domain
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: bao-ozea0nxy
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 675
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: kvname-ljwxn20b
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 728
|
||||||
|
svcOperationCfsParam: policySettings
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
path:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
capabilities:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '["read", "list"]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 729
|
||||||
|
svcOperationCfsParam: policyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: policy-idnyeyeg
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 677
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 678
|
||||||
|
svcOperationCfsParam: secretPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: path/to/mysecret
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 679
|
||||||
|
svcOperationCfsParam: secretData
|
||||||
|
dataType: map
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 676
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 732
|
||||||
|
svcOperationCfsParam: policyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 726
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 727
|
||||||
|
svcOperationCfsParam: secretPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 670
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 671
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '500'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 672
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '512'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 673
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 674
|
||||||
|
svcOperationCfsParam: appVersion
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 2.5.2
|
||||||
|
- svcOperationCfsParamId: 723
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 724
|
||||||
|
svcOperationCfsParam: secretPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 725
|
||||||
|
svcOperationCfsParam: secretVersion
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 730
|
||||||
|
svcOperationCfsParam: policyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 731
|
||||||
|
svcOperationCfsParam: policySettings
|
||||||
|
dataType: array-map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
path:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
capabilities:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 719
|
||||||
|
svcOperationCfsParam: kvName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 720
|
||||||
|
svcOperationCfsParam: secretPath
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 721
|
||||||
|
svcOperationCfsParam: needFullUpdateSecret
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 'false'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
- svcOperationCfsParamId: 722
|
||||||
|
svcOperationCfsParam: secretData
|
||||||
|
dataType: map
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
cfsParamsByOp:
|
||||||
|
210:
|
||||||
|
- 663
|
||||||
|
- 664
|
||||||
|
- 665
|
||||||
|
- 666
|
||||||
|
- 667
|
||||||
|
- 668
|
||||||
|
- 669
|
||||||
|
212:
|
||||||
|
- 675
|
||||||
|
237:
|
||||||
|
- 728
|
||||||
|
- 729
|
||||||
|
214:
|
||||||
|
- 677
|
||||||
|
- 678
|
||||||
|
- 679
|
||||||
|
231: []
|
||||||
|
213:
|
||||||
|
- 676
|
||||||
|
239:
|
||||||
|
- 732
|
||||||
|
233:
|
||||||
|
- 726
|
||||||
|
- 727
|
||||||
|
211:
|
||||||
|
- 670
|
||||||
|
- 671
|
||||||
|
- 672
|
||||||
|
- 673
|
||||||
|
- 674
|
||||||
|
236: []
|
||||||
|
232:
|
||||||
|
- 723
|
||||||
|
- 724
|
||||||
|
- 725
|
||||||
|
216: []
|
||||||
|
215: []
|
||||||
|
238:
|
||||||
|
- 730
|
||||||
|
- 731
|
||||||
|
230:
|
||||||
|
- 719
|
||||||
|
- 720
|
||||||
|
- 721
|
||||||
|
- 722
|
||||||
|
stateParams:
|
||||||
|
resourceRealm: k8s-4-ext-nubes-ru
|
||||||
|
resourceCPU: '500'
|
||||||
|
resourceInstances: '3'
|
||||||
|
resourceMemory: '512'
|
||||||
|
resourceDisk: '10'
|
||||||
|
appVersion: 2.5.2
|
||||||
|
domain: bao-ozea0nxy
|
||||||
@@ -0,0 +1,248 @@
|
|||||||
|
name: llm_ai
|
||||||
|
service_id: 163
|
||||||
|
service_display_name: ML Улей
|
||||||
|
service_short_name: llmAi
|
||||||
|
service_man: '## 1. Общая информация<br/><br/>LLMaaS (Large Language Model as a Service) — это сервис для доступа к языковым моделям через OpenAI-совместимое API.<br/>Платформа позволяет создавать организации
|
||||||
|
(тенанты), команды, выпускать и управлять API-ключами, устанавливать лимиты на использование.<br/><br/>### Ограничение: одна организация на контрагента<br/><br/>На одного контрагента может быть создана
|
||||||
|
**только одна организация** в LLMaaS.<br/>Повторная попытка создать организацию для того же контрагента завершится ошибкой.<br/><br/>### Возможные ошибки и как их обрабатывать<br/><br/>При работе с сервисом
|
||||||
|
могут возникнуть типовые ошибки. Ниже описано, как их распознать и что делать.<br/><br/>| Ошибка | Когда возникает | Что делать |<br/>|--------|-----------------|------------|<br/>| `Организация в LLMaaS
|
||||||
|
уже привязана к контрагенту <contragentCode>` | При операции `create`, если организация для данного контрагента уже существует | На одного контрагента допускается только одна организация. Если нужно изменить
|
||||||
|
существующую организацию, используйте операции управления командами и ключами |<br/>| `Не хватает нужного гранта. Примените реконсиляцию для данного инстанса` | При операциях `create_team`, `modify_team`,
|
||||||
|
если модель не выдана организации на Layer 1 | Запустите операцию `reconcile` для данного инстанса. Она обновит список моделей, доступных организации, после чего повторите исходную операцию |<br/>| `Лимиты
|
||||||
|
API-ключа не могут превышать лимиты команды` | При операциях `create_secrets`, `update_secrets` | Уменьшите значения `RPM` и/или `TPM` ключа до уровня команды или увеличьте лимиты самой команды через
|
||||||
|
`modify_team` |<br/><br/>---<br/><br/>## Доступные операции<br/><br/>- **create** — Создание организации в LLMaaS<br/>- **delete** — Удаление организации<br/><br/>- **create_team** —
|
||||||
|
Создание команды внутри организации<br/>- **modify_team** — Редактирование команды (модели, RPM, TPM)<br/>- **delete_team** — Удаление команды<br/><br/>- **create_secrets** — Создание API-ключа<br/>-
|
||||||
|
**update_secrets** — Обновление параметров API-ключа<br/>- **delete_secrets** — Удаление API-ключа<br/><br/>- **reconcile** — Обновление списка моделей, доступных организации<br/><br/>---<br/><br/>##
|
||||||
|
2. Параметры создания организации<br/><br/>Ниже перечислены параметры, которые необходимо указать при создании организации:<br/><br/>* **Платформа для развертывания**<br/> Выбирается автоматически, изменять
|
||||||
|
не нужно.<br/><br/>## 3. Параметры создания команды<br/><br/>* **Имя команды**<br/> Уникальное имя команды в рамках организации.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели,
|
||||||
|
доступной для команды.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в
|
||||||
|
минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример: `100000`<br/><br/>---<br/><br/>## 4. Параметры редактирования команды<br/><br/>Для существующей команды
|
||||||
|
можно изменить:<br/><br/>* **Модель**<br/> Новая модель для команды.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое значение RPM.<br/> Пример: `120`<br/><br/>*
|
||||||
|
**Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>---<br/><br/>## 5. Параметры создания API-ключа<br/><br/>Ниже перечислены параметры, которые необходимо указать
|
||||||
|
при создании API-ключа:<br/><br/>* **Имя ключа**<br/> Уникальное имя ключа в рамках организации.<br/> Пример: `prod-key`<br/><br/>* **Команда**<br/> Имя команды для привязки ключа. Если не указано
|
||||||
|
— ключ привязывается к команде `main`.<br/> Пример: `production`<br/><br/>* **Модель**<br/> Название модели, доступной для данного ключа.<br/> Пример: `gpt-oss-120b`<br/><br/>* **Лимит запросов в минуту
|
||||||
|
(RPM)**<br/> Максимальное количество запросов к API в минуту.<br/> Пример: `60`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Максимальное количество токенов (входящих + исходящих) в минуту.<br/> Пример:
|
||||||
|
`100000`<br/><br/>**Важно:** Лимиты API-ключа не могут превышать лимиты команды, к которой он привязан.<br/>При превышении операция будет отклонена с ошибкой.<br/>Перед созданием ключа убедитесь, что
|
||||||
|
`RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/><br/>---<br/><br/>## 6. Параметры обновления API-ключа<br/><br/>Для уже существующего ключа можно изменить параметры. Все параметры являются опциональными:<br/><br/>*
|
||||||
|
**Имя ключа**<br/> Имя обновляемого ключа.<br/> Пример: `prod-key`<br/><br/>* **Модель**<br/> Новое название модели.<br/> Пример: `gpt-oss-20b`<br/><br/>* **Лимит запросов в минуту (RPM)**<br/> Новое
|
||||||
|
значение RPM.<br/> Пример: `120`<br/><br/>* **Лимит токенов в минуту (TPM)**<br/> Новое значение TPM.<br/> Пример: `200000`<br/><br/>**Важно:** При обновлении лимитов API-ключа новые значения не могут
|
||||||
|
превышать лимиты команды.<br/>Если указать значения выше командных, операция завершится ошибкой.<br/>Указывайте `RPM <= team.RPM` и `TPM <= team.TPM`.<br/><br/>Команда определяется автоматически по стейту
|
||||||
|
услуги — изменить привязку к другой команде через эту операцию нельзя.<br/><br/>---<br/><br/>## 7. Параметры удаления API-ключа<br/><br/>* **Команда**<br/> Имя команды, к которой привязан ключ.<br/> Пример:
|
||||||
|
`production`<br/><br/>* **Имя ключа**<br/> Имя удаляемого ключа.<br/> Пример: `prod-key`<br/><br/>---<br/><br/>## 8. Параметры удаления команды<br/><br/>* **Имя команды**<br/> Имя удаляемой команды.<br/> Пример:
|
||||||
|
`production`<br/><br/>---<br/><br/>## 9. Параметры удаления организации<br/><br/>Удаление организации не требует дополнительных параметров — удаляется вся организация со всеми командами и ключами.<br/><br/>---<br/><br/>##
|
||||||
|
10. Выходные параметры<br/><br/>После успешного создания организации платформа возвращает:<br/><br/>* **connectionUrl**<br/> URL для доступа к inference API (OpenAI-совместимый).<br/> Пример: `https://api.aillm.ru`<br/><br/>---<br/><br/><br/>##
|
||||||
|
11. Пример использования API<br/><br/>После получения API-ключа клиент может обращаться к LLMaaS напрямую:<br/><br/>**Запрос к chat completions:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/chat/completions
|
||||||
|
\<br/> -H "Authorization: Bearer sk-..." \<br/> -H "Content-Type: application/json" \<br/> -d ''{<br/> "model": "gpt-oss-120b",<br/> "messages": [<br/> {"role": "user", "content": "Привет!"}<br/> ]<br/> }''<br/>```<br/><br/>**Получение
|
||||||
|
списка доступных моделей:**<br/><br/>```bash<br/>curl https://api.aillm.ru/v1/models \<br/> -H "Authorization: Bearer sk-..."<br/>```<br/>'
|
||||||
|
lifecycle:
|
||||||
|
suspendOnDestroyDefault: false
|
||||||
|
adoptExistingOnCreateDefault: false
|
||||||
|
operations:
|
||||||
|
- svcOperationId: 271
|
||||||
|
operation: create
|
||||||
|
kind: instance
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 274
|
||||||
|
operation: create_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 278
|
||||||
|
operation: create_team
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
|
- svcOperationId: 273
|
||||||
|
operation: delete
|
||||||
|
kind: instance
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 275
|
||||||
|
operation: delete_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 280
|
||||||
|
operation: delete_team
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
|
- svcOperationId: 279
|
||||||
|
operation: modify_team
|
||||||
|
kind: subresource
|
||||||
|
action: modify
|
||||||
|
- svcOperationId: 412
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 277
|
||||||
|
operation: update_secrets
|
||||||
|
kind: subresource
|
||||||
|
action: update
|
||||||
|
stateOut:
|
||||||
|
secrets: {}
|
||||||
|
teams: {}
|
||||||
|
cfsParams:
|
||||||
|
- svcOperationCfsParamId: 826
|
||||||
|
svcOperationCfsParam: resourceRealm
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: llmAi.aillm.ru
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- llmAi.aillm.ru
|
||||||
|
- svcOperationCfsParamId: 833
|
||||||
|
svcOperationCfsParam: models
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 834
|
||||||
|
svcOperationCfsParam: rpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '60'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 835
|
||||||
|
svcOperationCfsParam: tpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '100000'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 857
|
||||||
|
svcOperationCfsParam: keyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 859
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 858
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 860
|
||||||
|
svcOperationCfsParam: models
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 861
|
||||||
|
svcOperationCfsParam: rpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '60'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 862
|
||||||
|
svcOperationCfsParam: tpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '100000'
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 836
|
||||||
|
svcOperationCfsParam: keyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 876
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 868
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 864
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 865
|
||||||
|
svcOperationCfsParam: models
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 873
|
||||||
|
svcOperationCfsParam: rpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '60'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 874
|
||||||
|
svcOperationCfsParam: tpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '100000'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 852
|
||||||
|
svcOperationCfsParam: keyName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 853
|
||||||
|
svcOperationCfsParam: models
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 854
|
||||||
|
svcOperationCfsParam: rpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '60'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 855
|
||||||
|
svcOperationCfsParam: tpmLimit
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: '100000'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 875
|
||||||
|
svcOperationCfsParam: teamName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
cfsParamsByOp:
|
||||||
|
271:
|
||||||
|
- 826
|
||||||
|
274:
|
||||||
|
- 833
|
||||||
|
- 834
|
||||||
|
- 835
|
||||||
|
- 857
|
||||||
|
- 859
|
||||||
|
278:
|
||||||
|
- 858
|
||||||
|
- 860
|
||||||
|
- 861
|
||||||
|
- 862
|
||||||
|
273: []
|
||||||
|
275:
|
||||||
|
- 836
|
||||||
|
- 876
|
||||||
|
280:
|
||||||
|
- 868
|
||||||
|
279:
|
||||||
|
- 864
|
||||||
|
- 865
|
||||||
|
- 873
|
||||||
|
- 874
|
||||||
|
412: []
|
||||||
|
277:
|
||||||
|
- 852
|
||||||
|
- 853
|
||||||
|
- 854
|
||||||
|
- 855
|
||||||
|
- 875
|
||||||
|
stateParams:
|
||||||
|
resourceRealm: llmAi.aillm.ru
|
||||||
@@ -73,6 +73,12 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- iaas
|
- iaas
|
||||||
- saas
|
- saas
|
||||||
|
- svcOperationCfsParamId: 1125
|
||||||
|
svcOperationCfsParam: organizationSuffix
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 871
|
- svcOperationCfsParamId: 871
|
||||||
svcOperationCfsParam: admins
|
svcOperationCfsParam: admins
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -110,7 +116,7 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
count:
|
count:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -118,6 +124,7 @@ cfsParamsByOp:
|
|||||||
136:
|
136:
|
||||||
- 418
|
- 418
|
||||||
- 556
|
- 556
|
||||||
|
- 1125
|
||||||
283:
|
283:
|
||||||
- 871
|
- 871
|
||||||
137: []
|
137: []
|
||||||
@@ -131,3 +138,4 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
resourceRealm: ngcloud.ru
|
resourceRealm: ngcloud.ru
|
||||||
organizationType: iaas
|
organizationType: iaas
|
||||||
|
organizationSuffix: ''
|
||||||
|
|||||||
@@ -98,12 +98,12 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
secret:
|
subparam2:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
subparam2:
|
secret:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
@@ -127,13 +127,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
minStr1:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: abracadabra
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- abracadabra
|
|
||||||
param1:
|
param1:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -161,6 +154,13 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
minStr1:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: abracadabra
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- abracadabra
|
||||||
- svcOperationCfsParamId: 654
|
- svcOperationCfsParamId: 654
|
||||||
svcOperationCfsParam: arrayMapFixedExample
|
svcOperationCfsParam: arrayMapFixedExample
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -168,6 +168,20 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
param1:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
param2:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '["1"'
|
||||||
|
- '"2"'
|
||||||
|
- '"3"]'
|
||||||
param3:
|
param3:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -188,20 +202,6 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- abracadabra
|
- abracadabra
|
||||||
param1:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
param2:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '["1"'
|
|
||||||
- '"2"'
|
|
||||||
- '"3"]'
|
|
||||||
- svcOperationCfsParamId: 863
|
- svcOperationCfsParamId: 863
|
||||||
svcOperationCfsParam: arr
|
svcOperationCfsParam: arr
|
||||||
dataType: array
|
dataType: array
|
||||||
@@ -304,9 +304,9 @@ stateParams:
|
|||||||
whereFail: '1'
|
whereFail: '1'
|
||||||
resourceRealm: ''
|
resourceRealm: ''
|
||||||
bodymessage: ''
|
bodymessage: ''
|
||||||
mapExample: '{"subparam1": "", "secret": "", "subparam2": ""}'
|
mapExample: '{"subparam1": "", "subparam2": "", "secret": ""}'
|
||||||
jsonExample: ''
|
jsonExample: ''
|
||||||
nestedRefExample: ''
|
nestedRefExample: ''
|
||||||
mapFixed: '{"minStr1": "abracadabra", "param1": 1, "param2": "1", "param3": 1, "bol1": false}'
|
mapFixed: '{"param1": 1, "param2": "1", "param3": 1, "bol1": false, "minStr1": "abracadabra"}'
|
||||||
arrayMapFixedExample: '{"param3": 1, "bol1": false, "minStr1": "", "param1": 0, "param2": ""}'
|
arrayMapFixedExample: '{"param1": 0, "param2": "", "param3": 1, "bol1": false, "minStr1": ""}'
|
||||||
arr: ''
|
arr: ''
|
||||||
|
|||||||
@@ -58,13 +58,13 @@ cfsParams:
|
|||||||
dataType: uuid
|
dataType: uuid
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 335
|
- svcOperationCfsParamId: 335
|
||||||
svcOperationCfsParam: providerVdc
|
svcOperationCfsParam: providerVdc
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 361
|
- svcOperationCfsParamId: 361
|
||||||
svcOperationCfsParam: storageConfig
|
svcOperationCfsParam: storageConfig
|
||||||
dataType: array-map-fixed
|
dataType: array-map-fixed
|
||||||
@@ -79,36 +79,50 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
size:
|
size:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '100'
|
defaultValue: '2000'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
isDefaultStorageProfile:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 397
|
- svcOperationCfsParamId: 397
|
||||||
svcOperationCfsParam: cpuGuaranteed
|
svcOperationCfsParam: cpuGuaranteed
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '20'
|
defaultValue: '0'
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- '20'
|
- '0'
|
||||||
- '50'
|
- '50'
|
||||||
- '80'
|
- '80'
|
||||||
- svcOperationCfsParamId: 557
|
- svcOperationCfsParamId: 557
|
||||||
svcOperationCfsParam: cpuAllocated
|
svcOperationCfsParam: cpuAllocated
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '10'
|
defaultValue: '80'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 558
|
- svcOperationCfsParamId: 558
|
||||||
svcOperationCfsParam: memAllocated
|
svcOperationCfsParam: memAllocated
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '20'
|
defaultValue: '200'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 746
|
- svcOperationCfsParamId: 746
|
||||||
svcOperationCfsParam: networkProvider
|
svcOperationCfsParam: networkProvider
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1130
|
||||||
|
svcOperationCfsParam: suffixName
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: xobcwf4u
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 560
|
- svcOperationCfsParamId: 560
|
||||||
svcOperationCfsParam: cpuAllocated
|
svcOperationCfsParam: cpuAllocated
|
||||||
@@ -139,6 +153,32 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
isDefaultStorageProfile:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
- svcOperationCfsParamId: 1158
|
||||||
|
svcOperationCfsParam: organizationUid
|
||||||
|
dataType: uuid
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1159
|
||||||
|
svcOperationCfsParam: networkProvider
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1160
|
||||||
|
svcOperationCfsParam: providerVdc
|
||||||
|
dataType: string
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
9:
|
9:
|
||||||
- 30
|
- 30
|
||||||
@@ -148,19 +188,24 @@ cfsParamsByOp:
|
|||||||
- 557
|
- 557
|
||||||
- 558
|
- 558
|
||||||
- 746
|
- 746
|
||||||
|
- 1130
|
||||||
24: []
|
24: []
|
||||||
112:
|
112:
|
||||||
- 560
|
- 560
|
||||||
- 561
|
- 561
|
||||||
- 562
|
- 562
|
||||||
|
- 1158
|
||||||
|
- 1159
|
||||||
|
- 1160
|
||||||
250: []
|
250: []
|
||||||
172: []
|
172: []
|
||||||
171: []
|
171: []
|
||||||
stateParams:
|
stateParams:
|
||||||
organizationUid: ''
|
organizationUid: ''
|
||||||
providerVdc: ''
|
providerVdc: ''
|
||||||
storageConfig: '{"name": "", "size": 100}'
|
storageConfig: '{"name": "", "size": 2000, "isDefaultStorageProfile": false}'
|
||||||
cpuGuaranteed: '20'
|
cpuGuaranteed: '0'
|
||||||
cpuAllocated: '10'
|
cpuAllocated: '80'
|
||||||
memAllocated: '20'
|
memAllocated: '200'
|
||||||
networkProvider: ''
|
networkProvider: ''
|
||||||
|
suffixName: xobcwf4u
|
||||||
|
|||||||
@@ -88,6 +88,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1110
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 10.10.102.0/24
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 81.22.46.22
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 185.247.187.77
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 368
|
- svcOperationCfsParamId: 368
|
||||||
svcOperationCfsParam: needEnableAVI
|
svcOperationCfsParam: needEnableAVI
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
@@ -115,6 +137,28 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1112
|
||||||
|
svcOperationCfsParam: routedNetConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
ipAddrPool:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
mainDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
secondDns:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
10:
|
10:
|
||||||
- 8
|
- 8
|
||||||
@@ -123,12 +167,14 @@ cfsParamsByOp:
|
|||||||
- 621
|
- 621
|
||||||
- 622
|
- 622
|
||||||
- 825
|
- 825
|
||||||
|
- 1110
|
||||||
25: []
|
25: []
|
||||||
111:
|
111:
|
||||||
- 368
|
- 368
|
||||||
- 369
|
- 369
|
||||||
- 372
|
- 372
|
||||||
- 856
|
- 856
|
||||||
|
- 1112
|
||||||
252: []
|
252: []
|
||||||
stateParams:
|
stateParams:
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
@@ -137,3 +183,4 @@ stateParams:
|
|||||||
vdcType: vdc
|
vdcType: vdc
|
||||||
vdcGroupUid: ''
|
vdcGroupUid: ''
|
||||||
qosProfile: ''
|
qosProfile: ''
|
||||||
|
routedNetConfiguration: '{"ipAddrPool": "10.10.102.0/24", "mainDns": "81.22.46.22", "secondDns": "185.247.187.77"}'
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ cfsParams:
|
|||||||
svcOperationCfsParam: vappName
|
svcOperationCfsParam: vappName
|
||||||
dataType: string
|
dataType: string
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: es1fsp9q
|
defaultValue: 9zrw3ba0
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 623
|
- svcOperationCfsParamId: 623
|
||||||
svcOperationCfsParam: vdcUid
|
svcOperationCfsParam: vdcUid
|
||||||
@@ -66,5 +66,5 @@ cfsParamsByOp:
|
|||||||
208: []
|
208: []
|
||||||
stateParams:
|
stateParams:
|
||||||
nsxtUid: ''
|
nsxtUid: ''
|
||||||
vappName: es1fsp9q
|
vappName: 9zrw3ba0
|
||||||
vdcUid: ''
|
vdcUid: ''
|
||||||
|
|||||||
@@ -96,9 +96,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 413
|
- svcOperationCfsParamId: 413
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: array
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: '["0.0.0.0/0"]'
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 414
|
- svcOperationCfsParamId: 414
|
||||||
svcOperationCfsParam: imageVm
|
svcOperationCfsParam: imageVm
|
||||||
@@ -126,10 +126,34 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 448
|
- svcOperationCfsParamId: 448
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: string
|
dataType: array-map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '["22"]'
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '22'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1118
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: 'false'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 493
|
- svcOperationCfsParamId: 493
|
||||||
svcOperationCfsParam: vmCpu
|
svcOperationCfsParam: vmCpu
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -154,11 +178,6 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 497
|
- svcOperationCfsParamId: 497
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -167,10 +186,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 498
|
- svcOperationCfsParamId: 498
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1119
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
- svcOperationCfsParamId: 509
|
- svcOperationCfsParamId: 509
|
||||||
svcOperationCfsParam: vmName
|
svcOperationCfsParam: vmName
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -201,11 +244,6 @@ cfsParams:
|
|||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
|
||||||
- no-needed
|
|
||||||
- internet-antiddos-v1
|
|
||||||
- internet-no-antiddos-v1
|
|
||||||
- internet-ipv4-v1
|
|
||||||
- svcOperationCfsParamId: 514
|
- svcOperationCfsParamId: 514
|
||||||
svcOperationCfsParam: accessIpList
|
svcOperationCfsParam: accessIpList
|
||||||
dataType: json
|
dataType: json
|
||||||
@@ -242,10 +280,34 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 520
|
- svcOperationCfsParamId: 520
|
||||||
svcOperationCfsParam: accessPortList
|
svcOperationCfsParam: accessPortList
|
||||||
dataType: json
|
dataType: array-map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
port:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: all
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- tcp
|
||||||
|
- udp
|
||||||
|
- all
|
||||||
|
- svcOperationCfsParamId: 1123
|
||||||
|
svcOperationCfsParam: sameSnat
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
132:
|
132:
|
||||||
- 407
|
- 407
|
||||||
@@ -260,6 +322,7 @@ cfsParamsByOp:
|
|||||||
- 416
|
- 416
|
||||||
- 417
|
- 417
|
||||||
- 448
|
- 448
|
||||||
|
- 1118
|
||||||
133: []
|
133: []
|
||||||
159:
|
159:
|
||||||
- 493
|
- 493
|
||||||
@@ -268,6 +331,7 @@ cfsParamsByOp:
|
|||||||
- 496
|
- 496
|
||||||
- 497
|
- 497
|
||||||
- 498
|
- 498
|
||||||
|
- 1119
|
||||||
286: []
|
286: []
|
||||||
164:
|
164:
|
||||||
- 509
|
- 509
|
||||||
@@ -281,6 +345,7 @@ cfsParamsByOp:
|
|||||||
- 517
|
- 517
|
||||||
- 518
|
- 518
|
||||||
- 520
|
- 520
|
||||||
|
- 1123
|
||||||
135: []
|
135: []
|
||||||
134: []
|
134: []
|
||||||
stateParams:
|
stateParams:
|
||||||
@@ -290,9 +355,10 @@ stateParams:
|
|||||||
vmRam: '1'
|
vmRam: '1'
|
||||||
vmDisk: ''
|
vmDisk: ''
|
||||||
ipSpaceName: ''
|
ipSpaceName: ''
|
||||||
accessIpList: ''
|
accessIpList: '["0.0.0.0/0"]'
|
||||||
imageVm: ''
|
imageVm: ''
|
||||||
cloudInit: ''
|
cloudInit: ''
|
||||||
userLogin: myuser
|
userLogin: myuser
|
||||||
userPublicKey: ''
|
userPublicKey: ''
|
||||||
accessPortList: '["22"]'
|
accessPortList: '{"port": "22", "type": "all"}'
|
||||||
|
sameSnat: 'false'
|
||||||
|
|||||||
@@ -44,11 +44,6 @@ cfsParams:
|
|||||||
defaultValue: '100'
|
defaultValue: '100'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '5'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '128'
|
defaultValue: '128'
|
||||||
@@ -59,6 +54,11 @@ cfsParams:
|
|||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '5'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 814
|
- svcOperationCfsParamId: 814
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -90,7 +90,7 @@ cfsParams:
|
|||||||
- service
|
- service
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: abracadabra-g2byllee
|
defaultValue: abracadabra-am1z2wlk
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
@@ -125,13 +125,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
disk:
|
memory:
|
||||||
dataType: integer >= 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
memory:
|
disk:
|
||||||
dataType: integer > 0
|
dataType: integer >= 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -165,13 +165,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
masterAccessList:
|
slaveIpSpace:
|
||||||
dataType: json
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
slaveIpSpace:
|
masterAccessList:
|
||||||
dataType: string
|
dataType: json
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
@@ -193,6 +193,6 @@ cfsParamsByOp:
|
|||||||
98: []
|
98: []
|
||||||
97: []
|
97: []
|
||||||
stateParams:
|
stateParams:
|
||||||
clusterConfiguration: '{"cpu": 100, "disk": 5, "memory": 128, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 100, "memory": 128, "replicas": 1, "disk": 5}'
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
accessConfiguration: '{"type": "ingress", "domain": "abracadabra-g2byllee", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
accessConfiguration: '{"type": "ingress", "domain": "abracadabra-am1z2wlk", "masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
|
|||||||
@@ -2,7 +2,49 @@ name: nextcloud
|
|||||||
service_id: 50
|
service_id: 50
|
||||||
service_display_name: Nextcloud
|
service_display_name: Nextcloud
|
||||||
service_short_name: nextcloud
|
service_short_name: nextcloud
|
||||||
service_man: 'Ресурсная платформа: k8s. Автоматизация: helm chart'
|
service_man: '# Инструкция по развертыванию Nextcloud через платформу<br/><br/>## 1. Общая информация<br/><br/>Nextcloud — платформа для хранения и совместной работы с файлами. Разворачивается в K8s через
|
||||||
|
Helm-чарт `nextcloud/nextcloud`.<br/><br/>Сервис **не самодостаточен** — для создания необходимы заранее развёрнутые в той же ресурсной платформе:<br/><br/>* **PostgreSQL (k8s)** — база данных Nextcloud.
|
||||||
|
У СУБД должен быть выставлен параметр `sslRequired: false`.<br/>* **Redis (k8s)** — используется как memcache/locking backend.<br/><br/>Резервное копирование выполняется через **Velero** (бэкапятся под
|
||||||
|
и PVC с данными), а не штатным S3-бэкапом СУБД.<br/><br/>### Доступные операции с сервисом<br/><br/>* **create** — создание сервиса<br/>* **delete** — удаление сервиса<br/>* **suspend** —
|
||||||
|
остановка сервиса (масштабирование реплик в 0)<br/>* **resume** — запуск сервиса<br/>* **restart** — перезапуск (`kubectl rollout restart`)<br/>* **modify** — изменение настроек
|
||||||
|
сервиса<br/>* **reconcile** — служебная операция синхронизации версии (запускается платформой автоматически)<br/>* **create_backup** — создание резервной копии вручную (через Velero)<br/>* **recovery** —
|
||||||
|
восстановление из резервной копии в **новый** инстанс<br/><br/>> **Примечание:** операций работы с пользователями Nextcloud (`create_user`/`modify_user`/`delete_user`) на уровне платформы нет — пользователи
|
||||||
|
приложения администрируются внутри самого Nextcloud.<br/><br/>---<br/><br/>## 2. Параметры создания сервиса<br/><br/>### Платформа для развертывания<br/><br/>Ресурсная платформа (`resourceRealm`), в которой
|
||||||
|
будет развёрнут сервис. PostgreSQL и Redis, указанные ниже, обязаны находиться в той же ресурсной платформе.<br/><br/>### СУБД PostgreSQL (psqlUid)<br/><br/>UID инстанса PostgreSQL (k8s), в котором будет
|
||||||
|
создана база и пользователь `nextcloud`.<br/><br/>* У выбранной СУБД должна отсутствовать база `nextcloud` и пользователь `nextcloud`.<br/>* У СУБД обязан быть выключен `sslRequired` (`false`).<br/><br/>###
|
||||||
|
СУБД Redis (redisUid)<br/><br/>UID инстанса Redis (k8s), который будет использоваться как memcache/locking backend.<br/><br/>### Количество реплик<br/><br/>Количество реплик Nextcloud (`clusterConfiguration.replicas`).<br/><br/>###
|
||||||
|
Квота памяти пода (MB)<br/><br/>Объём памяти для пода Nextcloud в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода Nextcloud в миликорах (1000 mCPU = 1 vCPU).<br/>Пример:
|
||||||
|
`1000`<br/><br/>### Размер диска для данных (GB)<br/><br/>Объём диска под данные Nextcloud (`/var/www/html/data`) в гигабайтах.<br/>Пример: `20`<br/><br/>### Домен<br/><br/>Домен, на котором будет доступен
|
||||||
|
Nextcloud (`accessConfiguration.domain`).<br/><br/>* Если указано **полное доменное имя** (содержит точку, например `cloud.company.ru`) — домен считается клиентским. Перед созданием клиент обязан сам
|
||||||
|
настроить DNS-запись, указывающую на адрес Ingress платформы, иначе создание завершится ошибкой.<br/>* Если указано **короткое имя** (без точки, например `mycloud`) — платформа сама создаёт DNS-запись
|
||||||
|
вида `<domain>.nextcloudk8s` и настраивает сертификат.<br/><br/>### Версия<br/><br/>Версия приложения Nextcloud (`appConfiguration.version`, поле `appVersion` Helm-чарта). По ней автоматически подбирается
|
||||||
|
последняя подходящая версия Helm-чарта.<br/><br/>> **Примечание:** список поддерживаемых версий и допустимые шаги обновления заданы в `pipelines/stages/functions/helm.groovy` (см. раздел 13).<br/><br/>###
|
||||||
|
Document Server<br/><br/>Параметр `appConfiguration.documentServer`. Если указать `collabora` — в кластер дополнительно разворачивается Collabora Online (совместное редактирование офисных документов),
|
||||||
|
доступный по пути `/collabora` на том же домене.<br/>Оставьте пустым, если Document Server не нужен.<br/><br/>### Уровень логирования<br/><br/>Параметр `appConfiguration.logLevel`. Одно из значений: `DEBUG`,
|
||||||
|
`INFO`, `WARN`, `ERROR`, `FATAL`, либо `NONE` — чтобы не переопределять логирование Nextcloud.<br/><br/>---<br/><br/>## 3. Параметры модификации сервиса<br/><br/>Изменению подлежат ресурсы, версия и часть
|
||||||
|
`appConfiguration`. Параметры `psqlUid`/`redisUid` менять после создания не рекомендуется.<br/><br/>### Количество реплик<br/><br/>См. раздел 2.<br/><br/>### Квота памяти пода (MB) / Квота CPU пода (mCPU)
|
||||||
|
/ Размер диска (GB)<br/><br/>См. раздел 2.<br/><br/>> **Примечание:** уменьшить уже выделенный размер диска нельзя.<br/><br/>### Версия<br/><br/>Обновление версии разрешено только **на один патч** либо
|
||||||
|
**на одну минорную версию вперёд** (с `patch=0`). Прыжок сразу через несколько минорных версий или через несколько мажорных версий запрещён — обновляться нужно последовательно.<br/><br/>> **Примечание:**
|
||||||
|
перед обновлением на новую minor/major-версию необходимо сначала выполнить `modify` на текущей версии, обновившись до последнего релиза этой версии (иначе операция завершится ошибкой с описанием, до какой
|
||||||
|
версии нужно обновиться сначала).<br/><br/>### Document Server / Уровень логирования<br/><br/>См. раздел 2.<br/><br/>---<br/><br/>## 4. Параметры удаления сервиса<br/><br/>Специальных параметров нет —
|
||||||
|
удаление сносит namespace целиком.<br/><br/>> **Примечание:** резервные копии, созданные через `create_backup`, хранятся в Velero отдельно от инстанса и **не удаляются** вместе с сервисом — операции `delete_backup`
|
||||||
|
для Nextcloud нет, копии нужно вычищать на стороне Velero отдельно.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>Специальных пользовательских параметров нет — имя бэкапа генерируется
|
||||||
|
автоматически в формате `<дата>-<версия>-<namespace>`.<br/><br/>> **Примечание:** создать бэкап можно только если сервис предварительно приостановлен (`suspend`). Velero, в который создаётся бэкап, должен
|
||||||
|
быть развёрнут в той же ресурсной платформе, что и Nextcloud, и не может быть сменён на другой Velero-инстанс в рамках одного сервиса.<br/><br/>Бэкапится под с данными вместе с PVC/PV (файлы), метаданные
|
||||||
|
и БД PostgreSQL бэкапом не затрагиваются — версия схемы БД фиксируется отдельно (см. раздел 6).<br/><br/>---<br/><br/>## 6. Параметры восстановления из бэкапа (recovery)<br/><br/>В отличие от СУБД-сервисов,
|
||||||
|
`recovery` у Nextcloud **не восстанавливает данные в текущий инстанс**, а создаёт **новый** инстанс сервиса (аналог `create`), в который переносятся файлы из указанной резервной копии.<br/><br/>### Точка
|
||||||
|
восстановления (recoveryPoint)<br/><br/>Имя резервной копии Velero, из которой будет выполнено восстановление.<br/><br/>### Домен нового инстанса<br/><br/>Обязан отличаться от домена исходного (текущего)
|
||||||
|
инстанса — восстановление на тот же домен не поддерживается.<br/><br/>### СУБД PostgreSQL нового инстанса<br/><br/>Если версия Nextcloud в бэкапе отличается от текущей версии инстанса, для нового инстанса
|
||||||
|
обязательно нужно указать **другую** СУБД PostgreSQL (нельзя восстанавливать бэкап со старой схемой БД поверх БД с более новой схемой).<br/><br/>---<br/><br/>## 7. Выходные параметры<br/><br/>После успешного
|
||||||
|
создания сервиса платформа возвращает:<br/><br/>### connectionUrl<br/><br/>Адрес для входа в Nextcloud: `https://<домен>`.<br/><br/>### namespace<br/><br/>Namespace в K8s-кластере, в котором развёрнут
|
||||||
|
сервис.<br/><br/>### Учётные данные (Vault)<br/><br/>В Vault сохраняется пароль администратора (`adminPass`) под логином `admin`.<br/><br/>---<br/><br/>## 8. Пример подключения<br/><br/>Откройте `connectionUrl`
|
||||||
|
в браузере и авторизуйтесь:<br/><br/>* **Логин:** `admin`<br/>* **Пароль:** значение `adminPass` из блока «Учётные данные» в Vault<br/><br/>---<br/><br/>## 9. Дополнительная информация<br/><br/>### Зависимости<br/><br/>Nextcloud
|
||||||
|
нельзя создать без уже существующих в том же `resourceRealm` сервисов PostgreSQL (k8s, `sslRequired: false`) и Redis (k8s). При `delete` зависимые СУБД и Redis не трогаются — удаляется только сам Nextcloud.<br/><br/>###
|
||||||
|
suspend/resume<br/><br/>При `suspend` количество реплик Nextcloud, Collabora и exporter''а метрик принудительно выставляется в `0` через `helm upgrade` (реальное масштабирование, а не просто пауза cron).
|
||||||
|
При `resume` реплики возвращаются к значению из `clusterConfiguration.replicas`.<br/><br/>### Collabora<br/><br/>Собирается из отдельного `image.repository: nexus-sa.tst.nubes.ru/collabora/code` и включается
|
||||||
|
только при `appConfiguration.documentServer == ''collabora''`. Доступен на том же домене и том же TLS-сертификате, что и сам Nextcloud, по пути `/collabora`.<br/><br/>### Бэкап/восстановление через Velero<br/><br/>Бэкап/восстановление
|
||||||
|
файлов идёт через Velero с селектором `backup=<serviceName>-velero-backup` и включает под, PVC и PV — то есть непосредственно файлы `/var/www/html/data`. Восстановление БД в новый инстанс выполняется
|
||||||
|
штатным механизмом `create` с параметром `instanceUidFrom`, который проставляет `recovery`-джоба автоматически.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -137,7 +179,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-6afmoouq
|
defaultValue: nextcloud-v9jbyta8
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1058
|
- svcOperationCfsParamId: 1058
|
||||||
@@ -147,18 +189,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
logLevel:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: INFO
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- DEBUG
|
|
||||||
- INFO
|
|
||||||
- WARN
|
|
||||||
- ERROR
|
|
||||||
- FATAL
|
|
||||||
- NONE
|
|
||||||
version:
|
version:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: 33.0.4
|
defaultValue: 33.0.4
|
||||||
@@ -173,6 +203,18 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- collabora
|
- collabora
|
||||||
|
logLevel:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: INFO
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- DEBUG
|
||||||
|
- INFO
|
||||||
|
- WARN
|
||||||
|
- ERROR
|
||||||
|
- FATAL
|
||||||
|
- NONE
|
||||||
- svcOperationCfsParamId: 1077
|
- svcOperationCfsParamId: 1077
|
||||||
svcOperationCfsParam: startupConfiguration
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -192,19 +234,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '1'
|
|
||||||
- '2'
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -229,6 +258,19 @@ cfsParams:
|
|||||||
- '6144'
|
- '6144'
|
||||||
- '7168'
|
- '7168'
|
||||||
- '8192'
|
- '8192'
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1060
|
- svcOperationCfsParamId: 1060
|
||||||
svcOperationCfsParam: appConfiguration
|
svcOperationCfsParam: appConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -269,16 +311,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
psqlUid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
redisUid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
resourceRealm:
|
resourceRealm:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: k8s-4-ext-nubes-ru
|
defaultValue: k8s-4-ext-nubes-ru
|
||||||
@@ -286,16 +318,6 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- k8s-4-ext-nubes-ru
|
- k8s-4-ext-nubes-ru
|
||||||
veleroUid:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
recoveryPoint:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
psqlEnabled:
|
psqlEnabled:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'true'
|
defaultValue: 'true'
|
||||||
@@ -310,6 +332,26 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- 'true'
|
- 'true'
|
||||||
|
recoveryPoint:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
psqlUid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
redisUid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
veleroUid:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1079
|
- svcOperationCfsParamId: 1079
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -317,16 +359,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
replicas:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: 1,2
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
disk:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '10'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
cpu:
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -351,6 +383,16 @@ cfsParams:
|
|||||||
- '6144'
|
- '6144'
|
||||||
- '7168'
|
- '7168'
|
||||||
- '8192'
|
- '8192'
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: 1,2
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '10'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1080
|
- svcOperationCfsParamId: 1080
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -360,7 +402,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: nextcloud-ch6fvoz1
|
defaultValue: nextcloud-zdaml6i9
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1081
|
- svcOperationCfsParamId: 1081
|
||||||
@@ -418,5 +460,5 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru", "psqlEnabled": true, "redisEnabled": true, "psqlUid": "", "redisUid": ""}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru", "psqlEnabled": true, "redisEnabled": true, "psqlUid": "", "redisUid": ""}'
|
||||||
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"domain": "nextcloud-6afmoouq"}'
|
accessConfiguration: '{"domain": "nextcloud-v9jbyta8"}'
|
||||||
appConfiguration: '{"logLevel": "INFO", "version": "33.0.4", "documentServer": "collabora"}'
|
appConfiguration: '{"version": "33.0.4", "documentServer": "collabora", "logLevel": "INFO"}'
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ service_man: 'Расширенный реестр для управления Do
|
|||||||
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
процесса непрерывной интеграции. Контейнеры идеально подходят для запуска небольших, независимых и легко изменяемых сервисов.<br/>Чтобы начать работу, создайте реестр и загрузите в него Docker-образ<br/>Авторизация:
|
||||||
keycloak'
|
keycloak'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: false
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
operations:
|
operations:
|
||||||
- svcOperationId: 14
|
- svcOperationId: 14
|
||||||
@@ -18,6 +18,22 @@ operations:
|
|||||||
operation: delete
|
operation: delete
|
||||||
kind: instance
|
kind: instance
|
||||||
action: delete
|
action: delete
|
||||||
|
- svcOperationId: 270
|
||||||
|
operation: modify
|
||||||
|
kind: instance
|
||||||
|
action: modify
|
||||||
|
- svcOperationId: 405
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
|
- svcOperationId: 415
|
||||||
|
operation: resume
|
||||||
|
kind: instance
|
||||||
|
action: resume
|
||||||
|
- svcOperationId: 416
|
||||||
|
operation: suspend
|
||||||
|
kind: instance
|
||||||
|
action: suspend
|
||||||
stateOut: {}
|
stateOut: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 16
|
- svcOperationCfsParamId: 16
|
||||||
@@ -38,26 +54,74 @@ cfsParams:
|
|||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: resourceCPU
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '100'
|
defaultValue: '1000'
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 229
|
- svcOperationCfsParamId: 229
|
||||||
svcOperationCfsParam: resourceMemory
|
svcOperationCfsParam: resourceMemory
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '200'
|
defaultValue: '1024'
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 230
|
- svcOperationCfsParamId: 230
|
||||||
svcOperationCfsParam: resourceInstances
|
svcOperationCfsParam: resourceInstances
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
isModifiable: false
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 231
|
- svcOperationCfsParamId: 231
|
||||||
svcOperationCfsParam: s3Uid
|
svcOperationCfsParam: s3Uid
|
||||||
dataType: uuid
|
dataType: uuid
|
||||||
isRequired: true
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1126
|
||||||
|
svcOperationCfsParam: pvType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: s3
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- s3
|
||||||
|
- local
|
||||||
|
- svcOperationCfsParamId: 1127
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: '5'
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1128
|
||||||
|
svcOperationCfsParam: authType
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: local
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- local
|
||||||
|
- keycloak
|
||||||
|
- svcOperationCfsParamId: 822
|
||||||
|
svcOperationCfsParam: resourceInstances
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 823
|
||||||
|
svcOperationCfsParam: resourceCPU
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 824
|
||||||
|
svcOperationCfsParam: resourceMemory
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
- svcOperationCfsParamId: 1129
|
||||||
|
svcOperationCfsParam: resourceDisk
|
||||||
|
dataType: integer > 0
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
14:
|
14:
|
||||||
- 16
|
- 16
|
||||||
@@ -66,11 +130,25 @@ cfsParamsByOp:
|
|||||||
- 229
|
- 229
|
||||||
- 230
|
- 230
|
||||||
- 231
|
- 231
|
||||||
|
- 1126
|
||||||
|
- 1127
|
||||||
|
- 1128
|
||||||
15: []
|
15: []
|
||||||
|
270:
|
||||||
|
- 822
|
||||||
|
- 823
|
||||||
|
- 824
|
||||||
|
- 1129
|
||||||
|
405: []
|
||||||
|
415: []
|
||||||
|
416: []
|
||||||
stateParams:
|
stateParams:
|
||||||
domain: harbor-1
|
domain: harbor-1
|
||||||
resourceRealm: k8s-4-ext-nubes-ru
|
resourceRealm: k8s-4-ext-nubes-ru
|
||||||
resourceCPU: '100'
|
resourceCPU: '1000'
|
||||||
resourceMemory: '200'
|
resourceMemory: '1024'
|
||||||
resourceInstances: '1'
|
resourceInstances: '1'
|
||||||
s3Uid: ''
|
s3Uid: ''
|
||||||
|
pvType: s3
|
||||||
|
resourceDisk: '5'
|
||||||
|
authType: local
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ cfsParams:
|
|||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
domain:
|
domain:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: flask-raqv2ud7
|
defaultValue: flask-mfcpbrbr
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1040
|
- svcOperationCfsParamId: 1040
|
||||||
@@ -113,13 +113,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: '3.12'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '3.12'
|
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
defaultValue: https://github.com/Foxyhhd/Baldurs-Gate-test.git
|
||||||
@@ -130,6 +123,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: '3.12'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '3.12'
|
||||||
- svcOperationCfsParamId: 1041
|
- svcOperationCfsParamId: 1041
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -170,13 +170,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
version:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- '3.12'
|
|
||||||
gitPath:
|
gitPath:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -187,6 +180,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: false
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
version:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '3.12'
|
||||||
- svcOperationCfsParamId: 1044
|
- svcOperationCfsParamId: 1044
|
||||||
svcOperationCfsParam: jsonEnv
|
svcOperationCfsParam: jsonEnv
|
||||||
dataType: map
|
dataType: map
|
||||||
@@ -227,6 +227,6 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
clusterConfiguration: '{"cpu": 200, "memory": 256, "replicas": 1}'
|
||||||
accessConfiguration: '{"domain": "flask-raqv2ud7"}'
|
accessConfiguration: '{"domain": "flask-mfcpbrbr"}'
|
||||||
appConfiguration: '{"version": "3.12", "gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git", "healthPath": ""}'
|
appConfiguration: '{"gitPath": "https://github.com/Foxyhhd/Baldurs-Gate-test.git", "healthPath": "", "version": "3.12"}'
|
||||||
jsonEnv: '{}'
|
jsonEnv: '{}'
|
||||||
|
|||||||
@@ -180,16 +180,10 @@ cfsParams:
|
|||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
- '15'
|
||||||
dataType: boolean
|
|
||||||
defaultValue: 'true'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
poolerMaster:
|
poolerMaster:
|
||||||
dataType: boolean
|
dataType: boolean
|
||||||
defaultValue: 'false'
|
defaultValue: 'false'
|
||||||
@@ -206,25 +200,41 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
|
sslRequired:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: 'true'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
- svcOperationCfsParamId: 792
|
- svcOperationCfsParamId: 792
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 'off'
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '100'
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 793
|
- svcOperationCfsParamId: 793
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -234,9 +244,9 @@ cfsParams:
|
|||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
s3Uid:
|
||||||
dataType: uuid
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: 00000000-0000-0000-0000-000000000000
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
retain:
|
retain:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
@@ -248,6 +258,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: '0'
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 794
|
- svcOperationCfsParamId: 794
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -310,7 +325,7 @@ cfsParams:
|
|||||||
isModifiable: false
|
isModifiable: false
|
||||||
durationServer:
|
durationServer:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '87600'
|
defaultValue: '43800'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
certCA:
|
certCA:
|
||||||
@@ -446,20 +461,13 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
poolerSlave:
|
|
||||||
dataType: boolean
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
version:
|
version:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
|
- '18'
|
||||||
- '17'
|
- '17'
|
||||||
- '16'
|
- '16'
|
||||||
sslRequired:
|
sslRequired:
|
||||||
@@ -475,25 +483,41 @@ cfsParams:
|
|||||||
valueList:
|
valueList:
|
||||||
- 'false'
|
- 'false'
|
||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 798
|
poolerSlave:
|
||||||
svcOperationCfsParam: postgresConf
|
dataType: boolean
|
||||||
dataType: array-map-fixed
|
|
||||||
isRequired: false
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: true
|
|
||||||
dataDescriptor:
|
|
||||||
paramName:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'false'
|
||||||
- log_disconnections
|
- 'true'
|
||||||
paramValue:
|
- svcOperationCfsParamId: 798
|
||||||
|
svcOperationCfsParam: postgresConf
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: false
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
log_disconnections:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 799
|
- svcOperationCfsParamId: 799
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -502,11 +526,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
s3Uid:
|
|
||||||
dataType: uuid
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
retain:
|
retain:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -517,6 +536,16 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
s3Uid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 800
|
- svcOperationCfsParamId: 800
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -719,23 +748,31 @@ cfsParams:
|
|||||||
- 'true'
|
- 'true'
|
||||||
- svcOperationCfsParamId: 805
|
- svcOperationCfsParamId: 805
|
||||||
svcOperationCfsParam: postgresConf
|
svcOperationCfsParam: postgresConf
|
||||||
dataType: array-map-fixed
|
dataType: map-fixed
|
||||||
isRequired: false
|
isRequired: false
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
paramName:
|
log_connections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- log_connections
|
- 'off'
|
||||||
- log_disconnections
|
- 'on'
|
||||||
paramValue:
|
log_disconnections:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- 'on'
|
||||||
|
max_connections:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 806
|
- svcOperationCfsParamId: 806
|
||||||
svcOperationCfsParam: backupConfiguration
|
svcOperationCfsParam: backupConfiguration
|
||||||
@@ -759,6 +796,11 @@ cfsParams:
|
|||||||
defaultValue: 0 0 * * *
|
defaultValue: 0 0 * * *
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
incrementCount:
|
||||||
|
dataType: integer >= 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: false
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 807
|
- svcOperationCfsParamId: 807
|
||||||
svcOperationCfsParam: autoscaleConfiguration
|
svcOperationCfsParam: autoscaleConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -798,6 +840,32 @@ cfsParams:
|
|||||||
- '10'
|
- '10'
|
||||||
- '15'
|
- '15'
|
||||||
- '20'
|
- '20'
|
||||||
|
- svcOperationCfsParamId: 1106
|
||||||
|
svcOperationCfsParam: mtlsConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
type:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 'off'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'off'
|
||||||
|
- manual
|
||||||
|
- auto
|
||||||
|
durationCA:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '175200'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
durationServer:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '87600'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
19:
|
19:
|
||||||
- 788
|
- 788
|
||||||
@@ -839,6 +907,7 @@ cfsParamsByOp:
|
|||||||
- 805
|
- 805
|
||||||
- 806
|
- 806
|
||||||
- 807
|
- 807
|
||||||
|
- 1106
|
||||||
54: []
|
54: []
|
||||||
114: []
|
114: []
|
||||||
115: []
|
115: []
|
||||||
@@ -846,8 +915,8 @@ stateParams:
|
|||||||
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
postgresConfiguration: '{"version": "17", "sslRequired": true, "poolerMaster": false, "poolerSlave": false}'
|
postgresConfiguration: '{"version": "17", "poolerMaster": false, "poolerSlave": false, "sslRequired": true}'
|
||||||
postgresConf: '{"paramName": "", "paramValue": ""}'
|
postgresConf: '{"log_disconnections": "off", "log_connections": "off", "max_connections": 100}'
|
||||||
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
backupConfiguration: '{"s3Uid": "00000000-0000-0000-0000-000000000000", "retain": 7, "schedule": "0 0 * * *", "incrementCount": 0}'
|
||||||
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
autoscaleConfiguration: '{"enabled": false, "schedule": 0, "quota": 100, "percent": 10}'
|
||||||
mtlsConfiguration: '{"type": "off", "durationCA": 175200, "durationServer": 87600, "certCA": "", "certServer": ""}'
|
mtlsConfiguration: '{"type": "off", "durationCA": 175200, "durationServer": 43800, "certCA": "", "certServer": ""}'
|
||||||
|
|||||||
@@ -86,16 +86,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
slaveIpSpace:
|
|
||||||
dataType: string
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
slaveAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: '[]'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -106,6 +96,16 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveIpSpace:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
slaveAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 1064
|
- svcOperationCfsParamId: 1064
|
||||||
svcOperationCfsParam: clusterConfiguration
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -113,6 +113,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
memory:
|
memory:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -133,11 +138,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1065
|
- svcOperationCfsParamId: 1065
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -145,11 +145,6 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
slaveAccessList:
|
|
||||||
dataType: json
|
|
||||||
defaultValue: ''
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
masterIpSpace:
|
masterIpSpace:
|
||||||
dataType: string
|
dataType: string
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
@@ -165,6 +160,11 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
slaveAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
21:
|
21:
|
||||||
- 1061
|
- 1061
|
||||||
@@ -180,4 +180,4 @@ cfsParamsByOp:
|
|||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
clusterConfiguration: '{"cpu": 500, "memory": 512, "replicas": 1, "disk": 10}'
|
||||||
accessConfiguration: '{"slaveIpSpace": "", "slaveAccessList": "[]", "masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]", "slaveIpSpace": "", "slaveAccessList": "[]"}'
|
||||||
|
|||||||
@@ -3,34 +3,65 @@ service_id: 92
|
|||||||
service_display_name: MongoDB
|
service_display_name: MongoDB
|
||||||
service_short_name: mongodb
|
service_short_name: mongodb
|
||||||
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
service_man: '# Инструкция по развертыванию MongoDB через платформу<br/><br/>## 1. Общая информация<br/><br/>MongoDB — документоориентированная распределённая база данных, обеспечивающая высокую доступность,
|
||||||
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>* **suspend** —
|
горизонтальное масштабирование и гибкую модель хранения.<br/><br/>### Доступные операции с кластером<br/><br/>* **create** — создание базы<br/>* **delete** — удаление базы данных<br/>*
|
||||||
остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>*
|
**suspend** — остановка базы данных<br/>* **resume** — запуск базы данных<br/>* **modify** — изменение базы данных<br/>* **create_backup** — создание бэкапа вручную<br/>* **delete_backup** —
|
||||||
**modify_user** — модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры развертывания базы данных<br/><br/>Эти параметры необходимо указать при создании
|
удаление бэкапов<br/>* **rollback** — восстановление кластера из бэкапа<br/><br/>### Доступные операции с пользователями<br/><br/>* **create_user** — создание пользователя<br/>* **modify_user**
|
||||||
базы данных.<br/><br/>### Платформа для развертывания<br/><br/>Среда, в которой будет развернут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в
|
— модификация пользователя<br/>* **delete_user** — удаление пользователя<br/><br/>---<br/><br/>## 2. Параметры создания базы данных<br/><br/>Эти параметры необходимо указать при создании базы данных.<br/><br/>###
|
||||||
кластере MongoDB.<br/>Оптимально выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>>
|
Платформа для развертывания<br/><br/>Среда, в которой будет развёрнут кластер. Выбирается из предложенного списка.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально
|
||||||
**Примечание:** уменьшение количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>###
|
выбирать нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение
|
||||||
Квота CPU пода (mCPU)<br/><br/>CPU-квота для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример:
|
количества узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
`20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример:
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных в гигабайтах.<br/>Пример: `20`<br/><br/>### Расписание
|
||||||
`internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример:
|
резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько
|
||||||
`["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система автоматически
|
последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример: `7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>>
|
||||||
подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать нечётное
|
созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>> их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя
|
||||||
значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества узлов
|
ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых
|
||||||
после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>###
|
||||||
|
Включить TLS<br/><br/>Булевый параметр. Определяет режим работы TLS кластера.<br/><br/>- `true` — TLS включён (`tls.mode: allowTLS`). Сертификаты сохраняются в Vault.<br/>- `false` — TLS выключен (`tls.mode:
|
||||||
|
disabled`).<br/><br/>По умолчанию: `false`.<br/><br/>---<br/><br/>## 3. Параметры модификации базы данных<br/><br/>Все параметры, которые вы указываете при модификации, являются необязательными — система
|
||||||
|
автоматически подставит ранее сохранённые значения, и при необходимости вы можете изменить их на нужные.<br/><br/>### Количество узлов<br/><br/>Количество реплик в кластере MongoDB.<br/>Оптимально выбирать
|
||||||
|
нечётное значение, так как это обеспечивает корректный процесс выбора ведущего узла и сохраняет работоспособность базы данных даже при отказе одной из нод.<br/><br/>> **Примечание:** уменьшение количества
|
||||||
|
узлов после создания кластера не рекомендуется.<br/><br/>### Квота памяти пода (MB)<br/><br/>Объём памяти для одного пода в мегабайтах.<br/>Пример: `2048`<br/><br/>### Квота CPU пода (mCPU)<br/><br/>CPU-квота
|
||||||
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
для пода в миликорах (1000 mCPU = 1 vCPU).<br/>Пример: `1000`<br/><br/>### Размер диска для базы данных (GB)<br/><br/>Объём диска для хранения данных указывается в гигабайтах. Его можно увеличить при
|
||||||
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для
|
необходимости, однако уменьшить уже выделенный размер невозможно.<br/>Пример: `20`<br/><br/>### Расписание резервного копирования<br/><br/>Cron-выражение (5 полей), по которому автоматически создаются
|
||||||
доступа к master-узлу.<br/>Укажите `no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей,
|
резервные копии.<br/>Пример: `0 0 * * *` (каждый день в 00:00)<br/><br/>### Хранить последних бэкапов<br/><br/>Сколько последних успешных резервных копий хранить — более старые удаляются автоматически.<br/>Пример:
|
||||||
с которых разрешён доступ к кластеру.<br/>Если оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 3. Параметры создания пользователя<br/><br/>###
|
`7`<br/><br/>> **Примечание:** ротация применяется только к бэкапам, созданным по расписанию. Бэкапы,<br/>> созданные вручную операцией `create_backup`, в неё не входят и не удаляются автоматически —<br/>>
|
||||||
Имя пользователя<br/><br/>Указывается имя пользователя (любой регистр).<br/>Пример: `readApp`<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если база отсутствует,
|
их нужно убирать вручную через `delete_backup`.<br/><br/>### Имя ipSpace для публикации внешнего IP<br/><br/>Имя ipSpace, через который будет выделен внешний IP для доступа к master-узлу.<br/>Укажите
|
||||||
она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner** — полный
|
`no-needed`, если внешний адрес не требуется.<br/>Пример: `internet-no-antiddos-v1`<br/><br/>### Список разрешённых IP-адресов<br/><br/>Список IP-адресов или подсетей, с которых разрешён доступ к кластеру.<br/>Если
|
||||||
контроль над базой данных<br/><br/>---<br/><br/>## 4. Параметры модификации пользователя<br/><br/>### Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется
|
оставить пустым — доступ открыт для всех источников.<br/>Пример: `["10.0.0.0/24", "192.168.1.10/32"]`<br/><br/>---<br/><br/>## 4. Параметры удаления базы данных<br/><br/>### Удалить бакет S3 с бэкапами<br/><br/>Булевый
|
||||||
предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>###
|
параметр.<br/><br/>- `true` — вместе с кластером также будут удалены все резервные копии и бакет S3.<br/>- `false` — бакет S3 и хранящиеся в нём бэкапы сохраняются после удаления кластера.<br/><br/>По
|
||||||
Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/><br/>---<br/><br/>## 5. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для
|
умолчанию: `false`.<br/><br/>---<br/><br/>## 5. Параметры создания бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя резервной копии, которое будет присвоено объекту бэкапа в кластере.<br/>Должно соответствовать
|
||||||
удаления.<br/><br/>---<br/><br/>## 6. Выходные параметры<br/><br/>После успешного развертывания базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт
|
требованиям Kubernetes к именам объектов (строчные буквы, цифры, дефисы).<br/>Пример: `manual-20260904`<br/><br/>> **Примечание:** такой бэкап не участвует в автоматической ротации по параметру<br/>>
|
||||||
для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к
|
"Хранить последних бэкапов" (она применяется только к бэкапам по расписанию) и не удаляется<br/>> сам — при необходимости убрать его нужно вручную операцией `delete_backup`.<br/><br/>---<br/><br/>## 6.
|
||||||
кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>---<br/><br/>## 7. Пример подключения<br/><br/>Перед подключением необходимо установить **mongosh**.<br/><br/>Команда подключения к базе данных:<br/><br/>```<br/>mongosh
|
Параметры восстановления из бэкапа<br/><br/>### Имя бэкапа<br/><br/>Имя существующей резервной копии кластера, из которой будет выполнено восстановление. Указывается один из бэкапов в состоянии `ready`
|
||||||
"mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>"<br/>```<br/><br/>Где:<br/><br/>* `<username>` — имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect или
|
(созданных автоматически по расписанию или вручную через операцию create_backup).<br/><br/>---<br/><br/>## 7. Параметры удаления бэкапов<br/><br/>### Имена бэкапов<br/><br/>Список имён резервных копий
|
||||||
externalConnect<br/>* `<dbName>` — имя базы данных<br/><br/>## 8. Дополнительная информация<br/><br/>Сейчас соединение с базой работает без шифрования, и доступ к кластеру осуществляется только по логину
|
для удаления.<br/>Пример: `["manual-20260904", "cron-mongok8s-...-20260903020000"]`<br/><br/>---<br/><br/>## 8. Параметры создания пользователя<br/><br/>### Имя пользователя<br/><br/>Указывается имя пользователя
|
||||||
и паролю.'
|
(любой регистр).<br/>Пример: `readApp`<br/><br/>> **Примечание:** имя пользователя должно быть уникальным в рамках кластера. Если пользователь<br/>> с таким именем уже существует, операция завершится
|
||||||
|
ошибкой — используйте `modify_user` для<br/>> изменения прав или `delete_user` + `create_user` для пересоздания.<br/><br/>### Имя базы данных<br/><br/>Название базы, в которой будет создан пользователь.<br/>Если
|
||||||
|
база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read** — доступ только на чтение<br/>* **readWrite** — чтение и изменение данных<br/>* **dbOwner**
|
||||||
|
— полный контроль над базой данных<br/>* **dbAdmin** — администрирование базы данных (индексы, статистика, схема) без доступа к чтению/записи данных<br/><br/>---<br/><br/>## 9. Параметры модификации пользователя<br/><br/>###
|
||||||
|
Имя пользователя<br/><br/>Необходимо выбрать существующего пользователя.<br/>Если список пуст, требуется предварительно создать пользователя.<br/><br/>### Имя базы данных<br/><br/>База данных, к которой
|
||||||
|
относится пользователь.<br/>Если база отсутствует, она будет создана автоматически.<br/>Пример: `Apps_9392`<br/><br/>### Имя роли<br/><br/>* **read**<br/>* **readWrite**<br/>* **dbOwner**<br/>* **dbAdmin**<br/><br/>---<br/><br/>##
|
||||||
|
10. Параметры удаления пользователя<br/><br/>### Имя пользователя<br/><br/>Выберите пользователя из списка для удаления.<br/><br/>---<br/><br/>## 11. Выходные параметры<br/><br/>После успешного развертывания
|
||||||
|
базы данных платформа возвращает ключевые параметры.<br/><br/>### internalConnect<br/><br/>Внутренний эндпоинт для подключения к кластеру из сервисов, работающих в той же сети.<br/>Используется для внутренних
|
||||||
|
интеграций и системных сервисов.<br/><br/>### externalConnect<br/><br/>Внешний FQDN для подключения к кластеру извне.<br/>Порт подключения — **27017**.<br/><br/>> **Важно:** оба эндпоинта — это Kubernetes
|
||||||
|
Service на весь replset, а не адрес конкретно<br/>> primary-узла. Kubernetes не отслеживает, кто из узлов сейчас primary, поэтому новое<br/>> подключение без параметра `replicaSet` может попасть на secondary
|
||||||
|
и упасть с ошибкой записи<br/>> `not writable primary`. Обязательно указывайте `replicaSet=rs0` в строке подключения (см.<br/>> примеры ниже) — тогда драйвер сам обнаружит топологию кластера и всегда
|
||||||
|
направит запись на<br/>> актуальный primary, независимо от количества реплик и от того, происходили ли выборы.<br/><br/>---<br/><br/>## 12. Пример подключения<br/><br/>Перед подключением необходимо установить
|
||||||
|
**mongosh**.<br/><br/>### 12.1 Подключение без TLS<br/><br/>Для внутреннего подключения из той же сети:<br/><br/>```<br/>mongosh "mongodb://<username>:<password>@<endpoint_db>:27017/<dbName>?authSource=admin&replicaSet=rs0"<br/>```<br/><br/>###
|
||||||
|
12.2 Подключение через внешний endpoint с TLS<br/><br/>Кластер требует клиентский TLS-сертификат (mutual TLS). Сертификаты сохраняются в Vault при создании кластера в блоке `cer` в полях `ca`, `cer`,
|
||||||
|
`key` в кодировке base64.<br/><br/>Подготовка файлов:<br/><br/>```bash<br/># Декодировать сертификаты из Vault<br/>echo "<ca из блока Учётные данные>" | base64 -d > ca.crt<br/>echo "<cer из из блока Учётные
|
||||||
|
данные" | base64 -d > tls.crt<br/>echo "<key из из блока Учётные данные>" | base64 -d > tls.key<br/><br/># Собрать клиентский PEM<br/>cat tls.key tls.crt > client.pem<br/>```<br/><br/>Подключение:<br/><br/>```<br/>mongosh
|
||||||
|
"mongodb://<username>:<password>@<external_endpoint_db>:27017/<dbName>?tls=true&tlsCAFile=ca.crt&tlsCertificateKeyFile=client.pem&authSource=admin&replicaSet=rs0"<br/>```<br/><br/>Где:<br/><br/>* `<username>`
|
||||||
|
— имя пользователя<br/>* `<password>` — пароль<br/>* `<endpoint_db>` — internalConnect (для подключения без TLS)<br/>* `<external_endpoint_db>` — externalConnect (для внешнего подключения с TLS)<br/>*
|
||||||
|
`<dbName>` — имя базы данных<br/><br/>## 13. Дополнительная информация<br/><br/>Режим TLS задаётся параметром `mongoConfiguration.tls` только при создании кластера.<br/>После создания изменение TLS через
|
||||||
|
модификацию не поддерживается.<br/><br/>- При `true` кластер разворачивается с включённым TLS (`tls.mode: allowTLS`). Сервер принимает как обычные, так и TLS-соединения.<br/>- При `false` TLS выключен
|
||||||
|
(`tls.mode: disabled`).<br/><br/>Для внешнего подключения (`externalConnect`) используется сертификат, выпущенный через cert-manager, с SAN, покрывающим внешний DNS-адрес кластера — поэтому `tlsAllowInvalidHostnames`
|
||||||
|
не требуется, хост проверяется как обычно.<br/><br/>Внутренние подключения TLS-сертификат не используют вообще: режим `allowTLS` допускает как TLS, так и обычные соединения, но для внутреннего трафика
|
||||||
|
применяется обычное (не TLS) подключение — см. пример 12.1.<br/><br/>### Почему обязателен `replicaSet=rs0` в строке подключения<br/><br/>Percona-оператор не проставляет на поды никакого динамического
|
||||||
|
лейбла роли (primary/secondary) —<br/>у всех подов replset''а полностью одинаковые лейблы, различается только имя/индекс пода.<br/>`master`-сервис — это обычный Kubernetes Service с фиксированным селектором
|
||||||
|
на весь replset, он<br/>не знает и не может знать, какой под сейчас primary: k8s просто раздаёт новые TCP-подключения<br/>по кругу между всеми узлами. Без `replicaSet=rs0` в URI подключение может закрепиться
|
||||||
|
на<br/>secondary, и любая попытка записи будет падать с `not writable primary` — независимо от того,<br/>происходили выборы недавно или нет. Указание `replicaSet=rs0` включает у драйвера обнаружение<br/>топологии
|
||||||
|
реплики, и он сам направляет запись на актуальный primary при любом количестве узлов<br/>и после любых переизбраний.<br/>'
|
||||||
lifecycle:
|
lifecycle:
|
||||||
suspendOnDestroyDefault: true
|
suspendOnDestroyDefault: true
|
||||||
adoptExistingOnCreateDefault: false
|
adoptExistingOnCreateDefault: false
|
||||||
@@ -39,6 +70,10 @@ operations:
|
|||||||
operation: create
|
operation: create
|
||||||
kind: instance
|
kind: instance
|
||||||
action: create
|
action: create
|
||||||
|
- svcOperationId: 411
|
||||||
|
operation: create_backup
|
||||||
|
kind: subresource
|
||||||
|
action: create
|
||||||
- svcOperationId: 198
|
- svcOperationId: 198
|
||||||
operation: create_user
|
operation: create_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -47,6 +82,10 @@ operations:
|
|||||||
operation: delete
|
operation: delete
|
||||||
kind: instance
|
kind: instance
|
||||||
action: delete
|
action: delete
|
||||||
|
- svcOperationId: 414
|
||||||
|
operation: delete_backup
|
||||||
|
kind: subresource
|
||||||
|
action: delete
|
||||||
- svcOperationId: 199
|
- svcOperationId: 199
|
||||||
operation: delete_user
|
operation: delete_user
|
||||||
kind: subresource
|
kind: subresource
|
||||||
@@ -67,11 +106,16 @@ operations:
|
|||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
action: resume
|
action: resume
|
||||||
|
- svcOperationId: 413
|
||||||
|
operation: rollback
|
||||||
|
kind: action
|
||||||
|
action: rollback
|
||||||
- svcOperationId: 194
|
- svcOperationId: 194
|
||||||
operation: suspend
|
operation: suspend
|
||||||
kind: instance
|
kind: instance
|
||||||
action: suspend
|
action: suspend
|
||||||
stateOut:
|
stateOut:
|
||||||
|
backups: {}
|
||||||
users: {}
|
users: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 1089
|
- svcOperationCfsParamId: 1089
|
||||||
@@ -95,6 +139,16 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
dataDescriptor:
|
dataDescriptor:
|
||||||
|
cpu:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1000'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1024'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
replicas:
|
replicas:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
defaultValue: '1'
|
defaultValue: '1'
|
||||||
@@ -110,16 +164,6 @@ cfsParams:
|
|||||||
defaultValue: '5'
|
defaultValue: '5'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
cpu:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1000'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
memory:
|
|
||||||
dataType: integer > 0
|
|
||||||
defaultValue: '1024'
|
|
||||||
isRequired: true
|
|
||||||
isModifiable: false
|
|
||||||
- svcOperationCfsParamId: 1091
|
- svcOperationCfsParamId: 1091
|
||||||
svcOperationCfsParam: accessConfiguration
|
svcOperationCfsParam: accessConfiguration
|
||||||
dataType: map-fixed
|
dataType: map-fixed
|
||||||
@@ -137,6 +181,49 @@ cfsParams:
|
|||||||
defaultValue: '[]'
|
defaultValue: '[]'
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1102
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
s3Uid:
|
||||||
|
dataType: uuid
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '7'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: 0 0 * * *
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1116
|
||||||
|
svcOperationCfsParam: mongoConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
|
dataDescriptor:
|
||||||
|
tls:
|
||||||
|
dataType: boolean
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- 'true'
|
||||||
|
- 'false'
|
||||||
|
- svcOperationCfsParamId: 1109
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 635
|
- svcOperationCfsParamId: 635
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -156,12 +243,28 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1103
|
||||||
|
svcOperationCfsParam: deleteS3Bucket
|
||||||
|
dataType: boolean
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: 'true'
|
||||||
|
isModifiable: true
|
||||||
|
valueList:
|
||||||
|
- 'false'
|
||||||
|
- 'true'
|
||||||
|
- svcOperationCfsParamId: 1111
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: array
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 644
|
- svcOperationCfsParamId: 644
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: array
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
@@ -214,6 +317,23 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isRequired: true
|
isRequired: true
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1104
|
||||||
|
svcOperationCfsParam: backupConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
retain:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
schedule:
|
||||||
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
- svcOperationCfsParamId: 640
|
- svcOperationCfsParamId: 640
|
||||||
svcOperationCfsParam: username
|
svcOperationCfsParam: username
|
||||||
dataType: string
|
dataType: string
|
||||||
@@ -233,32 +353,51 @@ cfsParams:
|
|||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
valueList:
|
||||||
- dbOwner
|
|
||||||
- read
|
- read
|
||||||
- readWrite
|
- readWrite
|
||||||
|
- dbAdmin
|
||||||
|
- dbOwner
|
||||||
|
- svcOperationCfsParamId: 1108
|
||||||
|
svcOperationCfsParam: backupName
|
||||||
|
dataType: string
|
||||||
|
isRequired: true
|
||||||
|
defaultValue: ''
|
||||||
|
isModifiable: true
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
37:
|
37:
|
||||||
- 1089
|
- 1089
|
||||||
- 1090
|
- 1090
|
||||||
- 1091
|
- 1091
|
||||||
|
- 1102
|
||||||
|
- 1116
|
||||||
|
411:
|
||||||
|
- 1109
|
||||||
198:
|
198:
|
||||||
- 635
|
- 635
|
||||||
- 636
|
- 636
|
||||||
- 643
|
- 643
|
||||||
190: []
|
190:
|
||||||
|
- 1103
|
||||||
|
414:
|
||||||
|
- 1111
|
||||||
199:
|
199:
|
||||||
- 644
|
- 644
|
||||||
201:
|
201:
|
||||||
- 1092
|
- 1092
|
||||||
- 1093
|
- 1093
|
||||||
|
- 1104
|
||||||
200:
|
200:
|
||||||
- 640
|
- 640
|
||||||
- 641
|
- 641
|
||||||
- 642
|
- 642
|
||||||
409: []
|
409: []
|
||||||
196: []
|
196: []
|
||||||
|
413:
|
||||||
|
- 1108
|
||||||
194: []
|
194: []
|
||||||
stateParams:
|
stateParams:
|
||||||
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
clusterConfiguration: '{"replicas": 1, "disk": 5, "cpu": 1000, "memory": 1024}'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
|
backupConfiguration: '{"s3Uid": "", "retain": 7, "schedule": "0 0 * * *"}'
|
||||||
|
mongoConfiguration: '{"tls": false}'
|
||||||
|
|||||||
@@ -49,6 +49,10 @@ operations:
|
|||||||
operation: modify
|
operation: modify
|
||||||
kind: instance
|
kind: instance
|
||||||
action: modify
|
action: modify
|
||||||
|
- svcOperationId: 410
|
||||||
|
operation: reconcile
|
||||||
|
kind: action
|
||||||
|
action: reconcile
|
||||||
- svcOperationId: 117
|
- svcOperationId: 117
|
||||||
operation: resume
|
operation: resume
|
||||||
kind: instance
|
kind: instance
|
||||||
@@ -59,116 +63,158 @@ operations:
|
|||||||
action: suspend
|
action: suspend
|
||||||
stateOut: {}
|
stateOut: {}
|
||||||
cfsParams:
|
cfsParams:
|
||||||
- svcOperationCfsParamId: 116
|
- svcOperationCfsParamId: 1097
|
||||||
svcOperationCfsParam: resourceCPU
|
svcOperationCfsParam: startupConfiguration
|
||||||
dataType: integer > 0
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: '1000'
|
defaultValue: ''
|
||||||
isModifiable: true
|
|
||||||
- svcOperationCfsParamId: 117
|
|
||||||
svcOperationCfsParam: resourceMemory
|
|
||||||
dataType: integer > 0
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: '1124'
|
|
||||||
isModifiable: true
|
|
||||||
- svcOperationCfsParamId: 118
|
|
||||||
svcOperationCfsParam: resourceDisk
|
|
||||||
dataType: integer > 0
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: '30'
|
|
||||||
isModifiable: true
|
|
||||||
- svcOperationCfsParamId: 119
|
|
||||||
svcOperationCfsParam: resourceRealm
|
|
||||||
dataType: string
|
|
||||||
isRequired: true
|
|
||||||
defaultValue: k8s-4-ext-nubes-ru
|
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
valueList:
|
dataDescriptor:
|
||||||
- k8s-4-ext-nubes-ru
|
resourceRealm:
|
||||||
- svcOperationCfsParamId: 224
|
dataType: string
|
||||||
svcOperationCfsParam: resourceInstances
|
defaultValue: k8s-4-ext-nubes-ru
|
||||||
dataType: integer > 0
|
isRequired: true
|
||||||
isRequired: true
|
isModifiable: false
|
||||||
defaultValue: '1'
|
valueList:
|
||||||
isModifiable: true
|
- k8s-4-ext-nubes-ru
|
||||||
- svcOperationCfsParamId: 225
|
- svcOperationCfsParamId: 1098
|
||||||
svcOperationCfsParam: needExternalAddressMaster
|
svcOperationCfsParam: clusterConfiguration
|
||||||
dataType: boolean
|
dataType: map-fixed
|
||||||
isRequired: true
|
|
||||||
defaultValue: 'false'
|
|
||||||
isModifiable: true
|
|
||||||
valueList:
|
|
||||||
- 'false'
|
|
||||||
- 'true'
|
|
||||||
- svcOperationCfsParamId: 543
|
|
||||||
svcOperationCfsParam: ipSpaceNameMaster
|
|
||||||
dataType: string
|
|
||||||
isRequired: false
|
|
||||||
defaultValue: ''
|
|
||||||
isModifiable: true
|
|
||||||
- svcOperationCfsParamId: 304
|
|
||||||
svcOperationCfsParam: resourceCPU
|
|
||||||
dataType: integer > 0
|
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 305
|
dataDescriptor:
|
||||||
svcOperationCfsParam: resourceMemory
|
cpu:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
|
defaultValue: '1000'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1024'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '1'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: '5'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1099
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 306
|
dataDescriptor:
|
||||||
svcOperationCfsParam: resourceDisk
|
masterIpSpace:
|
||||||
dataType: integer > 0
|
dataType: string
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: '[]'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1113
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 307
|
dataDescriptor:
|
||||||
svcOperationCfsParam: resourceInstances
|
maxMessageSize:
|
||||||
dataType: integer > 0
|
dataType: integer > 0
|
||||||
|
defaultValue: '4'
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1100
|
||||||
|
svcOperationCfsParam: clusterConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
- svcOperationCfsParamId: 308
|
dataDescriptor:
|
||||||
svcOperationCfsParam: needExternalAddressMaster
|
cpu:
|
||||||
dataType: boolean
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
memory:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
replicas:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
valueList:
|
||||||
|
- '1'
|
||||||
|
- '3'
|
||||||
|
- '5'
|
||||||
|
- '7'
|
||||||
|
disk:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1101
|
||||||
|
svcOperationCfsParam: accessConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
isRequired: true
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
valueList:
|
dataDescriptor:
|
||||||
- 'false'
|
masterIpSpace:
|
||||||
- 'true'
|
dataType: string
|
||||||
- svcOperationCfsParamId: 545
|
defaultValue: ''
|
||||||
svcOperationCfsParam: ipSpaceNameMaster
|
isRequired: true
|
||||||
dataType: string
|
isModifiable: false
|
||||||
isRequired: false
|
masterAccessList:
|
||||||
|
dataType: json
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
|
- svcOperationCfsParamId: 1114
|
||||||
|
svcOperationCfsParam: mqConfiguration
|
||||||
|
dataType: map-fixed
|
||||||
|
isRequired: true
|
||||||
defaultValue: ''
|
defaultValue: ''
|
||||||
isModifiable: true
|
isModifiable: true
|
||||||
|
dataDescriptor:
|
||||||
|
maxMessageSize:
|
||||||
|
dataType: integer > 0
|
||||||
|
defaultValue: ''
|
||||||
|
isRequired: true
|
||||||
|
isModifiable: false
|
||||||
cfsParamsByOp:
|
cfsParamsByOp:
|
||||||
38:
|
38:
|
||||||
- 116
|
- 1097
|
||||||
- 117
|
- 1098
|
||||||
- 118
|
- 1099
|
||||||
- 119
|
- 1113
|
||||||
- 224
|
|
||||||
- 225
|
|
||||||
- 543
|
|
||||||
39: []
|
39: []
|
||||||
106:
|
106:
|
||||||
- 304
|
- 1100
|
||||||
- 305
|
- 1101
|
||||||
- 306
|
- 1114
|
||||||
- 307
|
410: []
|
||||||
- 308
|
|
||||||
- 545
|
|
||||||
117: []
|
117: []
|
||||||
116: []
|
116: []
|
||||||
stateParams:
|
stateParams:
|
||||||
resourceCPU: '1000'
|
startupConfiguration: '{"resourceRealm": "k8s-4-ext-nubes-ru"}'
|
||||||
resourceMemory: '1124'
|
clusterConfiguration: '{"cpu": 1000, "memory": 1024, "replicas": 1, "disk": 5}'
|
||||||
resourceDisk: '30'
|
accessConfiguration: '{"masterIpSpace": "", "masterAccessList": "[]"}'
|
||||||
resourceRealm: k8s-4-ext-nubes-ru
|
mqConfiguration: '{"maxMessageSize": 4}'
|
||||||
resourceInstances: '1'
|
|
||||||
needExternalAddressMaster: 'false'
|
|
||||||
ipSpaceNameMaster: ''
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user