Resource nubes_postgres · Service ID: 90 · Service Name: PostgreSQL¶
Manual · Create params · Modify params · Output params · Operations · Example
Create params¶
Обязательные параметры (вводимые пользователем)
| ID | Code | Type | Description | Constraints |
|---|---|---|---|---|
| 788 | cluster_configuration | map-fixed | ||
| 789 | startup_configuration | map-fixed | ||
| 790 | access_configuration | map-fixed | ||
| 791 | postgres_configuration | map-fixed | ||
| 792 | postgres_conf | array-map-fixed | ||
| 793 | backup_configuration | map-fixed | ||
| 794 | autoscale_configuration | map-fixed |
clusterConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 104 | cpu | integer | **yes** | 500 | Указывается в Milicores `1000` Mili == `1` Ядро | |
| 105 | memory | integer | **yes** | 512 | Указывается в Megabytes | |
| 106 | replicas | integer | **yes** | 1 | value_list=1, 3, 5, 7 | |
| 107 | disk | integer | **yes** | 10 | Указывается в GIGAbytes |
startupConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 108 | resource_realm | string | **yes** | Кластер Kubernetes, на котором будет развернут экземпляр | value_list=iot-naeel, k8s-3-sandbox-nubes-ru, k8s-4-sandbox-nubes-ru, naeel-test-3 |
accessConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 109 | master_ip_space | string | **yes** | Из какого Ip-Space резервировать внешний IP Список предоставляется из Организации, в котором развёрнута ресурсная платформа | ||
| 110 | master_access_list | json | **yes** | [] | Необходимо настраивать, когда зарезервирован внешний адрес Если передан пустой массив, доступ выделяется всем | |
| 111 | slave_ip_space | string | **yes** | Из какого Ip-Space резервировать внешний IP Список предоставляется из Организации, в котором развёрнута ресурсная платформа | ||
| 112 | slave_access_list | json | **yes** | [] | Необходимо настраивать, когда зарезервирован внешний адрес Если передан пустой массив, доступ выделяется всем |
postgresConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 114 | pooler_master | boolean | **yes** | false | Включает pgPooler (на запись). Будет создан новый под Размер пода **200m/400Mi** | value_list=false, true |
| 115 | pooler_slave | boolean | **yes** | false | Включает pgPooler (на чтение). Будет создан новый под Размер пода **200m/400Mi** | value_list=false, true |
| 113 | version | string | **yes** | 17 | value_list=17, 16 | |
| 116 | ssl_required | boolean | **yes** | true | По умолчанию подключение обязательное (sslmode=require) | value_list=false, true |
postgresConf (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 118 | param_name | string | **yes** | value_list=log_connections, log_disconnections | ||
| 117 | param_value | string | **yes** | Как правильно вводить значения описано здесь (https://www.postgresql.org/docs/current/runtime-config.html) |
backupConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 120 | retain | integer | **yes** | 7 | ||
| 121 | schedule | string | **yes** | 0 0 * * * | regex=^((((\d+,)+\d+|(\d+(\/|-|#)\d+)|(\d+L?)|(\*(\/\d+)?)|(L(-\d+)?)|(\?)|([A-Z]{3}(-[A-Z]{3})?)) ?){5,7})|(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)$ | |
| 119 | s3_uid | uuid | **yes** | Экземпляр S3 обязателен |
autoscaleConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 122 | enabled | boolean | **yes** | false | Включает автоскейлинг PV. При включении параметра необходимо настроить autoScalePercentage и autoScaleTechWindow. Алерт при срабатывании вызывает modify у текущей услуги | value_list=false, true |
| 123 | schedule | integer | **yes** | 0 | Требует включения autoScale. Окно обновления (пока не реализовано). Указывается час в виде Integer (0 / 5 / 12 / 23) | value_list=0, 5, 12, 23 |
| 124 | quota | integer | **yes** | 100 | До какого размера возможно увеличивать диск, когда включен Autoscale | |
| 125 | percent | integer | **yes** | 10 | Требует включения autoScale. Позволяет указать в процентах расширение от текущего макс объема Минимальный размер на который расширяется - **1Gb** | value_list=10, 15, 20 |
Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте
| ID | Code | Type | Default | Description | Constraints |
|---|---|---|---|---|---|
| 1094 | mtls_configuration | map-fixed | {} |
mtlsConfiguration (map-fixed)¶
| ID | Code | Type | Required | Default | Description | Constraints |
|---|---|---|---|---|---|---|
| 609 | type | string | **yes** | off | `off` - Настройка MTLS производиться не будет `manual` - После создания кластера в полях данных будет запрос на создание сертификата. **Вам необходимо будет выписать сертификат через вашу CA** и уже после включить через операцию **modify** режим MTLS `auto` - Сертификаты будут созданы через Cert-Manager Режимы **auto** и **manual** требует включить настройку `Включить sslMode` - **true** MTLS в режиме **auto** будет работать сразу, в режиме **manual** только после того как будет предоставлен **CA** и **Сертификат сервера** | value_list=off, manual, auto |
| 610 | duration_ca | integer | **yes** | 175200 | Указывается в **часах** Необходимо настраивать, когда параметр `Режим настройки` - **auto** | |
| 611 | duration_server | integer | **yes** | 87600 | Указывается в **часах** Не может быть больше чем время жизни СА Обновляется **раз в год**, если выставлено значение **более 2 лет** Обновляется **раз в пол года**, если выставлено значение **менее 2 лет** Необходимо настраивать, когда параметр `Режим настройки` - **auto** | |
| 612 | cert_ca | string | no | |||
| 613 | cert_server | string | no |
Параметры поведения (кратко)
По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
При `terraform destroy` или удалении ресурса из манифеста:
- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
- `false` — если ресурс уже есть, будет ошибка.
- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.
По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
При `terraform destroy` или удалении ресурса из манифеста:
- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
- `false` — если ресурс уже есть, будет ошибка.
- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.