# Справка по параметрам конфигурации

<!--

Внимание! Данный файл сгенерирован автоматически из модели конфигурационного ресурса в `resource_library/` и шаблонов `lib/doc_templates`.

Менять тут что-либо бесмысслено - оно будет перезаписано во время ближайшего релиза gs-ctk.

Если вы хотите что-то тут изменить - найдите источник в указанных выше папках и правьте там.

-->

## Параметры группы ресурсов

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя группы ресурсов

#### namespace

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Название пространства имен, в котором необходимо развернуть группу.

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли группа ресурсов. Если указать `false`, ресурсы группы будут свернуты.

#### appkit

- **Опциональный**

- **Допустимые типы:**
  - [AppkitData](#appkitdata)

Комплект приложения. Подробнее о комплекте приложений читайте [здесь](./050_appkit.md).

#### groupkit

- **Опциональный**

- **Допустимые типы:**
  - Строковый
  - [GroupKitData](#groupkitdata)

Комплект группы. Подробнее о комплекте группы читайте [здесь](./050_appkit.md).

**Примеры:**

- ```yaml
  groupkits/v1
  ```

#### timezone

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  Europe/Moscow
  ```

Часовой пояс.

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### drain_cluster_before_db_upgrade

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Определяет, требует ли обновление БД осушения кластера.

#### database_url

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Путь к базе данных в формате JDBC.

**Примеры:**

- ```yaml
  jdbc:postgresql://host:5432/database
  ```

#### database_write_pool_parameters

- **Опциональный**

- **Допустимые типы:**

- **Значение по умолчанию:**

  ```yaml
  accept_tx_session: true
  accept_no_tx_session: true
  ```

Параметры основного пула соединений сервера приложений к СУБД. Читайте подробнее [здесь](https://help.globalerp.ru/books/gs-docs-sphinx/master/reference/configuration/global3_config_xsd/configuration/databases/database/extraconnectionpools/Pool.html).

#### database_readonly_replica_url

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Путь к читающей реплике базы данных в формате JDBC.

**Примеры:**

- ```yaml
  jdbc:postgresql://ro-replica:5432/database
  ```

#### database_read_only_pool_parameters

- **Опциональный**

- **Допустимые типы:**

- **Значение по умолчанию:**

  ```yaml
  accept_tx_session: false
  accept_no_tx_session: true
  ```

Параметры читающего пула соединений сервера приложений к СУБД. Читайте подробнее [здесь](https://help.globalerp.ru/books/gs-docs-sphinx/master/reference/configuration/global3_config_xsd/configuration/databases/database/extraconnectionpools/Pool.html).

#### database_extra_pools

- **Опциональный**

- **Допустимые типы:**

Дополнительные пулы соединений сервера приложений к СУБД. Читайте подробнее [здесь](https://help.globalerp.ru/books/gs-docs-sphinx/master/reference/configuration/global3_config_xsd/configuration/databases/database/ExtraConnectionPools.html).

**Примеры:**

- ```yaml
  first:
    minPoolSize: 1
    max_pool_size: 700
    acceptTxSession: true
    accept_no_tx_session: false
  second:
    enabled: false
    accept_primary: true
    acceptSecondary: true
    acceptTxSession: false
    accept_no_tx_session: true
  ```

#### database_special_pools

- **Опциональный**

- **Допустимые типы:**

Специальные пулы соединений сервера приложений к СУБД. Читайте подробнее [здесь](https://help.globalerp.ru/books/gs-docs-sphinx/master/reference/configuration/global3_config_xsd/configuration/databases/database/SpecialConnectionPools.html).

**Примеры:**

- ```yaml
  first:
    minPoolSize: 1
    max_pool_size: 700
    acceptTxSession: true
    accept_no_tx_session: false
  second:
    enabled: false
    accept_primary: true
    acceptSecondary: true
    acceptTxSession: false
    accept_no_tx_session: true
  ```

#### database_alias

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя БД в Global ERP. Отображается на странице входа.

**Примеры:**

- ```yaml
  DEMOERP
  ```

#### database_secret

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Cекрет с логином и паролем к БД.

#### upgrade_job

- **Опциональный**

- **Допустимые типы:**
  - [UpgradeJobSpec](#upgradejobspec)

- **Значение по умолчанию:**

  ```yaml
  type:
  name:
  enabled: false
  debug_mode:
  node_selector:
  hooks:
  java_xmx: 3500M
  victoriametrics_endpoint:
  loki_endpoint:
  tempo_endpoint:
  send_metrics_to_external_system:
  external_loki_endpoint:
  resources:
    requests:
      memory: 4G
      cpu: '2'
    limits:
      memory: 4G
      cpu: '2'
  agent_resources:
    requests:
      memory: 500M
      cpu: '1'
    limits:
      memory: 1G
      cpu: '1'
  admin_secret:
  admin_secret_type:
  ```

Настройки [Kubernetes Job обновления БД](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_upgrade.html#id3).

#### hot_reload

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Разрешены ли [горячие](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_upgrade.html#id3) обновления.

#### hot_reload_grace_period

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  900
  ```

Время в секундах, предоставленное пользователям с устаревшим прикладным решением на переподключение. Значение меньше 120 (например, -1) позволяет находиться таким пользователям не ограниченное время.

**Примеры:**

- ```yaml
  -1
  ```

- ```yaml
  3600
  ```

#### database_schema_version

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Версия схемы БД. При изменении целевой версии схемы базы данных - автоматически будет запущено обновление БД. Информация о текущей версии хранится в конфигурационном ресурсе, в поле `status`.

#### search_domains

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Поисковые домены DNS

**Примеры:**

- ```yaml
  - mycompany.ru
  ```

- ```yaml
  - universe-1.ru
  - universe-a.ru
  ```

#### gossiprouters

- **Опциональный**

- **Допустимые типы:**
  - [GossipRouterData](#gossiprouterdata)

Cписок хостов/портов [gossiprouter](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/100_jgroups.html)

**Примеры:**

- ```yaml
  - host: gr.mycompany.ru
    port: 1100
  ```

- ```yaml
  - host: 10.0.1.2
    port: 1200
  - host: 10.0.2.2
    port: 1200
  ```

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя единого (для всех контейнеров по умолчанию) секрета администратора

#### admin_secret_type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Тип единого (для всех контейнеров по умолчанию) секрета администратора

**Примеры:**

- ```yaml
  kubernetes.io/basic-auth
  ```

#### victoriametrics_secret

- **Опциональный**

- **Другие названия:**
  - prometheus_secret

- **Допустимые типы:**
  - Строковый

Имя секрета basic-auth для настройки обязательной авторизации в Prometheus. Пустое поле означает отсутствие авторизации.

#### prometheus_secret

То же самое, что и `victoriametrics_secret`.

#### java_version

- **Опциональный**

- **Допустимые типы:**
  - Один из: `'8'`, `'21'`

- **Значение по умолчанию:**

  ```yaml
  '21'
  ```

Версия Java

#### appvol

- **Обязательный**

- **Допустимые типы:**
  - [NFSVolume](#nfsvolume)
  - [PVCVolume](#pvcvolume)

Прикладное хранилище для пользовательских файлов

**Примеры:**

- ```yaml
  type: nfs
  server: nfs.mycompany.ru
  path: /export
  ```

#### extra_vols

- **Опциональный**

- **Допустимые типы:**
  - [ExtraVolume](#extravolume)

Дополнительные точки монтирования

**Примеры:**

- ```yaml
  name: mp1
  path: extras/mp1
  volume:
    type: nfs
    server: mfs.mycompany.ru
    path: /export2
  ```

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### rabbitmq

- **Опциональный**

- **Допустимые типы:**
  - Булевый
  - [RabbitMQSettingsData](#rabbitmqsettingsdata)

Настройки RabbitMQ. По умолчанию - берутся из настроек книги ресурсов rabbitmq, если такой нет - RabbitMQ отключен. Поставьте `rabbitmq: false`, чтобы выключить. Используйте этот параметр, чтобы настроить внешний RabbitMQ.

**Примеры:**

- ```yaml
  false
  ```

- ```yaml
  enabled: true
  host: rabbitmq.mycompany.com
  port: 5672
  vhost: globalerp
  secret: rabbitmq-secret
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи.

**Примеры:**

- ```yaml
  external.loki.domain:3100
  ```

#### external_tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

OTLPGRPC-эндпоинт внешнего инстанса Tempo, в который будут отправляться трейсы пользовательских операций.

**Примеры:**

- ```yaml
  external.tempo.domain:4317
  ```

#### external_prometheus_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Prometheus (либо VictoriaMetrics), в который будут отправляться метрики.

**Примеры:**

- ```yaml
  external.prometheus.domain:9090
  ```

#### external_prometheus_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Секрет от внешнего Prometheus

#### project_name

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Название контура для фильтрации во внешней Grafana (по умолчанию - название пространства имен).

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes.

## Параметры книг ресурсов

### global_scheduler

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `global_scheduler`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  800M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 4G
    cpu: '2'
  limits:
    memory: 4G
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с приложением.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### scheduler_token_secret

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Секрет с токеном шедулера

### global_server_excl

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `global_server_excl`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  3500M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 4G
    cpu: '2'
  limits:
    memory: 4G
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с приложением.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя секрета администратора Global ERP

#### admin_secret_type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Тип секрета администратора Global ERP

**Примеры:**

- ```yaml
  kubernetes.io/basic-auth
  ```

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)

Cпособ публикации книги ресурсов. Книга ресурсов `global_server_excl` поддерживает публикацию только через IP.

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

### global_server_share

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `global_server_share`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  3500M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 4G
    cpu: '2'
  limits:
    memory: 4G
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с приложением.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя секрета администратора Global ERP

#### admin_secret_type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Тип секрета администратора Global ERP

**Примеры:**

- ```yaml
  kubernetes.io/basic-auth
  ```

#### replicas

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  2
  ```

Количество реплик.

#### grace_period_duration

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

Период ожидания выхода пользователя при удалении пода.

### debugger

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `debugger`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  3500M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 4G
    cpu: '2'
  limits:
    memory: 4G
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с приложением.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя секрета администратора Global ERP

#### admin_secret_type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Тип секрета администратора Global ERP

**Примеры:**

- ```yaml
  kubernetes.io/basic-auth
  ```

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### debugger_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 2G
    cpu: '2'
  limits:
    memory: 12G
    cpu: '4'
  ```

Запросы и лимиты ресурсов контейнера с отладчиком.

#### available_until

- **Обязательный**

- **Допустимые типы:**
  - Целочисленный

Точка во времени в виде эпохи Unix, до которой отладчик должен оставаться доступен.

### gossiprouter

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `gossiprouter`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  800M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 1G
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с роутером сообщений.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### gossip_router_port

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  12001
  ```

Порт GossipRouter

### grafana

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `grafana`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 2Gi
    cpu: '1'
  limits:
    memory: 4Gi
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера

#### storage_class

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Класс хранилища для постоянного тома Grafana

#### storage_size

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  1Gi
  ```

Запрашиваемое пространство

#### cadvisor_service_account

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Устаревший параметр

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя секрета администратора

#### prometheus_stack_service

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  prometheus-k8s.monitoring.svc.cluster.local
  ```

Адрес сервиса kube-prometheus-stack.

#### prometheus_stack_scrape_interval

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  '30'
  ```

Интервал запроса метрик из kube-prometheus-stack.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### external_tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

OTLPGRPC-эндпоинт внешнего инстанса Tempo, в который будут отправляться трейсы пользовательских операций. По умолчанию указывается эндпоинт для группы ресурсов.

#### external_prometheus_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Prometheus (либо VictoriaMetrics), в который будут отправляться метрики. По умолчанию указывается эндпоинт для группы ресурсов.

### haproxy

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `haproxy`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1Gi
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с балансировщиком.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### statistics_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Секрет для сбора статистики.

#### haproxy_tls_secret

- **Опциональный**

- **Другие названия:**
  - tls_secret

- **Допустимые типы:**
  - Строковый

Секрет для ключа и сертификата TLS

#### tls_secret

То же самое, что и `haproxy_tls_secret`.

#### replicas

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  1
  ```

Количество реплики при работе через Ingress

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

### jgroups_dns

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `jgroups_dns`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

### rabbitmq

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `rabbitmq`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 2Gi
    cpu: '1'
  limits:
    memory: 4Gi
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера.

#### apmq_secret

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Секрет для соединения между RabbitMQ и GlobalERP

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Секрет администратора

#### vhost

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  globalrabbitmq
  ```

Название виртуального хоста

#### admin_port

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  15672
  ```

Порт консоли администратора

### img2doc

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `img2doc`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 1G
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера.

#### port

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  7000
  ```

Порт `img2doc`.

#### replicas

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  1
  ```

Количество реплик `img2doc`.

### queuewalker

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `queuewalker`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 512M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера.

#### replicas

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  1
  ```

Количество реплик обходчика очередей

#### token_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Токен для обходчика очередей (при пустом значении подставляется токен планировщика задач)

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### code_worker

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  default
  ```

Код обходчика очередей, по которому отправляются запросы к БД

#### reader_timeout_ms

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  1000
  ```

Частота опроса БД (в миллисекундах) для получения новых очередей

#### request_timeout_ms

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  10000
  ```

Таймаут запроса (в миллисекундах)

#### sender_threads_worker

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  10
  ```

Количество потоков, отправляющих задачи на сервер

#### exec_user

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  admin
  ```

Пользователь, от имени которого выполняются JEXL-скрипты

#### queue_max_attempts

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  5
  ```

Количество неуспешных попыток выполнить очередь (по истечении которых очередь будет остановлена)

#### url_path

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  app/sys/rest/ss/pkg/Btk_JexlGatePkg/execute
  ```

Путь в URL, на который отправляются задачи

#### queuewalker_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  512m
  ```

Максимальный размер кучи для обходчика очередей

#### log_level

- **Опциональный**

- **Допустимые типы:**
  - Один из: `DEBUG`, `INFO`, `WARN`, `ERROR`, `ALL`

- **Значение по умолчанию:**

  ```yaml
  INFO
  ```

Уровень подробности логов

#### globalserver_host

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хост глобал-сервера (`https://globalerp.mycompany.ru`), по умолчанию будет подставлен внутренний сервис кубернетес

### ctk-restapi

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `ctk-restapi`

Тип книги ресурсов.

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя книги ресурсов

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включена ли книга ресурсов. Если указать `false`, ресурсы книги будут свернуты.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Включить debug

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### service

- **Опциональный**

- **Допустимые типы:**
  - [IPServiceDescData](#ipservicedescdata)
  - [IngressServiceDescData](#ingressservicedescdata)

Cпособ публикации книги ресурсов

**Примеры:**

- ```yaml
  type: ip
  external_ip: 10.20.0.5
  ```

- ```yaml
  type: ingress
  ingress_class: nginx
  host: globalerp.mycompany.ru
  annotations: {}
  ingress_tls_secret: ''
  ```

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 256Mi
    cpu: 500m
  limits:
    memory: 512Mi
    cpu: 1000m
  ```

Запросы и лимиты ресурсов контейнера

#### replicas

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  1
  ```

Количество реплик

#### port

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  8000
  ```

Порт сервиса API

#### jwt_algorithm

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  HS256
  ```

Алгоритм JWT

#### access_token_expire_minutes

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  15
  ```

Время истечения токена (минут)

#### login_rate_limit_requests

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  5
  ```

Лимит запросов входа

#### rate_limit_requests_per_minute

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  10
  ```

Лимит запросов в минуту

#### log_level

- **Опциональный**

- **Допустимые типы:**
  - Один из: `DEBUG`, `INFO`, `WARNING`, `ERROR`, `CRITICAL`

- **Значение по умолчанию:**

  ```yaml
  INFO
  ```

Уровень логирования

#### audit_enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Включить аудит

#### max_reason_length

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  500
  ```

Максимальная длина причины

#### cors_origins

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  - '*'
  ```

CORS источники

#### cors_allow_credentials

- **Опциональный**

- **Допустимые типы:**
  - Булевый

CORS учетные данные

#### cors_allow_methods

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  - GET
  - POST
  ```

CORS методы

#### cors_allow_headers

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  - Content-Type
  - Authorization
  ```

CORS заголовки

#### kubernetes_services

- **Опциональный**

- **Допустимые типы:**
  - [KubernetesServiceData](#kubernetesservicedata)

Kubernetes сервисы

#### users

- **Опциональный**

- **Допустимые типы:**
  - [UserData](#userdata)

Пользователи

#### env

- **Опциональный**

- **Допустимые типы:**
  - Один из: `production`, `development`, `test`

- **Значение по умолчанию:**

  ```yaml
  production
  ```

Окружение приложения

#### secret_name

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  ctk-restapi-secret
  ```

Имя секрета

## Вспомогательные структуры

### AppkitData

#### applib_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма образа прикладного решения по алгоритму SHA-1. Устарел.

#### appsrc_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма исходного кода прикладного решения по алгоритму SHA-1. Устарел.

#### applib_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма образа прикладного решения по алгоритму SHA-256.

#### appsrc_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма исходного кода прикладного решения по алгоритму SHA-256.

#### globalserver_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма сервера приложений по алгоритму SHA-1. Устарел.

#### profile_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма образа конфигурационного профиля по алгоритму SHA-1. Устарел.

#### globalserver_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма сервера приложений по алгоритму SHA-256.

#### profile_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма образа конфигурационного профиля по алгоритму SHA-256. Устарел.

#### globalserver_instance

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Версия сервера приложений, желательно обновлять при каждом изменении комплекта приложения.

#### path

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Путь к комплекту приложений на системном NFS-хранилище.

#### state

- **Опциональный**

- **Допустимые типы:**
  - Один из: `started`, `drained`, `stopped`

- **Значение по умолчанию:**

  ```yaml
  stopped
  ```

Состояние комплекта приложений.

### GroupKitData

#### path

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Путь к комплекту группы на системном NFS-хранилище.

#### libs_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма дополнительных библиотек по алгоритму SHA-1. Устарел.

#### java_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма файлов JDK для переопределения по алгоритму SHA-1. Устарел.

#### fonts_sha1

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма архива с дополнительными шрифтами по алгоритму SHA-1. Устарел.

#### libs_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма дополнительных библиотек по алгоритму SHA-256.

#### java_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма файлов JDK для переопределения по алгоритму SHA-256.

#### fonts_sha256

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хеш-сумма архива с дополнительными шрифтами по алгоритму SHA-256.

### HooksData

#### tolerations

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Хук на Tolerations.

### ContainerResourcesSectionData

#### memory

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Ограничение по памяти

#### cpu

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Органичение по процессору

### ContainerResourcesData

#### requests

- **Обязательный**

- **Допустимые типы:**
  - [ContainerResourcesSectionData](#containerresourcessectiondata)

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

#### limits

- **Обязательный**

- **Допустимые типы:**
  - [ContainerResourcesSectionData](#containerresourcessectiondata)

Лимиты контейнера. Определяют максимальное потребление ресурсов. Контейнер не сможет получить больше процессорного времени, а при превышении лимита памяти будет остановлен по OOM.

### UpgradeJobSpec

#### type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Не используется.

#### name

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Не используется.

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Включено ли обновление через Kubernetes Job.

#### debug_mode

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Выключить перезагрузку подов при ошибках. Помогает при отладке.

#### node_selector

- **Опциональный**

- **Допустимые типы:**
  - Словарь

Селектор нод, как в Kubernetes

#### hooks

- **Опциональный**

- **Допустимые типы:**
  - [HooksData](#hooksdata)

Хуки. Подроблнее о хуках читайте [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/070_hooks.html).

#### java_xmx

- **Опциональный**

- **Допустимые типы:**
  - Строковый

- **Значение по умолчанию:**

  ```yaml
  3500M
  ```

Предельный объем кучи виртуальной машины Java

**Примеры:**

- ```yaml
  4000M
  ```

- ```yaml
  32G
  ```

#### victoriametrics_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса VictoriaMetrics, не требует ручного определения.

#### loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Loki, не требует ручного определения.

#### tempo_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внутреннего инстанса Tempo, не требует ручного определения.

#### send_metrics_to_external_system

- **Опциональный**

- **Допустимые типы:**
  - Булевый

Определяет, отправлять ли данные во внешнюю систему. По умолчанию используется аналогичное значение для группы ресурсов.

#### external_loki_endpoint

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Эндпоинт внешнего инстанса Loki, в который будут отправляться логи. По умолчанию указывается эндпоинт для группы ресурсов.

#### resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 4G
    cpu: '2'
  limits:
    memory: 4G
    cpu: '2'
  ```

Запросы и лимиты ресурсов контейнера с приложением.

#### agent_resources

- **Опциональный**

- **Допустимые типы:**
  - [ContainerResourcesData](#containerresourcesdata)

- **Значение по умолчанию:**

  ```yaml
  requests:
    memory: 500M
    cpu: '1'
  limits:
    memory: 1G
    cpu: '1'
  ```

Запросы и лимиты ресурсов контейнера с агентом сбора телеметрии.

#### admin_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Имя секрета администратора Global ERP

#### admin_secret_type

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Тип секрета администратора Global ERP

**Примеры:**

- ```yaml
  kubernetes.io/basic-auth
  ```

### GossipRouterData

#### host

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Адрес к GossipRouter

**Примеры:**

- ```yaml
  gr.mycompany.ru
  ```

- ```yaml
  10.0.1.2
  ```

#### port

- **Обязательный**

- **Допустимые типы:**
  - Целочисленный

Порт GossipRouter

**Примеры:**

- ```yaml
  12001
  ```

- ```yaml
  1101
  ```

### NFSVolume

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `nfs`

Тип раздела. Значение `nfs` означает, что должен использоваться NFS.

#### server

- **Обязательный**

- **Допустимые типы:**
  - Строковый

NFS-сервер

#### path

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Путь на NFS

### PVCVolume

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `pvc`

Не используется

#### name

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Не используется

#### classname

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Не используется

#### label_selectors

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Не используется

### ExtraVolume

#### name

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Определяет название точки монтирования при просмотре пода в `kubectl describe`.

#### path

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Путь к точке монтирования в файловой системе контейнера относительно `/root/globalserver/workspace/mnt/`.

#### volume

- **Обязательный**

- **Допустимые типы:**
  - [NFSVolume](#nfsvolume)
  - [PVCVolume](#pvcvolume)

Описание монтируемого раздела.

### RabbitMQSettingsData

#### enabled

- **Опциональный**

- **Допустимые типы:**
  - Булевый

- **Значение по умолчанию:**

  ```yaml
  true
  ```

Должен ли быть доступен серверам приложений RabbitMQ

#### host

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Адрес к серверу RabbitMQ

**Примеры:**

- ```yaml
  rabbitmq.mycompany.com
  ```

#### port

- **Опциональный**

- **Допустимые типы:**
  - Целочисленный

- **Значение по умолчанию:**

  ```yaml
  5672
  ```

Порт сервера RabbitMQ

#### vhost

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Виртуальный хост RabbitMQ

#### secret

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Секрет для подключения к RabbitMQ

### IPServiceDescData

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `ip`

Тип публикации

#### external_ip

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Внешний IP кластера, на который будет публиковаться сервис

### IngressServiceDescData

#### type

- **Обязательный**

- **Допустимые типы:**
  - Один из: `ingress`

Тип публикации

#### ingress_class

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Класс Ingress

#### host

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Поле `Host` HTTP-запроса, по которому он будет маршрутизироваться на данный сервис

#### annotations

- **Опциональный**

- **Допустимые типы:**

Дополнительные аннотация. Читайте подробнее [здесь](https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/090_ingress.html).

#### ingress_tls_secret

- **Опциональный**

- **Допустимые типы:**
  - Строковый

TLS-секрет для Ingress-прокси

### KubernetesServiceData

#### name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя сервиса

#### service_name

- **Обязательный**

- **Допустимые типы:**
  - Строковый

Имя Kubernetes сервиса

#### label_selector

- **Обязательный**

- **Допустимые типы:**
  - Строковый

K8s селектор меток

### UserData

#### username

- **Обязательный**

- **Допустимые типы:**
  - Строковый

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

#### permissions

- **Опциональный**

- **Допустимые типы:**
  - Строковый

Список разрешений

## Пример полной конфигурации

```yaml
apiVersion: global-system.ru/v1
kind: GlobalConfiguration
metadata:
  name: config
spec:
  type: advanced
  resgroups:
  - enabled: true
    timezone: Europe/Moscow
    drain_cluster_before_db_upgrade: true
    database_write_pool_parameters:
      accept_tx_session: true
      accept_no_tx_session: true
    database_readonly_replica_url: ''
    database_read_only_pool_parameters:
      accept_tx_session: false
      accept_no_tx_session: true
    database_extra_pools: {}
    database_special_pools: {}
    database_secret: db-user-secret
    hot_reload: false
    hot_reload_grace_period: 900
    search_domains: []
    gossiprouters: []
    admin_secret: gs-admin-auth
    victoriametrics_secret: victoria-metrics-auth
    java_version: '21'
    extra_vols: []
    debug_mode: false
    external_prometheus_secret: ''
    node_selector: {}
    upgrade_job:
      java_xmx: 3500M
      resources:
        requests:
          memory: 4G
          cpu: '2'
        limits:
          memory: 4G
          cpu: '2'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
    resbooks:
    - type: global_scheduler
      name: global-scheduler
      enabled: true
      java_xmx: 800M
      resources:
        requests:
          memory: 4G
          cpu: '2'
        limits:
          memory: 4G
          cpu: '2'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      scheduler_token_secret: scheduler-token-secret
    - type: global_server_excl
      name: global-server-excl
      enabled: true
      java_xmx: 3500M
      resources:
        requests:
          memory: 4G
          cpu: '2'
        limits:
          memory: 4G
          cpu: '2'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
    - type: global_server_share
      name: global-server-share
      enabled: true
      java_xmx: 3500M
      resources:
        requests:
          memory: 4G
          cpu: '2'
        limits:
          memory: 4G
          cpu: '2'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      replicas: 2
      grace_period_duration: 0
    - type: gossiprouter
      name: gossiprouter
      enabled: true
      java_xmx: 800M
      resources:
        requests:
          memory: 1G
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      gossip_router_port: 12001
    - type: grafana
      name: grafana
      enabled: true
      resources:
        requests:
          memory: 2Gi
          cpu: '1'
        limits:
          memory: 4Gi
          cpu: '2'
      storage_class: ''
      storage_size: 1Gi
      admin_secret: grafana-admin
      prometheus_stack_service: prometheus-k8s.monitoring.svc.cluster.local
      prometheus_stack_scrape_interval: '30'
    - type: haproxy
      name: haproxy
      enabled: true
      resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1Gi
          cpu: '2'
      agent_resources:
        requests:
          memory: 500M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      statistics_secret: secret-haproxy-auth
      replicas: 1
    - type: jgroups_dns
      name: jgroups-dns
      enabled: true
    - type: rabbitmq
      name: rabbitmq
      enabled: true
      resources:
        requests:
          memory: 2Gi
          cpu: '1'
        limits:
          memory: 4Gi
          cpu: '2'
      apmq_secret: rabbitmq-global
      admin_secret: rabbitmq-admin
      vhost: globalrabbitmq
      admin_port: 15672
    - type: img2doc
      name: img2doc
      enabled: true
      resources:
        requests:
          memory: 1G
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      port: 7000
      replicas: 1
    - type: queuewalker
      name: queuewalker
      enabled: true
      resources:
        requests:
          memory: 512M
          cpu: '1'
        limits:
          memory: 1G
          cpu: '1'
      replicas: 1
      token_secret: ''
      code_worker: default
      reader_timeout_ms: 1000
      request_timeout_ms: 10000
      sender_threads_worker: 10
      exec_user: admin
      queue_max_attempts: 5
      url_path: app/sys/rest/ss/pkg/Btk_JexlGatePkg/execute
      queuewalker_xmx: 512m
      log_level: INFO
      globalserver_host: ''
    - type: ctk-restapi
      name: ctk-restapi
      enabled: true
      debug_mode: false
      resources:
        requests:
          memory: 256Mi
          cpu: 500m
        limits:
          memory: 512Mi
          cpu: 1000m
      replicas: 1
      port: 8000
      jwt_algorithm: HS256
      access_token_expire_minutes: 15
      login_rate_limit_requests: 5
      rate_limit_requests_per_minute: 10
      log_level: INFO
      audit_enabled: true
      max_reason_length: 500
      cors_origins:
      - '*'
      cors_allow_credentials: false
      cors_allow_methods:
      - GET
      - POST
      cors_allow_headers:
      - Content-Type
      - Authorization
      kubernetes_services:
      - name: global-scheduler
        service_name: gs-cluster-1-global-scheduler
        label_selector: app=gs-cluster-1-global-scheduler
      users:
      - username: admin
        permissions:
        - service:all
      env: production
      secret_name: ctk-restapi-secret

```