mws_mclickhouse_cluster (Resource)
Заголовок раздела «mws_mclickhouse_cluster (Resource)»Кластер Managed ClickHouse — это группа узлов (виртуальных машин), объединенных для высокоскоростной обработки и хранения данных с помощью СУБД ClickHouse. В облачной инфраструктуре кластер — единый интерфейс управления оперативной аналитической обработкой данных (OLAP, On-Line Analytical Processing) в реальном времени
Примеры использования
Заголовок раздела «Примеры использования»resource "mws_vpc_network" "network" { network = var.network_name}
resource "mws_vpc_subnet" "subnet" { subnet = var.subnet_name network = mws_vpc_network.network.network cidr = var.subnet_cidr}
resource "mws_mclickhouse_cluster" "example" { cluster = var.cluster_name version = "25.3" active = true
metadata = { display_name = "Standalone ClickHouse Cluster Example" description = "Standalone ClickHouse Cluster" }
shards = [{ name = "shard"
resources = { vm_type = "vmTypes/gen-4-8" disk = { type = "NETWORK_STANDARD_SSD" size = "10Gb" } }
weight = 1
instances = [{ name = "instance-1" zone = "ru-central1-a" count = 1
endpoints = [{ address = { spec = { subnet = mws_vpc_subnet.subnet.metadata.id } } external_address = { spec = {} } }] }] }]
bootstrap_admin = { username = var.cluster_admin_username password_version = 1 password = var.cluster_admin_password }
maintenance_window = { weekly = { days = ["MONDAY"] hour = 3 } }
backup = { hour = 2 retain_period_days = 7 }}
variable "network_name" { type = string default = "standalone-ch-network" description = "Network name"}
variable "subnet_name" { type = string default = "standalone-ch-subnet" description = "Subnet name"}
variable "subnet_cidr" { type = string default = "192.168.1.0/24" description = "Subnet CIDR"}
variable "cluster_name" { type = string default = "standalone-ch" description = "ClickHouse cluster name"}
variable "cluster_admin_username" { type = string default = "admin" description = "ClickHouse cluster admin username"}
variable "cluster_admin_password" { type = string sensitive = true default = "securePassword123!" description = "ClickHouse cluster admin password"}Required
Заголовок раздела «Required»bootstrap_admin(Attributes) Добавление пользователей при создании кластера Clickhouse. (see below for nested schema)cluster(String) Название или идентификатор кластера.shards(Attributes List) Описание шардов кластера. (see below for nested schema)version(String) Версия продукта.
Optional
Заголовок раздела «Optional»active(Boolean) Состояние кластера — включен или выключен.backup(Attributes) Спецификация работы автоматического резервного копирования. (see below for nested schema)config(Map of String) Настройки Clickhouse. Если не указаны, будут использованы настройки по умолчаниюcoordinator(Attributes) Описание координатора кластера. (see below for nested schema)endpoints(Attributes List) Описание эдпойнтов кластера. (see below for nested schema)kind(String)maintenance_window(Attributes) (see below for nested schema)metadata(Attributes) (see below for nested schema)project(String) Путь к проекту.storage(Attributes) Конфигурация схемы хранилищ ClickHouse. (see below for nested schema)timeouts(Attributes) (see below for nested schema)
Read-Only
Заголовок раздела «Read-Only»id(String) ID ресурса.status(Attributes) (see below for nested schema)
Nested Schema for bootstrap_admin
Заголовок раздела «Nested Schema for bootstrap_admin»Required:
password(String, Sensitive, Write-only) Пароль учетной записи администратора.username(String) Имя учетной записи администратора.
Optional:
password_version(Number) Increase this field’s value if you want to force updating the associated write-only field.
Nested Schema for shards
Заголовок раздела «Nested Schema for shards»Required:
instances(Attributes List) (see below for nested schema)name(String) Имя шарда, которому будут принадлежать инстансы. В случае с несколькими шардами имя формируется какname-{shardIndex}.resources(Attributes) Ресурсы одной ноды Clickhouse. (see below for nested schema)
Optional:
count(Number) Количество шардов, которые будут созданы.endpoints(Attributes List) Описание эдпойнтов шардов. (see below for nested schema)weight(Number) Вес шарда.
Nested Schema for shards.instances
Заголовок раздела «Nested Schema for shards.instances»Required:
zone(String) Зона доступности.
Optional:
count(Number) Количество инстансов в зоне доступности.endpoints(Attributes List) Описание эдпойнтов инстансов. (see below for nested schema)name(String) Имя инстанса в шарде. В случае с несколькими инстансами имя формируется какname-{replicaIndex}, гдеreplicaIndexимеет сквозную нумерацию в шарде.
Nested Schema for shards.instances.endpoints
Заголовок раздела «Nested Schema for shards.instances.endpoints»Required:
address(Attributes) Описание шаблона адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Optional:
external_address(Attributes) Описание шаблона внешнего адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Nested Schema for shards.instances.endpoints.address
Заголовок раздела «Nested Schema for shards.instances.endpoints.address»Optional:
ref(String) Ссылка на внутренний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for shards.instances.endpoints.address.spec
Заголовок раздела «Nested Schema for shards.instances.endpoints.address.spec»Required:
subnet(String) Подсеть облачной сети, к которой принадлежит адрес.
Nested Schema for shards.instances.endpoints.external_address
Заголовок раздела «Nested Schema for shards.instances.endpoints.external_address»Optional:
ref(String) Ссылка на внешний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона внешнего адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for shards.instances.endpoints.external_address.spec
Заголовок раздела «Nested Schema for shards.instances.endpoints.external_address.spec»Nested Schema for shards.resources
Заголовок раздела «Nested Schema for shards.resources»Required:
disk(Attributes) Параметры диска. (see below for nested schema)vm_type(String) Тип виртуальной машины, описывающий ресурсы (vCPU, memory).
Nested Schema for shards.resources.disk
Заголовок раздела «Nested Schema for shards.resources.disk»Required:
size(String) Размер диска.type(String) Тип диска.
Optional:
iops(Number) IOPS.
Nested Schema for shards.endpoints
Заголовок раздела «Nested Schema for shards.endpoints»Required:
address(Attributes) Описание шаблона адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Optional:
external_address(Attributes) Описание шаблона внешнего адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Nested Schema for shards.endpoints.address
Заголовок раздела «Nested Schema for shards.endpoints.address»Optional:
ref(String) Ссылка на внутренний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for shards.endpoints.address.spec
Заголовок раздела «Nested Schema for shards.endpoints.address.spec»Required:
subnet(String) Подсеть облачной сети, к которой принадлежит адрес.
Nested Schema for shards.endpoints.external_address
Заголовок раздела «Nested Schema for shards.endpoints.external_address»Optional:
ref(String) Ссылка на внешний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона внешнего адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for shards.endpoints.external_address.spec
Заголовок раздела «Nested Schema for shards.endpoints.external_address.spec»Nested Schema for backup
Заголовок раздела «Nested Schema for backup»Optional:
hour(Number) Час начала окна автоматического резервного копирования.retain_period_days(Number) Количество дней хранения успешно снятой резервной копии.
Nested Schema for coordinator
Заголовок раздела «Nested Schema for coordinator»Required:
instances(Attributes List) (see below for nested schema)resources(Attributes) Параметры виртуальной машины, где будет работать Clickhouse Keeper/Zookeeper. Необязательный параметр в standalone-конфигурации. (see below for nested schema)
Optional:
type(String) Тип координатора. Если не указано, то при наличии более одного хоста, используется Clickhouse Keeper.
Nested Schema for coordinator.instances
Заголовок раздела «Nested Schema for coordinator.instances»Required:
zone(String) Зона доступности.
Optional:
count(Number) Количество инстансов в зоне доступности.
Nested Schema for coordinator.resources
Заголовок раздела «Nested Schema for coordinator.resources»Required:
disk(Attributes) Параметры диска. (see below for nested schema)vm_type(String) Тип виртуальной машины, описывающий ресурсы (vCPU, memory).
Nested Schema for coordinator.resources.disk
Заголовок раздела «Nested Schema for coordinator.resources.disk»Required:
size(String) Размер диска.type(String) Тип диска.
Optional:
iops(Number) IOPS.
Nested Schema for endpoints
Заголовок раздела «Nested Schema for endpoints»Required:
address(Attributes) Описание шаблона адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Optional:
external_address(Attributes) Описание шаблона внешнего адреса/адресов, которые будут выделены. Дляrefбудет выделен только один адрес, дляspecбудет выделено необходимое количество адресов в зависимости от сущности, для которой выделяются адреса. (see below for nested schema)
Nested Schema for endpoints.address
Заголовок раздела «Nested Schema for endpoints.address»Optional:
ref(String) Ссылка на внутренний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for endpoints.address.spec
Заголовок раздела «Nested Schema for endpoints.address.spec»Required:
subnet(String) Подсеть облачной сети, к которой принадлежит адрес.
Nested Schema for endpoints.external_address
Заголовок раздела «Nested Schema for endpoints.external_address»Optional:
ref(String) Ссылка на внешний адрес эндпоинта в VPC.spec(Attributes) Описание шаблона внешнего адреса, который будет использоваться при выделении адресов. (see below for nested schema)
Nested Schema for endpoints.external_address.spec
Заголовок раздела «Nested Schema for endpoints.external_address.spec»Nested Schema for maintenance_window
Заголовок раздела «Nested Schema for maintenance_window»Required:
weekly(Attributes) (see below for nested schema)
Nested Schema for maintenance_window.weekly
Заголовок раздела «Nested Schema for maintenance_window.weekly»Required:
days(List of String) Дни недели, в которые будет запущено задание на тех. обслуживание.hour(Number) Час, в который будет запущено задание на тех. обслуживание.
Optional:
duration(String) Допустимая продолжительность процесса обновления. Если не указано, то не ограничено по времени. Принимается только формат в часах (h).
Nested Schema for metadata
Заголовок раздела «Nested Schema for metadata»Optional:
description(String) Описание ресурса.display_name(String) Отображаемое имя. Необязательное поле, можно свободно задавать и изменять для удобства организации ресурсов.
Read-Only:
create_time(String) Дата создания объекта.delete_time(String) Время запроса на удаление ресурса (не фактическое время удаления).id(String) Ссылка на типизированный референс.purge_time(String)usages(Attributes List) Связи с другими ресурсами. В зависимости от типа связи операции над ресурсом могут быть ограничены. (see below for nested schema)
Nested Schema for metadata.usages
Заголовок раздела «Nested Schema for metadata.usages»Read-Only:
name(String) Имя связи. Требуется для модификации коллекции.resource(String) Ссылка на ресурс.usage_type(String) Тип связи. Помимо стандартныхownиuseмогут быть добавлены специализированные типы для конкретных сервисов.
Nested Schema for storage
Заголовок раздела «Nested Schema for storage»Optional:
cache_max_size(String) Максимальный размер кеша объектного хранилища, расположенный на SSD.data_caching_enabled(Boolean) Включить кеширование данных с объектного хранилища на сетевых SSD дисках.hybrid_storage_enabled(Boolean) Включить гибридное хранилище (hot SSD + cold S3).max_data_part_size_ssd(String) Максимальный размер части данных в байтах, который может храниться на дисках тома (SSD).move_factor(Number) Соотношение свободного дискового пространства на SSD дисках кластера (от 0.01 до 1) Когда это соотношение превышает значение параметра конфигурации, ClickHouse начинает перемещать данные в следующий том по порядку.
Nested Schema for timeouts
Заголовок раздела «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 status
Заголовок раздела «Nested Schema for status»Read-Only:
cluster(Attributes) Параметры объекта кластера. (see below for nested schema)health(String) Работоспособность кластера:ALIVE- Полностью работоспособен;DEGRADED- Деградирует (некоторые, но не все, экземпляры неработоспособны);FAILED- Неработоспособен;UNKNOWN- Не удаётся определить состояние (на этапе создания).
ready(Attributes) Информация о статусе реконсиляции. (see below for nested schema)state(String) Состояние кластера:CREATING- Создаётся;RUNNING- Работает в штатном режиме;STOPPING- Останавливается;STOPPED- Остановлен;STARTING- Запуск ранее остановленного;UPDATING- Выполняется обновление;ERROR- Произошла ошибка, требуется участие команды поддержки;DELETING- Удаляется;DELETED- Удалён;UNIDENTIFIED- Не удаётся определить статус;RESTORING- Восстанавливается.
Nested Schema for status.cluster
Заголовок раздела «Nested Schema for status.cluster»Read-Only:
active(Boolean) Состояние кластера — включен или выключен.backup(Attributes) Спецификация работы автоматического резервного копирования. (see below for nested schema)config(Map of String) Настройки Clickhouse.coordinator(Attributes) Описание координаторов кластера. (see below for nested schema)endpoints(Attributes List) Список эндпойнтов для подключения к кластеру. (see below for nested schema)maintenance_window(Attributes) (see below for nested schema)shards(Attributes List) Описание шардов кластера. (see below for nested schema)storage(Attributes) Конфигурация схемы хранилищ ClickHouse. (see below for nested schema)version(String) Версия продукта.
Nested Schema for status.cluster.backup
Заголовок раздела «Nested Schema for status.cluster.backup»Read-Only:
hour(Number) Час начала окна автоматического резервного копирования.retain_period_days(Number) Количество дней хранения успешно снятой резервной копии.
Nested Schema for status.cluster.coordinator
Заголовок раздела «Nested Schema for status.cluster.coordinator»Read-Only:
instances(Attributes List) Описание инстансов координатора. (see below for nested schema)resources(Attributes) Параметры виртуальной машины, где будет работать Clickhouse Keeper/Zookeeper. Необязательный параметр в standalone-конфигурации. (see below for nested schema)type(String) Тип координатора. Если не указано, то при наличии более одного хоста, используется Clickhouse Keeper.
Nested Schema for status.cluster.coordinator.instances
Заголовок раздела «Nested Schema for status.cluster.coordinator.instances»Read-Only:
health(String)id(String) Идентификатор инстанса координатора.zone(String) Зона доступности.
Nested Schema for status.cluster.coordinator.resources
Заголовок раздела «Nested Schema for status.cluster.coordinator.resources»Required:
disk(Attributes) Параметры диска. (see below for nested schema)vm_type(String) Тип виртуальной машины, описывающий ресурсы (vCPU, memory).
Nested Schema for status.cluster.coordinator.resources.disk
Заголовок раздела «Nested Schema for status.cluster.coordinator.resources.disk»Required:
size(String) Размер диска.type(String) Тип диска.
Optional:
iops(Number) IOPS.
Nested Schema for status.cluster.endpoints
Заголовок раздела «Nested Schema for status.cluster.endpoints»Read-Only:
address(Attributes) Описание эндпойнта кластера в пользовательской сети (VPC). (see below for nested schema)external_address(Attributes) Описание внешнего доступа к кластеру. (see below for nested schema)
Nested Schema for status.cluster.endpoints.address
Заголовок раздела «Nested Schema for status.cluster.endpoints.address»Read-Only:
dns(Attributes List) Доменные имена. (see below for nested schema)ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.subnet(String) Идентификатор подсети облачной сети, к которой принадлежит адрес.
Nested Schema for status.cluster.endpoints.address.dns
Заголовок раздела «Nested Schema for status.cluster.endpoints.address.dns»Read-Only:
name(String) DNS-имя.
Nested Schema for status.cluster.endpoints.external_address
Заголовок раздела «Nested Schema for status.cluster.endpoints.external_address»Read-Only:
ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.
Nested Schema for status.cluster.maintenance_window
Заголовок раздела «Nested Schema for status.cluster.maintenance_window»Required:
weekly(Attributes) (see below for nested schema)
Nested Schema for status.cluster.maintenance_window.weekly
Заголовок раздела «Nested Schema for status.cluster.maintenance_window.weekly»Required:
days(List of String) Дни недели, в которые будет запущено задание на тех. обслуживание.hour(Number) Час, в который будет запущено задание на тех. обслуживание.
Optional:
duration(String) Допустимая продолжительность процесса обновления. Если не указано, то не ограничено по времени. Принимается только формат в часах (h).
Nested Schema for status.cluster.shards
Заголовок раздела «Nested Schema for status.cluster.shards»Read-Only:
endpoints(Attributes List) Список эндпойнтов для подключения к шарду. (see below for nested schema)id(String) Идентификатор шардаinstances(Attributes List) Описание инстансов шарда. (see below for nested schema)name(String) Имя шарда, которому будут принадлежать инстансы.resources(Attributes) Параметры виртуальной машины, где будут работать инстансы Clickhouse данного шарда. (see below for nested schema)weight(Number) Вес шарда.
Nested Schema for status.cluster.shards.endpoints
Заголовок раздела «Nested Schema for status.cluster.shards.endpoints»Read-Only:
address(Attributes) Описание эндпойнта кластера в пользовательской сети (VPC). (see below for nested schema)external_address(Attributes) Описание внешнего доступа к кластеру. (see below for nested schema)
Nested Schema for status.cluster.shards.endpoints.address
Заголовок раздела «Nested Schema for status.cluster.shards.endpoints.address»Read-Only:
dns(Attributes List) Доменные имена. (see below for nested schema)ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.subnet(String) Идентификатор подсети облачной сети, к которой принадлежит адрес.
Nested Schema for status.cluster.shards.endpoints.address.dns
Заголовок раздела «Nested Schema for status.cluster.shards.endpoints.address.dns»Read-Only:
name(String) DNS-имя.
Nested Schema for status.cluster.shards.endpoints.external_address
Заголовок раздела «Nested Schema for status.cluster.shards.endpoints.external_address»Read-Only:
ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.
Nested Schema for status.cluster.shards.instances
Заголовок раздела «Nested Schema for status.cluster.shards.instances»Read-Only:
endpoints(Attributes List) Список эндпойнтов для подключения к инстансу. (see below for nested schema)health(String)id(String) Идентификатор инстанса шарда.zone(String) Зона доступности.
Nested Schema for status.cluster.shards.instances.endpoints
Заголовок раздела «Nested Schema for status.cluster.shards.instances.endpoints»Read-Only:
address(Attributes) Описание эндпойнта кластера в пользовательской сети (VPC). (see below for nested schema)external_address(Attributes) Описание внешнего доступа к кластеру. (see below for nested schema)
Nested Schema for status.cluster.shards.instances.endpoints.address
Заголовок раздела «Nested Schema for status.cluster.shards.instances.endpoints.address»Read-Only:
dns(Attributes List) Доменные имена. (see below for nested schema)ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.subnet(String) Идентификатор подсети облачной сети, к которой принадлежит адрес.
Nested Schema for status.cluster.shards.instances.endpoints.address.dns
Заголовок раздела «Nested Schema for status.cluster.shards.instances.endpoints.address.dns»Read-Only:
name(String) DNS-имя.
Nested Schema for status.cluster.shards.instances.endpoints.external_address
Заголовок раздела «Nested Schema for status.cluster.shards.instances.endpoints.external_address»Read-Only:
ip_address(String) Выделенный адрес.ref(String) Идентификатор адреса в VPC.
Nested Schema for status.cluster.shards.resources
Заголовок раздела «Nested Schema for status.cluster.shards.resources»Required:
disk(Attributes) Параметры диска. (see below for nested schema)vm_type(String) Тип виртуальной машины, описывающий ресурсы (vCPU, memory).
Nested Schema for status.cluster.shards.resources.disk
Заголовок раздела «Nested Schema for status.cluster.shards.resources.disk»Required:
size(String) Размер диска.type(String) Тип диска.
Optional:
iops(Number) IOPS.
Nested Schema for status.cluster.storage
Заголовок раздела «Nested Schema for status.cluster.storage»Optional:
cache_max_size(String) Максимальный размер кеша объектного хранилища, расположенный на SSD.data_caching_enabled(Boolean) Включить кеширование данных с объектного хранилища на сетевых SSD дисках.hybrid_storage_enabled(Boolean) Включить гибридное хранилище (hot SSD + cold S3).max_data_part_size_ssd(String) Максимальный размер части данных в байтах, который может храниться на дисках тома (SSD).move_factor(Number) Соотношение свободного дискового пространства на SSD дисках кластера (от 0.01 до 1) Когда это соотношение превышает значение параметра конфигурации, ClickHouse начинает перемещать данные в следующий том по порядку.
Nested Schema for status.ready
Заголовок раздела «Nested Schema for status.ready»Read-Only:
message(String) Описание статуса.state(String) Состояние ресурса.