azure_rm_iothub – Управление центром Azure IoT
Новая версия с 2.9.
Обзор
- Создание, удаление центра Azure IoT.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory, а не с сервисным принципалом. | ||
| adfs_authority_url строка добавлен в 2.6 | URL-адрес авторизации Azure AD. Используйте при аутентификации с помощью имени пользователя/пароля и собственной авторизацией ADFS. | ||
| api_profile строка добавлен в 2.5 | По умолчанию: "latest" | Выбирает профиль API для взаимодействия с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать Azure Stack. | |
| append_tags логическое |
| Управляет тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам. При каноническом значении любые теги, отсутствующие в параметре тегов, будут удалены из метаданных объекта. | |
| auth_source строка добавлен в 2.5 |
| Управляет источником учетных данных для аутентификации. Если не указано, будет использована переменная среды ANSIBLE_AZURE_AUTH_SOURCE и по умолчанию auto , если переменная не определена.auto будет следовать стандартному приоритету параметров модуля -> переменных среды -> профиля по умолчанию в файле учетных данных ~/.azure/credentials.При установке в значение cli, учетные данные будут взяты из профиля Azure CLI по умолчанию.Также может быть задано через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.При установке в значение msi, хост-машина должна быть Azure-ресурсом с включённым расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам; в противном случае выбирается первая подписка.msi был добавлен в Ansible 2.6. | |
| cert_validation_mode строка добавлен в 2.5 |
| Управляет поведением проверки сертификата для Azure-точек входа. По умолчанию все модули будут проверять серверный сертификат, но при использовании HTTPS-прокси или при работе с Azure Stack может потребоваться отключить это поведение, передав ignore. Также может быть задано через профиль файла учетных данных или переменную среды AZURE_CERT_VALIDATION. | |
| client_id строка | Идентификатор клиента Azure. Используйте при аутентификации с помощью сервисного принципала. | ||
| cloud_environment строка добавлен в 2.4 | По умолчанию: "AzureCloud" | Для облачных сред, отличных от общедоступного облака США, используется имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment) или URL-адрес точки входа для обнаружения метаданных (требуется для Azure Stack). Также может быть задано через профиль файла учетных данных или переменную среды AZURE_CLOUD_ENVIRONMENT. | |
| enable_file_upload_notifications логическое |
| Уведомления о загрузке файлов включены, если установлено в значение True. | |
| event_endpoint словарь | Свойство точки входа Event Hub. | ||
| partition_count целое число | Количество разделов для приема сообщений «устройство — облако» в точке входа Event Hub. Значение по умолчанию 2. | ||
| retention_time_in_days целое число | Срок хранения сообщений «устройство — облако» в днях. Значение по умолчанию 1. | ||
| ip_filters список | Настройка правил для отклонения или принятия трафика со специфических IPv4-адресов. | ||
| action строка / обязательно |
| Требуемое действие для запросов, захваченных этим правилом. | |
| ip_mask строка / обязательно | Строка, содержащая диапазон IP-адресов в нотации CIDR для правила. | ||
| name строка / обязательно | Имя фильтра. | ||
| location строка | Расположение IoT Hub. | ||
| name строка / обязательно | Имя IoT Hub. | ||
| password строка | Пароль пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory, а не с сервисным принципалом. | ||
| profile строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | ||
| resource_group строка / обязательно | Имя группы ресурсов. | ||
| routes список | Маршрутизация сообщений «устройство — облако» на точки входа, ориентированные на службу. | ||
| condition строка | Выражение запроса для маршрутизации, которое выполняется над свойствами приложения сообщения, системными свойствами, телом сообщения, тегами двойника устройства и свойствами двойника устройства, чтобы определить, соответствует ли оно точке входа. Дополнительную информацию о построении запроса см. на странице https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-routing-query-syntax
| ||
| enabled логическое / обязательно |
| Включить или отключить маршрут. | |
| endpoint_name строка / обязательно | Имя точки входа в routing_endpoints, куда IoT Hub отправляет сообщения, соответствующие запросу. | ||
| name строка / обязательно | Имя маршрута. | ||
| source строка / обязательно |
| Источник потока данных, который будет обработан. | |
| routing_endpoints список | Пользовательские точки входа. | ||
| connection_string строка / обязательно | Строка подключения к пользовательской точке входа. Строка подключения должна иметь права отправки. | ||
| container строка | Имя контейнера пользовательской точки входа, когда resource_type=storage. | ||
| кодировка строка | Кодировка сообщения, когда resource_type=storage. | ||
| имя строка / обязательно | Имя пользовательского конечной точки. | ||
| группа_ресурсов строка | Группа ресурсов конечной точки. По умолчанию совпадает с группа_ресурсов. | ||
| тип_ресурса строка / обязательно |
| Тип ресурса пользовательской конечной точки. | |
| подписка строка | Идентификатор подписки на конечную точку. По умолчанию совпадает с подпиской. | ||
| секрет строка | Секрет Azure-клиента. Используйте при аутентификации с помощью принципала службы. | ||
| sku строка |
| Ценовой уровень для Azure IoT Hub. Обратите внимание, что в каждой подписке разрешена только одна бесплатная инстанция IoT Hub. Если количество бесплатных инстанций превысит одну, будет выброшено исключение. По умолчанию s1 при создании. | |
| состояние строка |
| Состояние IoT Hub. Используйте present для создания или обновления IoT Hub и absent для удаления IoT Hub. | |
| идентификатор_подписки строка | Ваш идентификатор подписки Azure. | ||
| метки словарь | Словарь пар "строка:строка" для назначения метаданных объекту. Метаданные метки объекта будут обновлены любыми предоставленными значениями. Для удаления меток установите параметр append_tags в значение false. | ||
| аренда строка | Идентификатор аренды Azure. Используйте при аутентификации с помощью принципала службы. | ||
| единица целое число | Единицы в вашем IoT Hub. По умолчанию 1. | ||
Примечания
Примечание
- Для аутентификации с Azure вы можете передать параметры, установить переменные среды, использовать профиль, сохраненный в ~/.azure/credentials, или войти в систему перед выполнением задач или игры с помощью
az login. - Аутентификация также возможна с помощью принципала службы или пользователя Active Directory.
- Для аутентификации через принципала службы передайте идентификатор подписки, идентификатор клиента, секрет и арендатор или установите переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации через пользователя Active Directory передайте ad_user и пароль или установите AZURE_AD_USER и AZURE_PASSWORD в среде.
- В качестве альтернативы учетные данные могут храниться в ~/.azure/credentials. Это файл ini, содержащий раздел [default] и следующие ключи: идентификатор подписки, идентификатор клиента, секрет и арендатор или идентификатор подписки, ad_user и пароль. Также можно добавить дополнительные профили. Укажите профиль, передав профиль или установив AZURE_PROFILE в среде.
См. также
См. также
- Вход с помощью Azure CLI
- Как войти в систему с помощью команды
az login.
Примеры
- name: Create a simplest IoT hub
azure_rm_iothub:
name: Testing
resource_group: myResourceGroup
- name: Create an IoT hub with route
azure_rm_iothub:
resource_group: myResourceGroup
name: Testing
routing_endpoints:
- connection_string: "Endpoint=sb://qux.servicebus.windows.net/;SharedAccessKeyName=quux;SharedAccessKey=****;EntityPath=myQueue"
name: foo
resource_type: queue
resource_group: myResourceGroup1
routes:
- name: bar
source: device_messages
endpoint_name: foo
enabled: yes
Значения возврата
Общие значения возврата описаны здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращаемое значение | Описание | ||
|---|---|---|---|---|
| cloud_to_device complex | success | Свойства сообщения с облака на устройство. | ||
| max_delivery_count integer | success | Количество попыток IoT-хаба доставить сообщение в очередь обратной связи. См. https://docs.microsoft.com/ru-ru/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. Пример: 10 | ||
| ttl_as_iso8601 string | success | Период времени, в течение которого сообщение доступно для потребления, прежде чем оно будет просрочено IoT-хабом. См. https://docs.microsoft.com/ru-ru/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages. Пример: 1:00:00 | ||
| enable_file_upload_notifications boolean | success | Включены ли уведомления о загрузке файлов. Пример: True | ||
| event_endpoints complex | success | Встроенный конечный пункт для доставки сообщений устройства. | ||
| endpoint string | success | Конечный пункт, совместимый с Event Hub. Пример: sb://iothub-ns-testing-1478811-9bbc4a15f0.servicebus.windows.net/ | ||
| partition_count integer | success | Количество разделов для получения сообщений устройство-облако в конечном пункте, совместимом с Event Hub. См. https://docs.microsoft.com/ru-ru/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages. Пример: 2 | ||
| partition_ids list | success | Список идентификаторов разделов для конечного пункта события. Пример: ['0', '1'] | ||
| retention_time_in_days integer | success | Время хранения сообщений устройство-облако в днях. См. https://docs.microsoft.com/ru-ru/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages. Пример: 1 | ||
| host_name string | success | Хост IoT-хаба. Пример: testing.azure-devices.net | ||
| id string | success | Идентификатор ресурса IoT-хаба. Пример: /subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/Testing | ||
| ip_filters complex | success | Настройка правил для отклонения или принятия трафика от определенных IPv4-адресов. | ||
| action string | success | Желаемое действие для запросов, перехваченных этим правилом. Пример: Reject | ||
| ip_mask string | success | Строка, содержащая диапазон IP-адресов в нотации CIDR для правила. Пример: 40.54.7.3 | ||
| name string | success | Имя фильтра. Пример: filter | ||
| location string | success | Расположение IoT-хаба. Пример: eastus | ||
| name string | success | Имя IoT-хаба. Пример: Testing | ||
| resource_group string | success | Группа ресурсов IoT-хаба. Пример: myResourceGroup. | ||
| routes complex | success | Маршрутизация сообщений устройство-облако на конечные пункты, ориентированные на службы. | ||
| condition boolean | success | Выражение запроса для запроса маршрутизации, выполняемого над свойствами приложения сообщения, системными свойствами, телом сообщения, тегами двойника устройства и свойствами двойника устройства, чтобы определить, соответствует ли оно конечной точке. Дополнительную информацию о построении запроса см. в документе https://docs.microsoft.com/ru-ru/azure/iot-hub/iot-hub-devguide-routing-query-syntax
Пример: true | ||
| enabled string | success | Включить маршрут. Пример: True | ||
| endpoint_name string | success | Имя конечного пункта в routing_endpoints куда IoT Hub отправляет сообщения, соответствующие запросу.Пример: foo | ||
| name string | success | Имя маршрута. Пример: route1 | ||
| source string | success | Источник потока данных, к которому необходимо применить действие. Пример: device_messages | ||
| routing_endpoints complex | success | Настраиваемые конечные пункты. | ||
| event_hubs complex | success | Список настраиваемых конечных пунктов event hubs. | ||
| connection_string string | success | Строка подключения к настраиваемому конечном пункту. Пример: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo | ||
| имя строка | успех | Имя пользовательского конечной точки. Пример: foo | ||
| группа_ресурсов строка | успех | Группа ресурсов конечной точки. Пример: bar | ||
| подписка строка | успех | Идентификатор подписки конечной точки. Пример: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||
| service_bus_queues сложный | всегда | Список пользовательских конечных точек очереди service bus. | ||
| строка_соединения строка | успех | Строка подключения к пользовательской конечной точке. Пример: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo | ||
| имя строка | успех | Имя пользовательской конечной точки. Пример: foo | ||
| группа_ресурсов строка | успех | Группа ресурсов конечной точки. Пример: bar | ||
| подписка строка | успех | Идентификатор подписки конечной точки. Пример: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||
| service_bus_topics сложный | успех | Список пользовательских конечных точек темы service bus. | ||
| строка_соединения строка | успех | Строка подключения к пользовательской конечной точке. Пример: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo | ||
| имя строка | успех | Имя пользовательской конечной точки. Пример: foo | ||
| группа_ресурсов строка | успех | Группа ресурсов конечной точки. Пример: bar | ||
| подписка строка | успех | Идентификатор подписки конечной точки. Пример: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||
| storage_containers сложный | успех | Список пользовательских конечных точек хранилища | ||
| строка_соединения строка | успех | Строка подключения к пользовательской конечной точке. Пример: Endpoint=sb://quux.servicebus.windows.net:5671/;SharedAccessKeyName=qux;SharedAccessKey=****;EntityPath=foo | ||
| имя строка | успех | Имя пользовательской конечной точки. Пример: foo | ||
| группа_ресурсов строка | успех | Группа ресурсов конечной точки. Пример: bar | ||
| подписка строка | успех | Идентификатор подписки конечной точки. Пример: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||
| sku строка | успех | Ценовой уровень для Azure IoT Hub. Пример: f1 | ||
| единица целое число | успех | Единицы в IoT Hub. Пример: 1 | ||
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Yuwei Zhou (@yuwzho)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/azure_rm_iothub_module.html