azure.azcollection.azure_rm_iotdevice – Управление устройством Azure IoT Hub
Примечание
Этот плагин входит в коллекцию azure.azcollection (версия 1.4.0).
Для его установки используйте: ansible-galaxy collection install azure.azcollection.
Для использования в книге задач укажите: azure.azcollection.azure_rm_iotdevice.
Новое в версии 0.1.2: из azure.azcollection
Описание
- Создание и удаление устройства Azure IoT Hub.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используется при аутентификации с помощью пользователя Active Directory, а не принципала службы. | |
| adfs_authority_url строка добавлен в 0.0.1 из azure.azcollection | URL-адрес полномочий Azure AD. Используется при аутентификации с именем пользователя/паролем и наличии собственного ADFS-полномочия. | |
| api_profile строка добавлен в 0.0.1 из azure.azcollection | Значение по умолчанию: "latest" | Выбирает профиль API для использования при взаимодействии с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать Azure Stack. |
| append_tags логическое значение |
| Управляет тем, является ли поле тегов каноническим или просто добавляется к существующим тегам. При каноническом поле теги, не найденные в параметре тегов, будут удалены из метаданных объекта. |
| auth_method строка |
| Тип авторизации, с которым должен быть создан объект. |
| auth_source строка добавлен в 0.0.1 из azure.azcollection |
| Управляет источником учетных данных для аутентификации. Также может быть задан через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.При значении auto (по умолчанию) приоритет отдается параметрам модуля -> env -> credential_file -> cli.При значении env, учетные данные будут считываться из переменных средыПри значении credential_file, он будет считывать профиль из ~/.azure/credentials.При значении cli, учетные данные будут получены из профиля Azure CLI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для идентификации идентификатора подписки, если их несколько, иначе используется по умолчанию подписка az cli.При значении msi, хост-машина должна быть Azure-ресурсом с включённым расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для идентификации идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, иначе выбирается первая подписка.msi был добавлен в Ansible 2.6. |
| cert_validation_mode строка добавлен в 0.0.1 из azure.azcollection |
| Управляет поведением проверки сертификатов для Azure-точек входа. По умолчанию все модули проверяют серверный сертификат, но при использовании прокси-сервера HTTPS или работе с Azure Stack может потребоваться отключить это поведение, передав ignore. Также может быть задан через профиль файла учетных данных или переменную среды AZURE_CERT_VALIDATION. |
| client_id строка | Идентификатор клиента Azure. Используется при аутентификации с помощью принципала службы. | |
| cloud_environment строка добавлен в 0.0.1 из azure.azcollection | Значение по умолчанию: "AzureCloud" | Для облачных сред, отличных от общедоступного облака США, имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment), или URL-адрес точки входа для обнаружения метаданных (требуется для Azure Stack). Также может быть задан через профиль файла учетных данных или переменную среды AZURE_CLOUD_ENVIRONMENT. |
| desired словарь | Используется вместе с отчётными свойствами для синхронизации конфигурации или условий устройства. Тег может быть вложенным словарем, '.' , '$', '#', ' ' не допускаются в имени ключа. Список не поддерживается. Не поддерживается в IoT Hub с базовым тарифом. | |
| edge_enabled логическое значение |
| Флаг, указывающий на включение функции edge. Не поддерживается в IoT Hub с базовым тарифом. |
| hub строка / обязательный | Имя IoT Hub. | |
| hub_policy_key строка / обязательный | Ключ hub_policy_name. | |
| hub_policy_name строка / обязательный | Имя политики IoT Hub, которое будет использоваться для запроса из IoT Hub. Эта политика должна иметь доступ «RegistryWrite, ServiceConnect, DeviceConnect». Вы можете получить ошибку 401, если вам не хватает любого из них. | |
| name строка / обязательный | Имя идентификатора устройства IoT Hub. | |
| password строка | Пароль пользователя Active Directory. Используется при аутентификации с помощью пользователя Active Directory, а не принципала службы. | |
| primary_key строка | Явный отпечаток самозаверяющегося сертификата для использования с первичным ключом. Явный общий закрытый ключ для использования с первичным ключом. псевдонимы: primary_thumbprint | |
| profile строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | |
| secondary_key строка | Явный отпечаток самозаверяющегося сертификата для использования со вторичным ключом. Явный общий закрытый ключ для использования со вторичным ключом. псевдонимы: secondary_thumbprint | |
| secret строка | Секрет клиента Azure. Используется при аутентификации с помощью принципала службы. | |
| state строка |
| Состояние IoT Hub. Используйте present, чтобы создать или обновить устройство IoT Hub, и absent, чтобы удалить устройство IoT Hub. |
| status логическое значение |
| Установите статус устройства при его создании. |
| subscription_id строка | Идентификатор вашей подписки Azure. | |
| tags словарь | Словарь пар «строка:строка» для назначения в качестве метаданных объекту. Метаданные-теги объекта будут обновлены любыми предоставленными значениями. Для удаления тегов установите параметр append_tags в false. | |
| tenant строка | Идентификатор клиента Azure. Используется при аутентификации с помощью принципала службы. | |
| twin_tags словарь | Раздел, который бэкенд решения может читать и изменять. Теги не видны приложениям устройств. Тег может быть вложенным словарем, '.', '$', '#', ' ' не допускаются в имени ключа. Список не поддерживается. Не поддерживается в IoT Hub с базовым тарифом. |
Примечания
Примечание
- Для аутентификации с Azure можно передавать параметры, устанавливать переменные среды, использовать профиль, сохранённый в ~/.azure/credentials, или войти в систему перед запуском задач или книги задач с помощью
az login. - Аутентификация также возможна с помощью принципала службы или пользователя Active Directory.
- Для аутентификации с помощью принципала службы передайте subscription_id, client_id, secret и tenant или установите переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации с помощью пользователя Active Directory передайте ad_user и password или установите AZURE_AD_USER и AZURE_PASSWORD в среде.
- В качестве альтернативы учетные данные можно сохранить в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant или subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или установив AZURE_PROFILE в среде.
См. также
См. также
- Авторизация с помощью Azure CLI
-
Как выполнить аутентификацию с помощью команды
az login.
Примеры
- name: Create simplest Azure IoT Hub device
azure_rm_iotdevice:
hub: myHub
name: Testing
hub_policy_name: iothubowner
hub_policy_key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
- name: Create Azure IoT Edge device
azure_rm_iotdevice:
hub: myHub
name: Testing
hub_policy_name: iothubowner
hub_policy_key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
edge_enabled: yes
- name: Create Azure IoT Hub device with device twin properties and tag
azure_rm_iotdevice:
hub: myHub
name: Testing
hub_policy_name: iothubowner
hub_policy_key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
twin_tags:
location:
country: US
city: Redmond
sensor: humidity
desired:
period: 100
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| device словарь | всегда | Устройство IoT Hub. Пример: {'authentication': {'symmetricKey': {'primaryKey': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 'secondaryKey': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'}, 'type': 'sas', 'x509Thumbprint': {'primaryThumbprint': None, 'secondaryThumbprint': None}}, 'capabilities': {'iotEdge': False}, 'changed': True, 'cloudToDeviceMessageCount': 0, 'connectionState': 'Отключено', 'connectionStateUpdatedTime': '0001-01-01T00:00:00', 'deviceId': 'Testing', 'etag': 'NzA2NjU2ODc=', 'failed': False, 'generationId': '636903014505613307', 'lastActivityTime': '0001-01-01T00:00:00', 'modules': [{'authentication': {'symmetricKey': {'primaryKey': 'XXXXXXXXXXXXXXXXXXX', 'secondaryKey': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'}, 'type': 'sas', 'x509Thumbprint': {'primaryThumbprint': None, 'secondaryThumbprint': None}}, 'cloudToDeviceMessageCount': 0, 'connectionState': 'Отключено', 'connectionStateUpdatedTime': '0001-01-01T00:00:00', 'deviceId': 'testdevice', 'etag': 'MjgxOTE5ODE4', 'generationId': '636903840872788074', 'lastActivityTime': '0001-01-01T00:00:00', 'managedBy': None, 'moduleId': 'test'}], 'properties': {'desired': {'$metadata': {'$lastUpdated': '2019-04-10T05:00:46.2702079Z', '$lastUpdatedVersion': 8, 'period': {'$lastUpdated': '2019-04-10T05:00:46.2702079Z', '$lastUpdatedVersion': 8}}, '$version': 1, 'period': 100}, 'reported': {'$metadata': {'$lastUpdated': '2019-04-08T06:24:10.5613307Z'}, '$version': 1}}, 'status': 'enabled', 'statusReason': None, 'statusUpdatedTime': '0001-01-01T00:00:00', 'tags': {'location': {'city': 'Redmond', 'country': 'us'}, 'sensor': 'влажность'}} |
Авторы
- Yuwei Zhou (@yuwzho)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/azure/azcollection/azure_rm_iotdevice_module.html