|
|
|
|
_Resource_ функция **decort_pfw** служит для управления правилами трансляции сетевых портов для виртуальных серверов.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Аргументы
|
|
|
|
|
_Resource_ функция **decort_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_ функции **decort_pfw**:
|
|
|
|
|
```terraform
|
|
|
|
|
resource "decort_pfw" "my_pfw" {
|
|
|
|
|
# ID виртуальной машины
|
|
|
|
|
# Обязательный параметр
|
|
|
|
|
# int
|
|
|
|
|
compute_id = 11269
|
|
|
|
|
|
|
|
|
|
# Начальный порт правила
|
|
|
|
|
# Обязательный параметр
|
|
|
|
|
# int
|
|
|
|
|
public_port_start = 200
|
|
|
|
|
|
|
|
|
|
# Внутренний порт
|
|
|
|
|
# Обязательный параметр
|
|
|
|
|
# int
|
|
|
|
|
local_base_port = 22
|
|
|
|
|
|
|
|
|
|
# Протокол соединения (tcp / udp)
|
|
|
|
|
# Обязательный параметр
|
|
|
|
|
# string
|
|
|
|
|
proto = "tcp"
|
|
|
|
|
|
|
|
|
|
# Конечный порт (включительно)
|
|
|
|
|
# Опциональный параметр
|
|
|
|
|
# int
|
|
|
|
|
public_port_end = 21321
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# once the above directive completes, pfw will be accessible
|
|
|
|
|
# as decort_pfw.my_pfw
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/wiki-terraform-provider-decort/src/branch/main/4.5.2/04.02-Инициализация-Terraform-провайдера-DECORT.md)).
|
|
|
|
|
|
|
|
|
|
После успешного завершения такого вызова **decort_pfw** в переменной `decort_pfw.my_pfw` будут сохранены возвращаемые значения. Получить ip адрес можно, обратившись к переменной как: `decort_pfw.my_pfw.local_ip`
|