Compartir a través de


Archivo de configuración de Device Update

El agente de Azure Device Update for IoT Hub usa información de configuración de un archivo du-config.json en el dispositivo. El agente lee el archivo e informa de los siguientes valores al servicio Device Update:

  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["manufacturer"]
  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["model"]
  • DeviceInformation.manufacturer
  • DeviceInformation.model
  • additionalProperties
  • connectionData
  • connectionType

Para actualizar o crear el archivo de configuración du-config.json:

  • Al instalar el agente de Debian en un dispositivo IoT con un sistema operativo Linux, modifique el archivo /etc/etc/adu/du-config.json para actualizar los valores.
  • Para un sistema de compilación de Yocto, cree un archivo JSON en la partición de adu o disco denominado /adu/du-config.json.

Campos y valores del archivo de configuración

Nombre Descripción
SchemaVersion La versión del esquema que asigna la versión actual del formato de archivo de configuración.
aduShellTrustedUsers La lista de usuarios que pueden iniciar adu-shell, un programa de agente que realiza varias acciones de actualización como 'root'. Los controladores de actualización de contenido predeterminados de Device Update invocan a adu-shell para realizar tareas que requieren privilegios de superusuario, como apt-get install o ejecutar un script con privilegios.
iotHubProtocol El protocolo que se usa para conectarse con Azure IoT Hub. Los valores aceptados son mqtt o mqtt/ws. El valor predeterminado es 'mqtt'.
compatPropertyNames Las propiedades que se usan para comprobar la compatibilidad del dispositivo con el fin de establecer como destino la implementación de actualizaciones. Todos los valores deben estar en minúsculas.
fabricante El valor indicado por la interfaz AzureDeviceUpdateCore:4.ClientMetadata:4 para clasificar el dispositivo y establecer como destino la implementación de la actualización.
model El valor indicado por la interfaz AzureDeviceUpdateCore:4.ClientMetadata:4 para clasificar el dispositivo y establecer como destino la implementación de la actualización.
additionalProperties Opcional, hasta cinco propiedades notificadas por dispositivo de solo minúsculas más que se usarán para la comprobación de compatibilidad.
agents La información sobre cada agente de Device Update, incluidos el tipo de connectionSource y datos.
nombre El nombre del agente de Device Update.
runas La identidad de usuario en la que se ejecutará el agente de Device Update.
connectionType El tipo de conexión que se va a usar para conectar el dispositivo a IoT Hub. Los valores aceptados son string o AIS. Use AIS para escenarios de producción que usan IoT Identity Service para conectarse. Use string para conectarse mediante una cadena de conexión con fines de prueba.
connectionData Los datos que se usarán para conectar el dispositivo a IoT Hub. Si connectionType = "AIS", establezca el connectionData en una cadena vacía: "connectionData": "". Si connectionType = "string", proporcione la cadena de conexión del dispositivo o del módulo del dispositivo IoT.
fabricante El valor notificado por el agente de Device Update como parte de la interfaz DeviceInformation.
model El valor notificado por el agente de Device Update como parte de la interfaz DeviceInformation.
additionalDeviceProperties Opcional, hasta cinco propiedades de dispositivo más.
extensionsFolder Opcional, establece la ruta de acceso de la carpeta extensiones de Device Update. La ruta de acceso predeterminada es '/var/lib/adu/extensions'.
downloadsFolder Opcional, establece la ruta de acceso de la carpeta descargas de Device Update. La ruta de acceso predeterminada es '/var/lib/adu/downloads'.
dataFolder Opcional, establece la ruta de acceso de la carpeta datos de Device Update. La ruta de acceso predeterminada es '/var/lib/adu'. Si actualiza este valor en el archivo de configuración, debe actualizar CheckDataDir() en la comprobación de administración de estado en consecuencia.
aduShellFilePath Opcional, establece la ruta de acceso para el shell de Device Update. La ruta de acceso predeterminada es '/usr/lib/adu'.
downloadTimeoutInMinutes Opcional, establece el tiempo de espera de descarga de actualizaciones en minutos. El valor 0 indica el valor predeterminado de 8 horas.

Archivo "du-config.json" de ejemplo

{
  "schemaVersion": "1.1",
  "aduShellTrustedUsers": [
    "adu",
    "do"
  ],
  "iotHubProtocol": "mqtt",
  "compatPropertyNames":"manufacturer,model,location,environment",
  "manufacturer": "contoso",
  "model": "virtual-vacuum-2",
  "agents": [
    {
      "name": "main",
      "runas": "adu",
      "connectionSource": {
        "connectionType": "string",
        "connectionData": "HostName=<hub_name>.azure-devices.net;DeviceId=<device_id>;SharedAccessKey=<device_key>"
      },
      "manufacturer": "contoso",
      "model": "virtual-vacuum-2",
      "additionalDeviceProperties": {
        "location": "usa",
        "environment": "development"
      }
    }
  ]
}