Облачная платформаEvolution

cloudru_evolution_data_platform_trino (Resource)

Эта статья полезна?

Example Usage

resource "cloudru_evolution_data_platform_trino" "resource_trino" {
# Поле cluster_id является неизменяемым. При изменении значения ресурс будет пересоздан.
cluster_id = "06944b8a-1dc2-4fdb-96ec-01f5a360b0c8"
# Поле project_id является неизменяемым. При изменении значения ресурс будет пересоздан.
project_id = "a1b575ff-d01e-4c41-bf5e-5c4744c47b82"
name = "ae9f4a87-3a65-471e-8a2e-055b096032f3"
description = "88a4942a-71aa-4c1d-8854-591029c6c0bd"
network_configuration = {
subnet_id = "1beabe60-0a6e-420b-9034-bdceb49f3d9b"
zone_id = "a02053d0-982a-48c0-81dd-400d3a0e62b7"
}
node_configuration = {
flavor_id = "b5708953-3c77-4d3e-a196-010fa746b6ac"
min_count = 1662976645
max_count = 186423520
}
enable_public_host = false
basic_auth = {
users = [{
username = "4db22ab9-3e85-4390-a591-bc9a49cab1db"
password_secret_id = "e5b97d3a-ac58-434b-b1e8-53c82a058928"
}]
}
log_group_id = "eb012839-5fa2-41b8-82c9-8010961c70e4"
catalog_ids = ["fb7e29b2-ee4d-42fa-acd0-408ef9f20ab0", "859cf8b0-9675-427f-ae46-a663697a93d4", "787a9f6e-1cac-4c1e-850e-b7f3a84b8a9e", "7abac960-af22-477f-a82a-d2ad58744d58", "fd1a73d6-394e-4cd9-9317-60798979ae54", "75560079-40b7-417b-a347-fd0bb98b7a34", "030a0e45-ccec-47b1-a696-1ac91a181515", "b2ccc0ba-0878-414c-b918-9f793fa07d82", "a49fa81f-2e56-4d04-be5c-c298c875baba", "8f5bcb87-df19-442f-a51a-5505f7549983"]
version_id = "fa96f7e4-d42f-4a40-ad93-ea1651d2cfd9"
# Позволяет переопределить дефолтный таймаут провайдера для определенного метода. Если нужно указать бесконечный таймаут, то нужно указать например 0s, тогда таймаута не будет.
timeouts {
create = "60m"
update = "30m"
delete = "20m"
}
# Игнорировать изменения таймаутов: это предотвращает лишние обновления ресурса при смене значений таймаутов в конфигурации
# Но следует учитывать, что метод delete в ресурсе читает значение таймаута из стейта и, если его нужно изменить, то этот блок стоит закомментировать
lifecycle {
ignore_changes = [timeouts]
}
}

Schema

Required

  • cluster_id (String) Идентификатор кластера.

  • enable_public_host (Boolean) Флаг публичного хоста для подключения через интернет.

  • log_group_id (String) Идентификатор группы логирования.

  • name (String) Название Trino.

  • network_configuration (Attributes) Конфигурация сети. (see below for nested schema)

  • node_configuration (Attributes) Конфигурация Trino нод. (see below for nested schema)

  • project_id (String) Идентификатор проекта.

Optional

  • basic_auth (Attributes) Конфигурация basic auth. (see below for nested schema)

  • catalog_ids (List of String) Список подключаемых Trino каталогов.

  • description (String) Описание Trino.

  • timeouts (Block, Optional) (see below for nested schema)

  • version_id (String) Идентификатор версии Trino.

Read-Only

  • created_at (String) Время создания Trino.

  • created_by (String) Идентификатор пользователя, создавшего Trino.

  • id (String) Идентификатор Trino.

  • private_host (String) Приватный хост для подключения к Trino внутри VPC.

  • public_host (String) Публичный хост для подключения к Trino через интернет, при наличии установленного флага публичного хоста.

  • status (String) Статус показывающий текущее состояние Trino.

  • updated_at (String) Время последнего обновления Trino.

  • updated_by (String) Идентификатор пользователя, обновившего Trino последним.

  • version (Attributes) Версия Trino. (see below for nested schema)

Nested Schema for network_configuration

Required:

  • subnet_id (String) Идентификатор подсети.

  • zone_id (String) Идентификатор зоны доступности.

Nested Schema for node_configuration

Required:

  • flavor_id (String) Идентификатор флейвора для Trino нод.

  • max_count (Number) Максимальное количество Trino нод.

  • min_count (Number) Минимальное количество Trino нод.

Nested Schema for basic_auth

Optional:

Nested Schema for basic_auth.users

Required:

  • password_secret_id (String) Идентификатор секрета пароля пользователя из сервиса secret manager.

  • username (String) Имя пользователя.

Nested Schema for timeouts

Optional:

  • create (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours).

  • delete (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

  • update (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours).

Nested Schema for version

Required:

  • id (String) Идентификатор версии.

Read-Only:

  • description (String) Описание версии.

  • managed_version (String) Номер версии Managed Trino.

  • name (String) Название версии. Пример: 1.0.0 (478).

  • oss_version (String) Номер версии open source продукта Trino.

Зависимости

Project ID

Нужное значение для идентификатора проекта (project_id) можно получить из поля projects.id с помощью датасорса cloudru_evolution_organization_project_collection.

Cluster ID

Нужное значение для идентификатора кластера (cluster_id) можно получить из поля clusters.id с помощью датасорса cloudru_evolution_data_platform_cluster_collection. Если нужного кластера не существует, его можно создать с помощью ресурса cloudru_evolution_data_platform_cluster.

Network configuration

  • Нужное значение для подсети (network_configuration.subnet_id) можно получить из поля subnets.id с помощью датасорса cloudru_evolution_compute_subnet_collection.

  • Идентификатор зоны доступности (network_configuration.zone_id) находится в поле subnets.zone.id выбранной подсети. Список зон также можно получить из поля zones.id датасорса cloudru_evolution_compute_zone_collection.

Node configuration

  • Нужное значение для флейвора (node_configuration.flavor_id) можно получить из поля flavors.id с помощью датасорса cloudru_evolution_data_platform_trino_flavor_collection.

  • Значения min_count и max_count должны находиться в диапазоне flavors.min_node_count–flavors.max_node_count выбранного флейвора.

Подсеть, зона доступности и флейвор должны быть доступны в проекте, в котором создается Trino.

Basic auth

В basic_auth.users.password_secret_id указывается идентификатор секрета из Secret Manager, содержащего пароль пользователя. Идентификатор секрета можно получить в консоли в разделе Secret Manager .

Log group ID

Можно получить через консоль → раздел Мониторинг и логи → Лог-группы . В списке лог-групп будет отображаться UUID каждой.

Catalog IDs

Нужные значения для каталогов (catalog_ids) можно получить из поля catalogs.id с помощью датасорса cloudru_evolution_data_platform_trino_catalog_collection. Если нужного каталога не существует, его можно создать с помощью ресурса cloudru_evolution_data_platform_trino_catalog.

Version ID

Нужное значение для версии (version_id) можно получить из поля trino_versions.id с помощью датасорса cloudru_evolution_data_platform_trino_version_collection.