Перейти к содержимому

Egress (Many-to-Many) NAT-шлюз — механизм для исходящего трафика, при котором несколько внутренних IP-адресов сопоставляются с одним или несколькими внешними IP-адресами

terraform
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_external_address" "external_address" {
external_address = var.external_address_name
}
resource "mws_vpc_egress_nat" "example_egress_nat" {
egress_nat = "example-egress-nat"
network = mws_vpc_network.network.network
metadata = {
description = "This is an example Egress NAT resource"
display_name = "Example Egress NAT"
}
external = {
addresses = [
{
ref = mws_vpc_external_address.external_address.metadata.id
}
]
}
internal = {
subnets = [mws_vpc_subnet.subnet.metadata.id]
}
}
variable "network_name" {
type = string
default = "my-network"
description = "VPC network name"
}
variable "subnet_name" {
type = string
default = "my-subnet"
description = "Base name for subnets"
}
variable "subnet_cidr" {
type = string
default = "192.168.0.0/17"
description = "CIDR for subnet"
}
variable "external_address_name" {
type = string
default = "my-test-external-address"
description = "External address name"
}
  • egress_nat (String) Имя Egress NAT
  • external (Attributes) Группирующий элемент для всего, что касается внешней части (ресурсов, доступных извне). (see below for nested schema)
  • internal (Attributes) Группирующий элемент для всего, что касается внутренних ресурсов. (see below for nested schema)
  • network (String) Имя сети
  • kind (String)
  • metadata (Attributes) Набор общих для всех пользовательских объектов атрибутов. Может быть расширен атрибутами, специфичными для контейнеров. (see below for nested schema)
  • port_allocation (Attributes) Описывает настройки управления портами. (see below for nested schema)
  • project (String) Путь к проекту
  • timeouts (Attributes) (see below for nested schema)
  • id (String) The ID of this resource.
  • status (Attributes) Описывает статус Egress (Many-to-Many) NAT-шлюза. (see below for nested schema)

Required:

  • addresses (Attributes List) Список спецификаций внешних адресов, через которых будет осуществляться трансляция. (see below for nested schema)

Optional:

  • ref (String) Относительная ссылка на статический внешний адрес.
  • spec (Attributes) Спецификация внешнего адреса. (see below for nested schema)

Optional:

  • nat_gateway (String) Шлюз, к которому относится адрес. Если шлюз не указан, для трансляции IP-адресов используется шлюз по умолчанию для выхода в интернет (ref=natGateways/internet-gateway).

Required:

  • subnets (List of String) Коллекция относительных ссылок на подсети, для которых будет осуществляться трансляция.

Optional:

  • description (String) Описание ресурса
  • display_name (String) Отображаемое имя свойства
  • name (String, Deprecated) Обязательное уникальное, глобально или в пределах проекта, имя. Используется в качестве части составного идентификатора объекта.

Read-Only:

  • create_time (String) Дата создания объекта
  • delete_time (String) Время запроса на удаление ресурса
  • id (String) ID свойства
  • purge_time (String) Время удаления ресурса
  • usages (Attributes List) Связи с другими ресурсами. В зависимости от типа связи, операции над ресурсом могут быть ограничены (see below for nested schema)

Read-Only:

  • name (String) Имя связи, требуется для модификации коллекции
  • resource (String) Ссылка на ресурс
  • usage_type (String) Тип связи. Помимо стандартных own и use могут быть добавлены специализированные типы для конкретных сервисов

Required:

  • ports_per_client (String) Диапазон количества портов, которые может использовать один клиент.

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).

Read-Only:

  • external (Attributes) Группирующий элемент для всего что, касается внешней части (ресурсов, доступных извне). (see below for nested schema)
  • internal (Attributes) Группирующий элемент для всего, что касается внутренних ресурсов. (see below for nested schema)
  • port_allocation (Attributes) Описывает примененные настройки управления портами. (see below for nested schema)
  • ready (Attributes) Информация о статусе реконсиляции (see below for nested schema)

Read-Only:

  • addresses (Attributes List) Список спецификаций внешних адресов, через которых будет осуществляться трансляция. (see below for nested schema)

Read-Only:

  • ip_address (String) Значение IP адреса.
  • ref (String) Относительная ссылка на статический адрес.

Read-Only:

  • subnets (Attributes List) Список статусов подсетей, для которых будет осуществляться трансляция. (see below for nested schema)

Read-Only:

  • cidr (String) Маска подсети.
  • ref (String) Абсолютная ссылка на подсеть.

Read-Only:

  • ports_per_client (String) Диапазон количества портов, которые может использовать один клиент.

Read-Only:

  • message (String) Описание статуса
  • state (String) Состояние ресурса