Spec-Zone.ru › Ansible 2.10

azure.azcollection.azure_rm_iotdevice – Управление устройством Azure IoT Hub

Примечание

Этот плагин является частью коллекции azure.azcollection (версия 1.3.1).

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

Чтобы использовать его в плейбуке, укажите: azure.azcollection.azure_rm_iotdevice.

Введено в версии 0.1.2: of azure.azcollection

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

Описание

  • Создание и удаление устройства Azure IoT Hub.

Требования

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

  • python >= 2.7
  • azure >= 2.0.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ad_user
строка
Имя пользователя Active Directory. Используется при аутентификации с пользователем Active Directory, а не с сервисным принципалом.
adfs_authority_url
строка
добавлен в 0.0.1 of azure.azcollection
URL авторизации Azure AD. Используется при аутентификации с именем пользователя/паролем и собственной авторизацией ADFS.
api_profile
строка
добавлен в 0.0.1 of azure.azcollection
По умолчанию:
"latest"
Выбирает профиль API для взаимодействия с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать Azure Stack.
append_tags
логическое
    Варианты:
  • no
  • да ←
Управляет тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам.
При каноническом значении теги, отсутствующие в параметре тегов, будут удалены из метаданных объекта.
auth_method
строка
    Варианты:
  • sas ←
  • certificate_authority
  • self_signed
Тип авторизации, с которой будет создаваться сущность.
auth_source
строка
добавлен в 0.0.1 of azure.azcollection
    Варианты:
  • auto ←
  • cli
  • credential_file
  • env
  • msi
Управляет источником учетных данных для аутентификации.
Также может быть задан через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.
При значении auto (по умолчанию) приоритет имеет: параметры модуля -> env -> credential_file -> cli.
При значении env, учетные данные будут читаться из переменных среды.
При значении credential_file, профиль будет читаться из ~/.azure/credentials.
При значении cli, учетные данные будут взяты из профиля Azure CLI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для определения идентификатора подписки, если их несколько; в противном случае используется подписка по умолчанию Azure CLI.
При значении msi, хост-машина должна быть Azure-ресурсом с включенным расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, иначе выбирается первая подписка.
Параметр msi был добавлен в Ansible 2.6.
cert_validation_mode
строка
добавлен в 0.0.1 of azure.azcollection
    Варианты:
  • ignore
  • validate
Управляет поведением проверки сертификатов для Azure-эндпоинтов. По умолчанию все модули проверяют сертификат сервера, но при использовании HTTPS-прокси или с Azure Stack может потребоваться отключить эту функцию, передав ignore. Также может быть задано через профиль файла учетных данных или переменную среды AZURE_CERT_VALIDATION.
client_id
строка
Идентификатор клиента Azure. Используется при аутентификации с сервисным принципалом.
cloud_environment
строка
добавлен в 0.0.1 of 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
строка
    Варианты:
  • absent
  • present ←
Состояние 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': 'Тестирование', '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': 'активировано', 'statusReason': null, 'statusUpdatedTime': '0001-01-01T00:00:00', 'tags': {'location': {'city': 'Редмонд', 'country': 'us'}, 'sensor': 'влажность'}}


Авторы

  • 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.10/collections/azure/azcollection/azure_rm_iotdevice_module.html

Spec-Zone.ru

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