PostgreSQL
Схемы необходимы для работы сервисов DataLab и управления VM
auth
auth.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('auth.migrations_id_seq'::regclass) |
| name | character varying | Название миграции |
| timestamp | bigint | Время запуска миграции |
auth.users
Пользователи
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Время создания пользователя По-умолчанию: now() |
| isActive | boolean | Признак активности пользователя (вкл/выкл) По-умолчанию: true |
| login | character varying | Логин пользователя |
| password | character varying | Хеш пароля пользователя |
| policy | USER-DEFINED | Роль пользователя По-умолчанию: 'default'::auth.users_policy_enum Одно из: [default, admin, deployer] |
| salt | character varying | Соль для хеша пароля пользователя |
| uid | uuid | Уникальный идентификатор пользователя По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Время последнего обновления пользователя По-умолчанию: now() |
deployer_app.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('deployer_app.migrations_id_seq'::regclass) |
| name | character varying | Название миграции |
| timestamp | bigint | Время запуска миграции |
deployer_datalab
deployer_datalab.environments
Окружение для разворачивания ВМ даталаба
| Название | Тип | Описание |
|---|---|---|
| cluster | character varying | Kubernetes кластер для разворачивания |
| config | jsonb | Конфигурация ВМ даталаба. Можно использовать для описания ограничений по доступным ресурсам для ВМ и реквизиты доступа по-умолчанию к сервисам составляющим разные части даталаба По-умолчанию: '{}'::jsonb |
| createdAt | timestamp without time zone | Время создания записи По-умолчанию: now() |
| datalabDomain | character varying | Доменное имя виртуальной машины даталаба По-умолчанию: 'k8s-cluster.aggregion.com'::character varying |
| datalabS3InternalHost | character varying | Внутренний адрес (доменное имя внутри Kubernetes кластера) виртуальной машины даталаба По-умолчанию: ''::character varying |
| deploymentState | character varying | Статус разворачивания окружения По-умолчанию: 'unknown'::character varying |
| name | character varying | Название окружения |
| notificationPostAt | timestamp without time zone | Время отправки уведомления при изменении deploymentState |
| options | jsonb | Опции окружения По-умолчанию: '{}'::jsonb |
| provisionedState | jsonb | То же самое, что и state, только зафиксированное на момент разворачивания ВМ даталаба По-умолчанию: '{}'::jsonb |
| state | jsonb | Статус опций ВМ. Например, статус доступности Интернета По-умолчанию: '{}'::jsonb |
| templatesNamespace | character varying | Namespace в котором должно разворачиваться окружение По-умолчанию: ''::character varying |
| uid | uuid | Уникальный идентификатор окружения По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Время последнего обновления записи По-умолчанию: now() |
deployer_datalab.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('deployer_datalab.migrations_id_seq'::regclass) |
| name | character varying | Название миграции |
| timestamp | bigint | Время запуска миграции |
deployer_datalab.templates
Шаблон разворачивания даталаба
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Время создания записи По-умолчанию: now() |
| name | character varying | Название шаблона |
| template | text | Тело шаблона По-умолчанию: ''::text |
| uid | uuid | Уникальный идентификатор шаблона По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Время последнего обновления записи По-умолчанию: now() |
notification
notification.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('notification.migrations_id_seq'::regclass) |
| name | character varying | Название миграции |
| timestamp | bigint | Время запуска миграции |
notification.notifications
Уведомления
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Время создания записи По-умолчанию: now() |
| group | uuid | Параметр группировки сообщений |
| message | text | Тело сообщения По-умолчанию: ''::text |
| params | jsonb | Параметры уведомления По-умолчанию: '{}'::jsonb |
| receivedAt | timestamp without time zone | Время получения уведомления |
| retryPolicy | jsonb | Правило повторной отправки уведомления По-умолчанию: '{"type": "linear"}'::jsonb |
| status | character varying | Статус доставки уведомления По-умолчанию: ''::character varying |
| type | USER-DEFINED | Тип сообщения |
| uid | uuid | Уникальный идентификатор уведомления По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Время последего обновления записи По-умолчанию: now() |
| version | integer | Версия По-умолчанию: 0 |
platform
platform.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('platform.migrations_id_seq'::regclass) |
| name | character varying | Название миграции |
| timestamp | bigint | Время запуска миграции |
platform.namespaces
Namespace которые доступны DeployController-у для разворачивания приложений
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| name | character varying | Название Namespace |
| platformId | character varying | Идентификатор платформы в которой находится данный Namespace |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
platform.platforms
Платформа (и параметры для работы с платформой) на которой DeployController может разворачивать приложения. Например, кластер Kubernetes.
| Название | Тип | Описание |
|---|---|---|
| connectionSecret | character varying | Секрет (ключ авторизации), который используется для работы с платформой По-умолчанию: ''::character varying |
| connectionUrl | text | Строка подключения к платформе (например, URL для работы с k8s кластером) По-умолчанию: ''::text |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| description | character varying | Описание платформы По-умолчанию: ''::character varying |
| id | character varying | Уникальный идентификатор |
| options | jsonb | Опции платформы По-умолчанию: '{}'::jsonb |
| type | USER-DEFINED | Тип платформы: k8s, swarm, compose, nomad. Пока поддерживается только k8s По-умолчанию: 'k8s'::platform.platforms_type_enum Одно из: [k8s, swarm, compose, nomad] |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
platform.specifications
Спецификация ресурса в платформе (Kubernetes кластере)
| Название | Тип | Описание |
|---|---|---|
| configs | jsonb | Дополнительные параметры разворачиваемого приложения, которые используются при регистрации ресурса в Kubernetes кластере, которые должны находиться в .Values.${name}.configsПо-умолчанию: '{}'::jsonb |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| format | character varying | Формат спецификации. Пока поддерживается только YAML По-умолчанию: ''::character varying |
| innerUid | character varying | Внутренний идентификатор спецификации в платформе |
| kind | character varying | Тип ресурса разворачиваемого по данной спецификации. Аналог .kind в Kubernetes |
| messageStatus | text | Сообщение о статусе, как правило нужен при возникновении ошибок По-умолчанию: ''::text |
| meta | jsonb | Метаинформация ресурса разворачиваемого по данной спецификации. Аналог .metadata в KubernetesПо-умолчанию: '{}'::jsonb |
| name | character varying | Название ресурса разворачиваемого по данной спецификации. Аналог .metadata.name в Kubernetes |
| namespaceUid | uuid | Namespace в котором должен разворачиваться ресурс с указанной спецификацией |
| state | USER-DEFINED | Состояние регистрации данной спецификации По-умолчанию: 'unknown'::platform.specifications_state_enum Одно из: [unknown, pending, deploying, failed, success] |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
provision
provision.action_handlers
Зарегистрированные обработчики, которые запускаются при определённых действиях
actions.
| Название | Тип | Описание |
|---|---|---|
| actions | jsonb | События на которых должен срабатывать данный обработчик. Пример содержимого: {"^child.+": true, "^params.+": true}По-умолчанию: '{}'::jsonb |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| entityType | USER-DEFINED | Тип сущности к которой относится данный ActionHandler Одно из: [environment, component] |
| entityUid | uuid | Идентификатор сущности к которой относится данный ActionHandler |
| handler | character varying | Название обработчика, который должен запускаться По-умолчанию: '0'::character varying |
| name | character varying | Название данного ActionHandler |
| options | jsonb | Опции текущего ActionHandler-аПо-умолчанию: '{}'::jsonb |
| priority | integer | Приоритет исполнения данного ActionHandler По-умолчанию: 1000 |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
provision.component_params
Описание параметров компонента. Каждый компонент может разворачиваться с разными параметрами
| Название | Тип | Описание |
|---|---|---|
| componentUid | uuid | Идентификатор компонента к которому относится текущий набор параметров |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| isEncrypted | boolean | Признак зашифровано ли valueПо-умолчанию: false |
| name | character varying | Название набора параметров компонента |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
| value | character varying | Параметры По-умолчанию: ''::character varying |
| version | integer | Версия текущего набора параметров По-умолчанию: 0 |
provision.component_specs
Спецификация компонента. Аналог
*.specв Kubernetes
| Название | Тип | Описание |
|---|---|---|
| componentUid | uuid | Идентификатор компонента к которому относится текущая спецификация компонента |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| innerUid | character varying | Внутренний идентификатор текущей спецификации в платформе |
| kind | character varying | Тип ресурса описываемого текущей спецификацией. Аналог .metadata.name в Kubernetes |
| messageStatus | text | Сообщение текущего статуса. Полезно при возникновении ошибок По-умолчанию: ''::text |
| meta | jsonb | Метаинформация о ресурсе, описываемом данной спецификацией. Аналог .metadata в KubernetesПо-умолчанию: '{}'::jsonb |
| name | character varying | Название спецификации компонента |
| state | character varying | Статус деплоя данной спецификации По-умолчанию: ''::character varying Одно из: [unknown, pending, deploying, failed, success] |
| templateUid | uuid | Шаблон, к которому относится текущая спецификация компонента |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
| version | integer | Версия спецификации компонента По-умолчанию: 0 |
provision.component_templates
Шаблон компонента. Аналог
*.templateв Kubernetes
| Название | Тип | Описание |
|---|---|---|
| componentUid | uuid | Идентификатор компонента, к которому относится данный шаблон |
| contentHash | uuid | Идентификатор Content к которому относится данный шаблон |
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| isEncrypted | boolean | Признак зашифровано или нет Content.data который относится в этому шаблонуПо-умолчанию: false |
| name | character varying | Название шаблона для разворачивания компонента |
| type | character varying | Тип шаблонизатора. В данный момент поддерживается только handlebarsПо-умолчанию: 'handlebars'::character varying |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() |
| version | integer | Версия шаблона По-умолчанию: 0 |
provision.components
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() Пример значения: 2022-07-07 10:50:01.639456 |
| deploymentState | USER-DEFINED | Статус разворачивания данного компонента По-умолчанию: 'initial'::provision.components_deploymentstate_enum Одно из: [unknown, initial, pending, deploying, success, failed] Пример значения: success |
| environmentUid | uuid | Идентификатор Environment-а к которому относится данная сущностьПример значения: c160463e-6839-4a1c-a287-b6a05056b14c |
| name | character varying | Название компонента Пример значения: 'datalab' |
| type | character varying | Тип компонента. Сейчас поддерживается только один тип datalabПо-умолчанию: ''::character varying Пример значения: 'datalab' |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() Пример значения: 1be5acd1-bb95-3160-b96d-4397444282a8 |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() Пример значения: 2022-07-21 08:25:30.437 |
| version | integer | Версия компонента По-умолчанию: 0 Пример значения: 43 |
provision.contents
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() |
| data | bytea | Содержимое данной сущности |
| hash | uuid | Hash от data в текущей сущности |
| mime | character varying | MIME тип содержимого в data текущей сущностиПо-умолчанию: ''::character varying |
| name | character varying | Название экземпляра текущей сущности По-умолчанию: ''::character varying |
provision.environment_params
Параметры разворачиваемых окружений
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() Пример значения: 2022-06-28 18:43:05.137854 |
| environmentUid | uuid | Идентификатор окружения на которое ссылается данная сущность Пример значения: 1af64b3d-f236-42cb-96b7-f81b167ebf3c |
| isEncrypted | boolean | Зашифровано ли value текущей сущности?По-умолчанию: false Пример значения: true |
| isViewInTemplate | character varying | Имеет ли представление в шаблоне? По-умолчанию: true Пример значения: false |
| name | character varying | Название параметра окружения Пример значения: 'domain' |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() Пример значения: d6643cd5-a0a3-42cf-8553-4cf47e2f16b8 |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() Пример значения: 2022-06-28 18:43:05.137854 |
| value | text | Значение параметра компонента По-умолчанию: ''::text Пример значения: '1af64b3d-f236-42cb-96b7-f81b167ebf3c.datalab.stage1.dcp.bm.dev.aggregion.com' |
| version | integer | Версия текущей сущности По-умолчанию: 0 Пример значения: 1 |
provision.environments
Окружения для разворачивания приложений
| Название | Тип | Описание |
|---|---|---|
| createdAt | timestamp without time zone | Дата создания записи По-умолчанию: now() Пример значения: 2022-05-04 10:35:06.761397 |
| deploymentState | USER-DEFINED | Статус разворачивания текущего окружения По-умолчанию: 'initial'::provision.environments_deploymentstate_enum Одно из: [unknown, initial, pending, deploying, success, failed] Пример значения: 'success' |
| name | character varying | Название окружения Пример значения: 'datalab-be3a5553-a182-4c36-85f5-eb0e1606201a' |
| platformId | character varying | Идентификатор платформы на которой должно разворачиваться текущее окружение Пример значения: stage1 |
| platformNamespace | character varying | Namespace в платформе где должно разворачиваться окружение По-умолчанию: 'default'::character varying Пример значения: datalab |
| uid | uuid | Уникальный идентификатор По-умолчанию: uuid_generate_v4() Пример значения: be3a5553-a182-4c36-85f5-eb0e1606201a |
| updatedAt | timestamp without time zone | Дата последнего обновления записи По-умолчанию: now() Пример значения: 2022-07-23 06:06:30.626 |
| version | integer | Версия текущей сущности По-умолчанию: 0 Пример значения: 17 |
provision.migrations
Описывает запущенные когда-либо миграции
| Название | Тип | Описание |
|---|---|---|
| id | integer | Идентификатор миграции По-умолчанию: nextval('provision.migrations_id_seq'::regclass) Пример значения: 1 |
| name | character varying | Название миграции Пример значения: 'MakePlatformNamespaceFromNameMigration1634629780000' |
| timestamp | bigint | Время запуска миграции Пример значения: 1634629780000 |