Conceptos de actualizaciones de software (vista previa)

Utiliza Actualizaciones de software, una función de Azure Device Registry, para distribuir actualizaciones inalámbricas a tus dispositivos a gran escala. Importa las actualizaciones a un espacio de nombres del Registro de dispositivos de Azure y luego usa jobs y grupos en ese espacio para implementarlas en los dispositivos.

Importante

Las actualizaciones de software de Azure Device Registry se encuentran actualmente en versión preliminar. La vista previa actual está dirigida a dispositivos conectados al IoT Hub. No uses funciones de vista previa para cargas de producción. Para cargas de trabajo de producción, sigue usando Device Update para IoT Hub, que sigue estando disponible de forma general.

Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.

Diagrama que muestra un trabajo de actualización de software dirigido a un grupo de dispositivos y un trabajo de actualización de incorporación dirigido a dispositivos que están siendo integrados dentro de un espacio de nombres del Registro de Dispositivos de Azure.

Aplicabilidad del servicio

Feature Operaciones de Azure IoT Azure IoT Hub
Actualizaciones de software No es aplicable Preview

Actualizaciones de software y actualización de dispositivos para IoT Hub

Las actualizaciones de software incorporan capacidades de actualización inalámbrica a Azure Device Registry. Utiliza el mismo formato de manifesto de importación que Device Update para IoT Hub, y te permite gestionar actualizaciones a nivel de espacio de nombres usando grupos y trabajos de Azure Device Registry.

Utiliza las siguientes recomendaciones para elegir la opción adecuada:

Si... Use
Necesitas actualizaciones inalámbricas para cargas de trabajo de producción. Actualización de dispositivos para IoT Hub, que sigue en disponibilidad general y con soporte.
Quieres evaluar la administración de actualizaciones mediante los espacios de nombres, los grupos y las tareas de Azure Device Registry. Actualizaciones de software (vista previa), descritas en este artículo.

Ten en cuenta las siguientes consideraciones si ya usas Device Update para IoT Hub:

  • No puedes usar ambos en el mismo hub IoT. En esta vista previa, puedes usar actualizaciones de software solo con hubs IoT que no tengan una instancia existente de Actualización de Dispositivo para IoT Hub. Para probar actualizaciones de software, conecta un IoT hub que no use Device Update for IoT Hub a tu espacio de nombres.
  • Los dispositivos usan un cliente diferente. Los dispositivos que ejecutan el agente de actualización de dispositivos no pueden recibir actualizaciones a través de las actualizaciones de software. Para recibir actualizaciones de software, un dispositivo utiliza el cliente de actualizaciones de software en los SDKs unificados de Azure IoT (versión preliminar).

Cómo funcionan las actualizaciones de software

Activas las actualizaciones de software en un espacio de nombres del Registro de Dispositivos de Azure, ya sea cuando configuras el espacio de nombres o después. Para saber cómo, consulta Empezar con Azure Device Registry (vista previa). La capacidad introduce los siguientes componentes:

  • Actualización de software: Una actualización que se importa a un espacio de nombres. Una actualización de software consiste en uno o más archivos de actualización y un manifiesto de importación. Después de importar una actualización de software, está disponible para trabajos de actualización de software y de actualización de incorporación en ese espacio de nombres.
  • Trabajo de actualización de software: Aplica una actualización de software a los dispositivos compatibles de un grupo objetivo.
  • Tarea de actualización durante el aprovisionamiento: Aplica una actualización de software a los dispositivos compatibles cuando comprueban si hay actualizaciones durante el aprovisionamiento, antes de registrarse y empezar a funcionar.
  • Cliente de actualizaciones de software: La parte de los SDKs unificados de Azure IoT (preview) que utiliza tu aplicación de dispositivo para comprobar, descargar e instalar actualizaciones de software, y para informar de los resultados.

Un flujo de actualización típico es el siguiente:

  1. Subes los archivos de actualización y el manifiesto de importación a un contenedor de Azure Storage.
  2. Debes importar la actualización de software a tu espacio de nombres.
  3. Crea una tarea dirigida a un grupo o, para la incorporación, al espacio de nombres.
  4. Cada dispositivo comprueba actualizaciones y reporta sus propiedades de compatibilidad. Si el dispositivo es compatible, recibe la actualización.
  5. El dispositivo descarga e instala la actualización, y luego informa del resultado. Supervisas el progreso y los resultados a nivel de dispositivo en la ejecución del trabajo.

Actualizaciones de software

Una actualización de software consta de dos componentes que subes juntos:

  • Archivos de actualización: la carga útil que instala el dispositivo. La carga útil puede ser una imagen de firmware, un paquete de software, un script o varios archivos relacionados.
  • Manifiesto de importación: un archivo JSON con la extensión .importmanifest.json que describe la actualización. El manifiesto de importación declara:
    • Identidad de la actualización: el proveedor, el nombre y la versión que identifican de forma única la actualización. El proveedor y el nombre juntos identifican una familia de actualizaciones, como todas las versiones del firmware para un modelo de dispositivo.
    • Propiedades de compatibilidad: Las propiedades del dispositivo que determinan qué dispositivos pueden instalar la actualización. Para más información, véase Compatibilidad de dispositivos.
    • Instrucciones de instalación: Los pasos de instalación, su orden y el controlador para cada paso. El manejador le indica al dispositivo cómo aplicar ese paso, como instalar un paquete, ejecutar un script o grabar una imagen.
    • Metadatos del archivo: El nombre, tamaño y hash de cada archivo de actualización. El servicio utiliza los hashes para verificar la integridad de los archivos en la importación, y el dispositivo puede usarlos para verificar cada archivo antes de la instalación.

Cada actualización de software requiere un manifiesto de importación. Si intentas importar archivos de actualización sin un manifiesto de importación, la importación falla. Cuando importas, puedes escanear opcionalmente los archivos de actualización en busca de malware. El escaneo de malware está disponible en regiones seleccionadas. Para instrucciones paso a paso, consulta Importar una actualización de software.

El siguiente ejemplo muestra un manifiesto de importación para una actualización basada en imágenes:

{
  "updateId": {
    "provider": "Contoso",
    "name": "IrrigationControllerV2-Image",
    "version": "1.3.0"
  },
  "isDeployable": true,
  "compatibility": [
    {
      "manufacturer": "Contoso",
      "model": "IrrigationControllerV2"
    }
  ],
  "instructions": {
    "steps": [
      {
        "type": "inline",
        "description": "Update the device image to version 1.3.0",
        "handler": "microsoft/swupdate:1",
        "files": [
          "contoso-irrigation-controller-v2-1.3.0.swu"
        ],
        "handlerProperties": {
          "installedCriteria": "1.3.0"
        }
      }
    ]
  },
  "files": [
    {
      "filename": "contoso-irrigation-controller-v2-1.3.0.swu",
      "sizeInBytes": 112738816,
      "hashes": {
        "sha256": "wPdNKUSmWTZkR6Pum9oR/EIzdn5AvON4dsXME+/gHVw="
      }
    }
  ],
  "createdDateTime": "2026-10-01T06:56:51.2002204Z",
  "manifestVersion": "5.0"
}

Las actualizaciones de software utilizan el mismo formato de manifesto de importación que Device Update for IoT Hub. Para aprender a redactar un manifiesto de importación, consulta:

Compatibilidad de dispositivos

Las propiedades de compatibilidad en un manifiesto de importación determinan qué dispositivos pueden instalar una actualización de software. Cuando un dispositivo comprueba actualizaciones, informa de sus propias propiedades de compatibilidad. Azure Device Registry compara esas propiedades con las propiedades de compatibilidad declaradas en la actualización de software.

Las propiedades de compatibilidad se definen como pares nombre-valor. Cada actualización de software debe declarar al menos una propiedad de compatibilidad. manufacturer y model son opciones comunes, pero no son obligatorias. Usa cualquier propiedad que se adapte a tu flota, como region o environment.

La compatibility sección del manifiesto de importación es un array de conjuntos de propiedades. Por ejemplo:

"compatibility": [
  {
    "manufacturer": "Contoso",
    "model": "IrrigationControllerV2"
  }
]

El emparejamiento funciona de la siguiente manera:

  • Un dispositivo debe coincidir con cada propiedad de un conjunto. La actualización anterior solo se aplica a los dispositivos que informan tanto de manufacturer como Contoso y de model como IrrigationControllerV2. No se aplica a un dispositivo Contoso SoilSensorV1 , ni a un IrrigationControllerV2 dispositivo que reporte a otro fabricante.
  • Un dispositivo solo tiene que coincidir con un conjunto. Si declaras más de un conjunto de propiedades, una sola actualización de software puede aplicarse a varios tipos de dispositivos.
  • Cada conjunto de propiedades pertenece a una familia de actualización. No puedes usar exactamente el mismo conjunto de propiedades de compatibilidad con más de una combinación de proveedor y nombre. Planifica tus familias de actualizaciones y tus propiedades de compatibilidad conjuntamente. Para más información, véase Conceptos de importación.

Un grupo puede contener dispositivos con diferentes propiedades de compatibilidad. Un trabajo de actualización de software aplica la actualización solo a los dispositivos compatibles del grupo de destino. Por ejemplo, si un grupo contiene 18 IrrigationControllerV2 dispositivos y seis SoilSensorV1 dispositivos, se aplica una actualización para los dispositivos IrrigationControllerV2 a los 18 dispositivos compatibles. Los seis SoilSensorV1 dispositivos no se ven afectados.

Tip

Los dispositivos informan de sus propiedades de compatibilidad al Registro de Dispositivos de Azure, para que puedas usarlos en una consulta de grupo para crear grupos que contengan solo los dispositivos a los que se aplica una actualización.

Trabajos, grupos y comportamiento de despliegue

Despliegas una actualización de software creando un job en el namespace. Las actualizaciones de software admiten dos tipos de trabajo:

Tipo de trabajo Target Cuándo usarlo
Actualización de software Un grupo de Azure Device Registry Actualiza los dispositivos registrados que ya están en funcionamiento. El grupo define el ámbito de la tarea, y las propiedades de compatibilidad determinan qué dispositivos de ese ámbito instalan la actualización.
Actualización de incorporación El espacio de nombres Azure Device Registry Lleva los dispositivos a una versión de software requerida a medida que se integran, antes de que empiecen a funcionar. Por ejemplo, utiliza una actualización de onboarding para dispositivos que han estado almacenados y que están usando firmware antiguo.

Una tarea de actualización de software no se detiene tras llegar a los dispositivos que son compatibles en el momento de su inicio. Mientras la ejecución del trabajo está activa, continúa aplicando la actualización a:

  • Los dispositivos que estaban desconectados cuando se inició la tarea, una vez que se vuelven a conectar y comprueban si hay actualizaciones.
  • Los dispositivos que se unen al grupo de destino. La membresía del grupo no se actualiza automáticamente: los nuevos dispositivos se unen al grupo la próxima vez que actualices su membresía. Para más información, consulta Membresía en caché y actualización.
  • Por ejemplo, los dispositivos que se vuelven elegibles para la actualización porque cambian sus propiedades de compatibilidad reportadas.

Una tarea de actualización de incorporación permanece activa hasta que la terminas, por lo que los dispositivos compatibles siguen recibiendo la actualización a medida que se incorporan.

Para los estados de trabajos, la programación y el seguimiento, consulta Conceptos de trabajos (vista previa).

Consideraciones sobre el SDK del dispositivo

Los dispositivos reciben actualizaciones de software a través del cliente de actualizaciones de software en los SDKs unificados de Azure IoT (vista previa). Ten en cuenta las siguientes consideraciones al planificar el software de tu dispositivo:

  • Dispositivos compatibles: En esta vista previa, el cliente de actualizaciones de software está pensado principalmente para dispositivos basados en Linux con más de 32 MB de memoria disponible.
  • Integración: El SDK es una biblioteca, no un agente listo para ejecutarse. Integras el cliente de actualizaciones de software en la aplicación de tu dispositivo y proporcionas la lógica que descarga, instala y aplica actualizaciones en tu hardware. Microsoft ofrece ejemplos para ayudarte a empezar.
  • Dos formas de comprobar si hay actualizaciones: un dispositivo que se está incorporando comprueba si hay actualizaciones de incorporación antes de registrarse. Un dispositivo registrado comprueba si hay actualizaciones de software a partir de una tarea de actualización de software. La aplicación de tu dispositivo decide cuándo comprobar las actualizaciones.
  • Conectividad: El dispositivo comprueba si hay actualizaciones y reporta resultados a través de su conexión al Servicio de Provisionamiento de Dispositivos. No necesita un endpoint o credencial separado para recibir actualizaciones.
  • Seguridad: Antes de descargar cualquier archivo de actualización, el cliente de actualizaciones de software verifica la firma de la información de actualización que recibe del servicio. Los dispositivos descargan archivos de actualización solo por HTTPS, por lo que el contenido de las actualizaciones siempre está cifrado durante el tránsito. Asegúrate de que tus dispositivos puedan hacer conexiones HTTPS salientes para descargar archivos de actualización.
  • Informe de estado: Tras un intento de instalación, el dispositivo informa del resultado, incluyendo códigos de error si la instalación falló. El resultado aparece en los resultados a nivel de dispositivo de la ejecución del trabajo.
  • Tu responsabilidad: Eres responsable de validar la integración en tu propio entorno, incluyendo el comportamiento de recuperación si una instalación falla o el dispositivo se reinicia durante una actualización.

Limitaciones de la versión preliminar

La versión preliminar actual tiene las siguientes limitaciones:

  • Las actualizaciones de software son compatibles con dispositivos conectados a IoT Hub. Los dispositivos y recursos de Operaciones de IoT de Azure no están soportados en esta vista previa.
  • No puedes usar actualizaciones de software con un IoT hub que ya tiene una instancia existente de Device Update for IoT Hub.
  • Cada actualización de software requiere un manifiesto de importación. No puedes crear un manifiesto de importación en el portal de Azure.
  • El cliente de actualizaciones de software actualmente no soporta actualizaciones de proxy ni actualizaciones que usen pasos de referencia (actualizaciones madre e hija).

Para los límites que se aplican a las actualizaciones importadas, como el tamaño máximo de la actualización, véase Límites de Actualización de Dispositivos para IoT Hub. Para conocer los límites que se aplican a los grupos y las tareas, consulte Conceptos de grupos (versión preliminar) y Conceptos de tareas (versión preliminar).