Spec-Zone.ru › Ansible 2.10

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

Примечание

Этот плагин входит в коллекцию ngine_io.cloudstack (версия 1.1.0).

Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack.

Для использования в книге задач укажите: ngine_io.cloudstack.cs_portforward.

Новое в версии 0.1.0: модуля ngine_io.cloudstack

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

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

Требования

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

  • python >= 2.6
  • cs >= 0.9.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
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, см. также примечания.
api_verify_ssl_cert
строка
Файл сертификата CA.
Если не указано, используется переменная окружения CLOUDSTACK_VERIFY.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
Значение по умолчанию - null, если не указано.
domain
строка
Домен, к которому относится vm.
ip_address
строка / обязательно
Общедоступный IP-адрес, которому присвоено правило.
network
строка
Имя сети. Требуется при переадресации портов в VPC.
open_firewall
логическое
    Варианты:
  • нет ←
  • да
Указывает, нужно ли создавать правило брандмауэра для общедоступного порта при создании нового правила.
Не поддерживается при переадресации портов в VPC.
Используйте модуль 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
список / элементы=словарь
Список тегов. Теги — список словарей с ключами key и value.
Для удаления всех тегов задайте пустой список, например, tags: [].

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

Примечания

Примечание

  • Ansible использует метод конфигурации библиотеки cs, если учетные данные не предоставлены параметрами api_url, api_key, api_secret. Конфигурация считывается из нескольких мест в указанном порядке. Переменные окружения CLOUDSTACK_ENDPOINT, CLOUDSTACK_KEY, CLOUDSTACK_SECRET и CLOUDSTACK_METHOD. Переменная окружения CLOUDSTACK_TIMEOUT, указывающая на файл CLOUDSTACK_CONFIG. Файл 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
  ngine_io.cloudstack.cs_portforward:
    ip_address: 1.2.3.4
    vm: web01
    public_port: 80
    private_port: 8080

- name: forward SSH and open firewall
  ngine_io.cloudstack.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
  ngine_io.cloudstack.cs_portforward:
    ip_address: 1.2.3.4
    vm: '{{ inventory_hostname }}'
    public_port: 53
    private_port: 53
    protocol: udp

- name: remove ssh port forwarding
  ngine_io.cloudstack.cs_portforward:
    ip_address: 1.2.3.4
    public_port: 22
    private_port: 22
    state: absent

- name: forward SSH in backend tier of VPC
  ngine_io.cloudstack.cs_portforward:
    ip_address: '{{ public_ip }}'
    vm: '{{ inventory_hostname }}'
    public_port: '{{ ansible_ssh_port }}'
    private_port: 22
    vpc: myVPC
    network: backend

Возвращаемые значения

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

Ключ Результат Описание
id
string
успех
UUID публичного IP-адреса.

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

Пример:
1.2.3.4
network
string
успех
Имя сети.

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

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

Пример:
80
protocol
string
успех
Протокол.

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

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

Пример:
80
tags
list / elements=string
успех
Теги, связанные с переадресацией портов.

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

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

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

Пример:
web-01
vpc
string
успех
Имя VPC.

Пример:
my_vpc


Авторы

  • 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.10/collections/ngine_io/cloudstack/cs_portforward_module.html

Spec-Zone.ru

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