cs_portforward - Управляет правилами переадресации портов в облаках на основе Apache CloudStack.
Новая версия с 2.0.
- Обзор
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Обзор
- Создание, обновление и удаление правил переадресации портов.
Требования (к хосту, на котором выполняется модуль)
- python >= 2.6
- cs >= 0.6.10
Параметры
| параметр | обязательно | по умолчанию | значения | комментарии |
|---|---|---|---|---|
| account | нет | Аккаунт, к которому относится vm. | ||
| api_http_method | нет | get |
| Используемый HTTP-метод. |
| api_key | нет | Ключ API CloudStack API. | ||
| api_region | нет | cloudstack | Имя раздела ini в файле cloustack.ini. | |
| api_secret | нет | Секретный ключ CloudStack API. | ||
| api_timeout | нет | 10 | Таймаут HTTP-запроса. | |
| api_url | нет | URL CloudStack API, например https://cloud.example.com/client/api. | ||
| domain | нет | Домен, к которому относится vm. | ||
| ip_address | да | Общедоступный IP-адрес, которому назначено правило. | ||
| network (добавлен в 2.3)
| нет | Имя сети. | ||
| open_firewall | нет | Создавать ли правило брандмауэра для публичного порта при создании нового правила. Для управления правилами брандмауэра используйте cs_firewall. | ||
| poll_async | нет | True | Ожидать завершения асинхронных задач. | |
| private_end_port | нет | Конечный номер частного порта для правила. Если не указано, равно private_port. | ||
| private_port | да | Начальный номер частного порта для правила. | ||
| project | нет | Имя проекта, в котором находится vm. | ||
| protocol | нет | tcp |
| Протокол правила переадресации портов. |
| public_end_port | нет | Конечный номер публичного порта для правила. Если не указано, равно public_port. | ||
| public_port | да | Начальный номер публичного порта для правила. | ||
| state | нет | present |
| Состояние правила переадресации портов. |
| tags (добавлен в 2.4)
| нет | Список тегов. Теги — список словарей с ключами key и value. Для удаления всех тегов установите пустой список, например tags: []. псевдонимы: тег | ||
| vm | нет | Имя виртуальной машины, для которой создается правило переадресации портов. Требуется, если state=present. | ||
| vm_guest_ip | нет | Вторичный IP-адрес гостевой сетевой карты виртуальной машины для правила переадресации портов. | ||
| vpc (добавлен в 2.3)
| нет | Имя VPC. | ||
| zone | нет | Имя зоны, в которой находится виртуальная машина. Если не указано, используется зона по умолчанию. |
Примеры
# 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
# 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
# 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
# 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 |
Примечания
Примечание
- 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 можно найти по адресу http://docs.ansible.com/ansible/guide_cloudstack.html
- Этот модуль поддерживает режим проверки.
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики гарантируют отсутствие несовместимых изменений интерфейса.
Для получения помощи в разработке модулей, если вы заинтересованы, пожалуйста, прочитайте Информацию сообщества и вклад, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/cs_portforward_module.html