Spec-Zone.ru › Ansible 2.5

cs_portforward - Управляет правилами переадресации портов в облаках на базе Apache CloudStack.

Новая версия с 2.0.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Статус
    • Автор

Описание

  • Создаёт, обновляет и удаляет правила переадресации портов.

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • python >= 2.6
  • cs >= 0.6.10

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
account
Аккаунт, к которому относится vm.
api_http_method
    Варианты:
  • get
  • post
HTTP-метод, используемый для запроса к API-точке.
Если не задано, рассматривается переменная среды CLOUDSTACK_METHOD.
В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания.
Значение по умолчанию get, если не указано.
api_key
API-ключ CloudStack API.
Если не задано, рассматривается переменная среды CLOUDSTACK_KEY.
В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания.
api_region Значение по умолчанию:
cloudstack
Имя раздела ini в файле cloustack.ini.
Если не задано, рассматривается переменная среды CLOUDSTACK_REGION.
api_secret
Секретный ключ CloudStack API.
Если не задано, рассматривается переменная среды CLOUDSTACK_SECRET.
В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания.
api_timeout
Таймаут HTTP в секундах.
Если не задано, рассматривается переменная среды CLOUDSTACK_TIMEOUT.
В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания.
Значение по умолчанию 10 секунд, если не указано.
api_url
URL CloudStack API, например, https://cloud.example.com/client/api.
Если не задано, рассматривается переменная среды CLOUDSTACK_ENDPOINT.
В качестве последнего варианта значение берется из файла конфигурации ini, см. также примечания.
domain
Домен, к которому относится vm.
ip_address
обязательно
Публичный IP-адрес, которому назначено правило.
network
(добавлено в 2.3)
Имя сети.
open_firewall Значение по умолчанию:
нет
Указывает, следует ли создавать правило брандмауэра для публичного порта при создании нового правила.
Для управления правилами брандмауэра используйте cs_firewall.
poll_async Значение по умолчанию:
да
Ожидать завершения асинхронных задач.
private_end_port
Конечный частный порт для этого правила.
Если не указано, равно private_port.
private_port
обязательно
Начальный частный порт для этого правила.
project
Имя проекта, в котором находится vm.
protocol
    Варианты:
  • tcp ←
  • udp
Протокол правила переадресации портов.
public_end_port
Конечный публичный порт для этого правила.
Если не указано, равно public_port.
public_port
обязательно
Начальный публичный порт для этого правила.
state
    Варианты:
  • present ←
  • absent
Состояние правила переадресации портов.
tags
(добавлено в 2.4)
Список тегов. Теги представляют собой список словарей, имеющих ключи key и value.
Для удаления всех тегов установите пустой список, например, tags: [].

псевдонимы: tag
vm
Имя виртуальной машины, для которой создаётся правило переадресации портов.
Обязательно, если state=present.
vm_guest_ip Значение по умолчанию:
нет
Вторичный IP-адрес гостевой сети виртуальной машины для правила переадресации портов.
vpc
(добавлено в 2.3)
Имя VPC.
zone
Имя зоны, в которой находится виртуальная машина.
Если не задано, используется зона по умолчанию.

Примечания

Примечание

  • Ansible использует метод конфигурации библиотеки cs, если учетные данные не предоставлены аргументами api_url, api_key, api_secret. Конфигурация считывается из нескольких мест в следующем порядке. CLOUDSTACK_ENDPOINT, CLOUDSTACK_KEY, CLOUDSTACK_SECRET и CLOUDSTACK_METHOD. CLOUDSTACK_TIMEOUT переменные окружения. CLOUDSTACK_CONFIG переменная окружения, указывающая на файл .ini. Файл cloudstack.ini в текущей рабочей директории. Файл .cloudstack.ini в домашней директории пользователя. Допускается указание нескольких учетных данных и конечных точек с помощью разделов ini в файле cloudstack.ini. Используйте аргумент api_region для выбора имени раздела, раздел по умолчанию cloudstack. Дополнительную информацию можно найти на странице https://github.com/exoscale/cs.
  • Подробное руководство по модулям CloudStack можно найти в Руководстве по облакам CloudStack.
  • Этот модуль поддерживает режим проверки.

Примеры

- name: 1.2.3.4:80 -> web01:8080
  local_action:
    module: cs_portforward
    ip_address: 1.2.3.4
    vm: web01
    public_port: 80
    private_port: 8080

- name: forward SSH and open firewall
  local_action:
    module: cs_portforward
    ip_address: '{{ public_ip }}'
    vm: '{{ inventory_hostname }}'
    public_port: '{{ ansible_ssh_port }}'
    private_port: 22
    open_firewall: true

- name: forward DNS traffic, but do not open firewall
  local_action:
    module: cs_portforward
    ip_address: 1.2.3.4
    vm: '{{ inventory_hostname }}'
    public_port: 53
    private_port: 53
    protocol: udp

- name: remove ssh port forwarding
  local_action:
    module: cs_portforward
    ip_address: 1.2.3.4
    public_port: 22
    private_port: 22
    state: absent

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
id
строка
успешно
UUID публичного IP-адреса.

Пример:
a6f7a5fc-43f8-11e5-a151-feff819cdc9f
ip_address
строка
успешно
Публичный IP-адрес.

Пример:
1.2.3.4
network
строка
успешно
Имя сети.

Пример:
dmz
private_end_port
целое число
успешно
Конечный порт на IP-адресе виртуальной машины.

private_port
целое число
успешно
Начальный порт на IP-адресе виртуальной машины.

Пример:
80
protocol
строка
успешно
Протокол.

Пример:
tcp
public_end_port
целое число
успешно
Конечный порт на публичном IP-адресе.

Пример:
80
public_port
целое число
успешно
Начальный порт на публичном IP-адресе.

Пример:
80
tags
список
успешно
Теги, относящиеся к переадресации портов.

vm_display_name
строка
успешно
Имя отображения виртуальной машины.

Пример:
web-01
vm_guest_ip
строка
успешно
IP виртуальной машины.

Пример:
10.101.65.152
vm_name
строка
успешно
Имя виртуальной машины.

Пример:
web-01
vpc
строка
успешно
Имя VPC.

Пример:
my_vpc


Статус

Этот модуль помечен как stableinterface, что означает, что поддерживающие этот модуль гарантируют, что не будут вноситься несовместимые изменения интерфейса.

Автор

  • René Moser (@resmo)

Подсказка

Если вы заметили какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/cs_portforward_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API