Spec-Zone.ru › Ansible 2.11

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
строка
    Варианты:
  • sas ←
  • certificate_authority
  • self_signed
Тип авторизации, с которым должен быть создан объект.
auth_source
строка
добавлен в 0.0.1 из 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 могут использоваться для идентификации идентификатора подписки, если их несколько, иначе используется по умолчанию подписка az cli.
При значении msi, хост-машина должна быть Azure-ресурсом с включённым расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID могут использоваться для идентификации идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, иначе выбирается первая подписка.
msi был добавлен в Ansible 2.6.
cert_validation_mode
строка
добавлен в 0.0.1 из azure.azcollection
    Варианты:
  • ignore
  • validate
Управляет поведением проверки сертификатов для 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
строка
    Варианты:
  • 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': '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

Spec-Zone.ru

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