mws_nlb_nlb (Resource)
Заголовок раздела «mws_nlb_nlb (Resource)»Сетевой балансировщик нагрузки.
Примеры использования
Заголовок раздела «Примеры использования»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_vpc_address" "internal_address" { address = "${var.nlb_name}-internal" network = mws_vpc_network.network.network subnet = mws_vpc_subnet.subnet.metadata.id}
resource "mws_vpc_address" "backend_address1" { address = "${var.nlb_name}-backend1" network = mws_vpc_network.network.network subnet = mws_vpc_subnet.subnet.metadata.id}
resource "mws_vpc_address" "backend_address2" { address = "${var.nlb_name}-backend2" network = mws_vpc_network.network.network subnet = mws_vpc_subnet.subnet.metadata.id}
resource "mws_vpc_address_group" "backend_group" { address_group = "${var.nlb_name}-backend-group" network = mws_vpc_network.network.network
metadata = { display_name = "Backend Address Group" description = "Group of backend servers for NLB" }
addresses = [ { ref = mws_vpc_address.backend_address1.metadata.id }, { ref = mws_vpc_address.backend_address2.metadata.id } ]}
resource "mws_nlb_nlb" "example" { network = mws_vpc_network.network.network nlb = var.nlb_name
metadata = { display_name = "Example Internal Network Load Balancer" description = "NLB example with internal listener and backend group" }
listener = { internal = { address = { ref = mws_vpc_address.internal_address.metadata.id } } }
rules = [ { proto_port = "TCP:80" target_port = 8080
target_address_groups = [ { ref = mws_vpc_address_group.backend_group.metadata.id } ]
health_check = { protocol = { tcp = { port = 8080 } }
interval = "30s" timeout = "3s" healthy_threshold = 3 unhealthy_threshold = 3 } } ]}
variable "network_name" { type = string default = "nlb-example-network" description = "VPC network name"}
variable "subnet_name" { type = string default = "nlb-example-subnet" description = "VPC subnet name"}
variable "subnet_cidr" { type = string default = "192.168.0.0/16" description = "Subnet CIDR block"}
variable "nlb_name" { type = string default = "example-nlb" description = "Network load balancer name"}Required
Заголовок раздела «Required»listener(Attributes) Конфигурация IP-адреса, на котором балансировщик будет принимать запросы (see below for nested schema)network(String) Имя сетиnlb(String) Имя сетевого балансировщика нагрузкиrules(Attributes List) Правила балансировки нагрузки. Сочетание протокола и порта (поле protoPort) в каждом правиле должно быть уникальным в рамках одного балансировщика (see below for nested schema)
Optional
Заголовок раздела «Optional»kind(String)metadata(Attributes) Метаданные сетевого балансировщик нагрузки (see below for nested schema)project(String) Путь к проекту.timeouts(Attributes) (see below for nested schema)
Read-Only
Заголовок раздела «Read-Only»id(String) The ID of this resource.status(Attributes) Статус сетевого балансировщик нагрузки (see below for nested schema)
Nested Schema for listener
Заголовок раздела «Nested Schema for listener»Optional:
external(Attributes) Конфигурация IP-адреса внутреннего балансировщика (see below for nested schema)internal(Attributes) Конфигурация IP-адреса внутреннего балансировщика (see below for nested schema)
Nested Schema for listener.external
Заголовок раздела «Nested Schema for listener.external»Required:
address(Attributes) Описывает ссылку на внешний адрес или спецификацию внешнего адреса как дополнительный ресурс (see below for nested schema)
Nested Schema for listener.external.address
Заголовок раздела «Nested Schema for listener.external.address»Optional:
ref(String) Относительная ссылка на статический внешний IP-адресspec(Attributes) Спецификация внешнего IP-адреса (see below for nested schema)
Nested Schema for listener.external.address.spec
Заголовок раздела «Nested Schema for listener.external.address.spec»Optional:
nat_gateway(String) Шлюз, к которому относится адрес. Если шлюз не указан, для трансляции IP-адресов используется шлюз по умолчанию для выхода в интернет (ref=natGateways/internet-gateway)
Nested Schema for listener.internal
Заголовок раздела «Nested Schema for listener.internal»Required:
address(Attributes) Описывает ссылку на внутренний адрес или спецификацию внутреннего адреса как дополнительный ресурс (see below for nested schema)
Nested Schema for listener.internal.address
Заголовок раздела «Nested Schema for listener.internal.address»Optional:
ref(String) Относительная ссылка на статический внутренний адресspec(Attributes) Спецификация внутреннего адреса (see below for nested schema)
Nested Schema for listener.internal.address.spec
Заголовок раздела «Nested Schema for listener.internal.address.spec»Required:
subnet(String) Подсеть сети, к которой принадлежит адрес. В случае внутреннего адреса, он всегда принадлежит к некоторой подсети внутри сети
Optional:
dns(Attributes List) Спецификация DNS для IP-адреса (see below for nested schema)ip_address(String) Значение IP адреса
IPv4- или IPv6-адрес
Nested Schema for listener.internal.address.spec.dns
Заголовок раздела «Nested Schema for listener.internal.address.spec.dns»Required:
name(String) DNS-имя виртуальной машины в MWS Cloud Platformptr(Boolean) Создать обратную DNS-записьttl(String) Продолжительность хранения DNS записи в кеше
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
Nested Schema for rules
Заголовок раздела «Nested Schema for rules»Required:
proto_port(String) Порт балансировщика и протокол по который клиенты отправляют запросы в рамках этого правила. Поддерживаются протоколы TCP и UDP. В рамках одного балансировщика это поле должно быть уникальным среди всех его правилtarget_address_groups(Attributes List) Адреса бэкенд-серверов, на которые балансировщик направляет запросы (see below for nested schema)
Optional:
health_check(Attributes) Настройка проверки работоспособности виртуальных машин (see below for nested schema)target_port(Number) Целевой порт бэкенд-серверов, на которые балансировщик перенаправляет запросы. Если не указан, то считается равным порту балансировщика
Nested Schema for rules.target_address_groups
Заголовок раздела «Nested Schema for rules.target_address_groups»Optional:
ref(String) Ссылка на группу адресовspec(Attributes) Спецификация группы адресов (see below for nested schema)
Nested Schema for rules.target_address_groups.spec
Заголовок раздела «Nested Schema for rules.target_address_groups.spec»Required:
addresses(Attributes List) Спецификации или ссылки на существующие внутренние адреса (see below for nested schema)
Optional:
region(String) Регион, которому принадлежит группа группа IP-адресов
Nested Schema for rules.target_address_groups.spec.addresses
Заголовок раздела «Nested Schema for rules.target_address_groups.spec.addresses»Optional:
ref(String) Относительная ссылка на статический внутренний адресspec(Attributes) Спецификация внутреннего адреса (see below for nested schema)
Nested Schema for rules.target_address_groups.spec.addresses.spec
Заголовок раздела «Nested Schema for rules.target_address_groups.spec.addresses.spec»Required:
subnet(String) Подсеть сети, к которой принадлежит адрес. В случае внутреннего адреса, он всегда принадлежит к некоторой подсети внутри сети
Optional:
dns(Attributes List) Спецификация DNS для IP-адреса (see below for nested schema)ip_address(String) Значение IP адреса
IPv4- или IPv6-адрес
Nested Schema for rules.target_address_groups.spec.addresses.spec.dns
Заголовок раздела «Nested Schema for rules.target_address_groups.spec.addresses.spec.dns»Required:
name(String) DNS-имя виртуальной машины в MWS Cloud Platformptr(Boolean) Создать обратную DNS-записьttl(String) Продолжительность хранения DNS записи в кеше
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
Nested Schema for rules.health_check
Заголовок раздела «Nested Schema for rules.health_check»Required:
interval(String) Интервал между проверками
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
protocol(Attributes) Конфигурация протокола проверки работоспособности (see below for nested schema)timeout(String) Таймаут запроса
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
Optional:
healthy_threshold(Number) Количество последовательных успешных проверок, после которого виртуальная машина считается работоспособнойunhealthy_threshold(Number) Количество последовательных проваленных проверок, после которого виртуальная машина считается неработоспособной
Nested Schema for rules.health_check.protocol
Заголовок раздела «Nested Schema for rules.health_check.protocol»Optional:
http(Attributes) Конфигурация проверки работоспособности по протоколу HTTP (see below for nested schema)https(Attributes) Конфигурация проверки работоспособности по протоколу HTTPS (see below for nested schema)tcp(Attributes) Конфигурация проверки работоспособности по протоколу TCP (see below for nested schema)
Nested Schema for rules.health_check.protocol.http
Заголовок раздела «Nested Schema for rules.health_check.protocol.http»Required:
path(String) URL-путь, на который будет отправляться запросport(Number) Порт виртуальной машины, на который будет отправляться запрос
Optional:
expected_code(Number) Ожидаемый HTTP-код ответа
Nested Schema for rules.health_check.protocol.https
Заголовок раздела «Nested Schema for rules.health_check.protocol.https»Required:
path(String) URL-путь, на который будет отправляться запросport(Number) Порт виртуальной машины, на который будет отправляться запрос
Optional:
expected_code(Number) Ожидаемый HTTP-код ответа
Nested Schema for rules.health_check.protocol.tcp
Заголовок раздела «Nested Schema for rules.health_check.protocol.tcp»Required:
port(Number) Порт виртуальной машины, на который будет отправляться запрос
Nested Schema for metadata
Заголовок раздела «Nested Schema for metadata»Optional:
description(String) Описание ресурсаdisplay_name(String) Отображаемое имя свойстваname(String, Deprecated) Обязательное уникальное, глобально или в пределах проекта, имя. Используется в качестве части составного идентификатора объекта
Read-Only:
create_time(String) Дата создания объекта
Дата в формате RFC3339. Пример: 2006-01-02T15:04:05Z07:00
delete_time(String) Время запроса на удаление ресурса
Дата в формате RFC3339. Пример: 2006-01-02T15:04:05Z07:00
id(String) ID свойстваpurge_time(String) Время удаления ресурса
Дата в формате RFC3339. Пример: 2006-01-02T15:04:05Z07:00
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 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:
active(Boolean) Состояние NLB: активен или не активенlistener(Attributes) Группирующий элемент для статуса адресов внешнего и внутреннего балансировщика (see below for nested schema)ready(Attributes) Информация о статусе реконсиляции (see below for nested schema)region(String) Регион, которому принадлежит балансировщик сетевой нагрузкиrules(Attributes List) Правила балансировки нагрузки (see below for nested schema)target_address_groups(Attributes) Группирующий элемент для статуса групп адресов балансировщика (see below for nested schema)
Nested Schema for status.listener
Заголовок раздела «Nested Schema for status.listener»Read-Only:
external(Attributes) Статус IP-адреса внешнего балансировщика (see below for nested schema)internal(Attributes) Статус IP-адреса внутреннего балансировщика (see below for nested schema)
Nested Schema for status.listener.external
Заголовок раздела «Nested Schema for status.listener.external»Read-Only:
address(Attributes) Статус IP-адреса внешнего балансировщика (see below for nested schema)
Nested Schema for status.listener.external.address
Заголовок раздела «Nested Schema for status.listener.external.address»Required:
ip_address(String) Значение IP адреса
IPv4- или IPv6-адрес
ref(String) Относительная ссылка на статический адрес
Nested Schema for status.listener.internal
Заголовок раздела «Nested Schema for status.listener.internal»Read-Only:
address(Attributes) Статус IP-адреса внутреннего балансировщика (see below for nested schema)
Nested Schema for status.listener.internal.address
Заголовок раздела «Nested Schema for status.listener.internal.address»Required:
ip_address(String) Значение IP адреса
IPv4- или IPv6-адрес
ref(String) Относительная ссылка на статический адрес
Nested Schema for status.ready
Заголовок раздела «Nested Schema for status.ready»Read-Only:
message(String) Описание статусаstate(String) Состояние ресурса
Nested Schema for status.rules
Заголовок раздела «Nested Schema for status.rules»Read-Only:
health_check(Attributes) Настройка проверки работоспособности виртуальных машин (see below for nested schema)proto_port(String) Порт балансировщика и протокол по который клиенты отправляют запросы в рамках этого правила. Поддерживаются протоколы TCP и UDP. В рамках одного балансировщика это поле должно быть уникальным среди всех его правилtarget_address_groups(Attributes List) Адреса бэкенд-серверов, на которые балансировщик направляет запросы (see below for nested schema)target_port(Number) Целевой порт бэкенд-серверов, на которые балансировщик перенаправляет запросы. Если не указан, то считается равным порту балансировщикаtarget_statuses(Attributes List) Статусы виртуальных машин, подключенных к сетевому балансировщику нагрузки (see below for nested schema)
Nested Schema for status.rules.health_check
Заголовок раздела «Nested Schema for status.rules.health_check»Read-Only:
healthy_threshold(Number) Количество последовательных успешных проверок, после которого виртуальная машина считается работоспособнойinterval(String) Интервал между проверками
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
protocol(Attributes) Конфигурация протокола проверки работоспособности (see below for nested schema)timeout(String) Таймаут запроса
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
unhealthy_threshold(Number) Количество последовательных проваленных проверок, после которого виртуальная машина считается неработоспособной
Nested Schema for status.rules.health_check.protocol
Заголовок раздела «Nested Schema for status.rules.health_check.protocol»Read-Only:
http(Attributes) Конфигурация проверки работоспособности по протоколу HTTP (see below for nested schema)https(Attributes) Конфигурация проверки работоспособности по протоколу HTTPS (see below for nested schema)tcp(Attributes) Конфигурация проверки работоспособности по протоколу TCP (see below for nested schema)
Nested Schema for status.rules.health_check.protocol.http
Заголовок раздела «Nested Schema for status.rules.health_check.protocol.http»Read-Only:
expected_code(Number) Ожидаемый HTTP-код ответаpath(String) URL-путь, на который будет отправляться запросport(Number) Порт виртуальной машины, на который будет отправляться запрос
Nested Schema for status.rules.health_check.protocol.https
Заголовок раздела «Nested Schema for status.rules.health_check.protocol.https»Read-Only:
expected_code(Number) Ожидаемый HTTP-код ответаpath(String) URL-путь, на который будет отправляться запросport(Number) Порт виртуальной машины, на который будет отправляться запрос
Nested Schema for status.rules.health_check.protocol.tcp
Заголовок раздела «Nested Schema for status.rules.health_check.protocol.tcp»Read-Only:
port(Number) Порт виртуальной машины, на который будет отправляться запрос
Nested Schema for status.rules.target_address_groups
Заголовок раздела «Nested Schema for status.rules.target_address_groups»Optional:
ref(String) Ссылка на группу адресовspec(Attributes) Спецификация группы адресов (see below for nested schema)
Nested Schema for status.rules.target_address_groups.spec
Заголовок раздела «Nested Schema for status.rules.target_address_groups.spec»Required:
addresses(Attributes List) Спецификации или ссылки на существующие внутренние адреса (see below for nested schema)
Optional:
region(String) Регион, которому принадлежит группа группа IP-адресов
Nested Schema for status.rules.target_address_groups.spec.addresses
Заголовок раздела «Nested Schema for status.rules.target_address_groups.spec.addresses»Optional:
ref(String) Относительная ссылка на статический внутренний адресspec(Attributes) Спецификация внутреннего адреса (see below for nested schema)
Nested Schema for status.rules.target_address_groups.spec.addresses.spec
Заголовок раздела «Nested Schema for status.rules.target_address_groups.spec.addresses.spec»Required:
subnet(String) Подсеть сети, к которой принадлежит адрес. В случае внутреннего адреса, он всегда принадлежит к некоторой подсети внутри сети
Optional:
dns(Attributes List) Спецификация DNS для IP-адреса (see below for nested schema)ip_address(String) Значение IP адреса
IPv4- или IPv6-адрес
Nested Schema for status.rules.target_address_groups.spec.addresses.spec.dns
Заголовок раздела «Nested Schema for status.rules.target_address_groups.spec.addresses.spec.dns»Required:
name(String) DNS-имя виртуальной машины в MWS Cloud Platformptr(Boolean) Создать обратную DNS-записьttl(String) Продолжительность хранения DNS записи в кеше
Период времени. Поддерживаются следующие форматы:
- ISO 8601: P(n)DT(n)H(n)M(n)S. Допустимые единицы измерения: дни (“D”), часы (“H”), минуты (“M”), секунды (“S”). Только секунды могут быть дробными
- Простой формат. Допустимые единицы измерения: “d”, “h”, “m”, “s”, “ms”, “us”, “ns”. Величины должны следовать по убыванию единиц измерения
- Число в секундах
Отрицательные значения обозначаются префиксом ”-”, в простом формате могут быть ограничены скобками. Регистр и пробелы игнорируются
Nested Schema for status.rules.target_statuses
Заголовок раздела «Nested Schema for status.rules.target_statuses»Read-Only:
address(String) Cсылка на IP-адрес виртуальной машиныstate(String) Состояние виртуальной машины
Nested Schema for status.target_address_groups
Заголовок раздела «Nested Schema for status.target_address_groups»Read-Only:
configured(Attributes List) Группы адресов, подключенные к балансировщику (see below for nested schema)preparing(Attributes List) Статус групп адресов, подключенных к внутреннему балансировщику (see below for nested schema)stale(Attributes List) Группы адресов, которые были отключены от балансировщика (see below for nested schema)
Nested Schema for status.target_address_groups.configured
Заголовок раздела «Nested Schema for status.target_address_groups.configured»Read-Only:
ref(String) Ссылка на группу адресов
Nested Schema for status.target_address_groups.preparing
Заголовок раздела «Nested Schema for status.target_address_groups.preparing»Read-Only:
ref(String) Ссылка на группу адресов
Nested Schema for status.target_address_groups.stale
Заголовок раздела «Nested Schema for status.target_address_groups.stale»Read-Only:
ref(String) Ссылка на группу адресов