|
|
|
|
_Resource_ функция **dynamix_pfw** служит для управления правилами трансляции сетевых портов для виртуальных серверов.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Аргументы
|
|
|
|
|
_Resource_ функция **dynamix_pfw** для создания ресурса принимает следующие аргументы:
|
|
|
|
|
|
|
|
|
|
| Аргумент | Тип | Обязательный | Описание |
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
| proto | string | :heavy_check_mark: | Сетевой протокол<br/>возможные значения: "tcp", "udp" |
|
|
|
|
|
| local_base_port | int | :heavy_check_mark: | Номер внутреннего базового порта<br/>возможные значения:<br/>целые числа от 1 до 65535 |
|
|
|
|
|
| compute_id | int | :heavy_check_mark: | ID compute экземпляра. |
|
|
|
|
|
| public_port_start | int | :heavy_check_mark: | Внешний начальный номер порта для правила (начало диапазона).<br/>возможные значения:<br/>целые числа от 1 до 65535 |
|
|
|
|
|
| public_port_end | int | :x: | Внешний конечный номер порта для правила (конец диапазона).<br/>возможные значения:<br/>целые числа от 1 до 65535 |
|
|
|
|
|
|
|
|
|
|
## Возвращаемые значения
|
|
|
|
|
| Аргумент | Тип | Описание |
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
| local_ip | string | IP адрес вычислительного (compute) экземпляра |
|
|
|
|
|
| proto | string | Сетевой протокол |
|
|
|
|
|
| local_base_port | int | Номер внутреннего базового порта |
|
|
|
|
|
| compute_id | int | ID compute экземпляра. |
|
|
|
|
|
| public_port_start | int | Внешний начальный номер порта для правила (начало диапазона). |
|
|
|
|
|
| public_port_end | int | Внешний конечный номер порта для правила (конец диапазона). |
|
|
|
|
|
|
|
|
|
|
## Пример использования
|
|
|
|
|
Пример вызова _resource_ функции **dynamix_pfw**:
|
|
|
|
|
```terraform
|
|
|
|
|
resource "dynamix_pfw" "pfw" {
|
|
|
|
|
#id виртуальной машины
|
|
|
|
|
#обязательный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
compute_id = 11269
|
|
|
|
|
|
|
|
|
|
#начальный порт правила
|
|
|
|
|
#обязательный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
public_port_start = 200
|
|
|
|
|
|
|
|
|
|
#внутренний порт
|
|
|
|
|
#обязательный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
local_base_port = 22
|
|
|
|
|
|
|
|
|
|
#протокол соединения (tcp / udp)
|
|
|
|
|
#обязательный параметр
|
|
|
|
|
##тип - строка
|
|
|
|
|
proto = "tcp"
|
|
|
|
|
|
|
|
|
|
#конечный порт (включительно)
|
|
|
|
|
#опциональный параметр
|
|
|
|
|
#тип - целое число
|
|
|
|
|
public_port_end = 21321
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DYNAMIX см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.2.0/04.02-Инициализация-Terraform-провайдера-DYNAMIX.md)).
|
|
|
|
|
|
|
|
|
|
После успешного завершения такого вызова **dynamix_pfw** в переменной `dynamix_pfw.my_pfw` будут сохранены возвращаемые значения. Получить ip адрес можно, обратившись к переменной как: `dynamix_pfw.my_pfw.local_ip`
|