Implementaciones de actualizaciones
Una implementación es cómo se entregan las actualizaciones a uno o varios dispositivos. Las implementaciones siempre están asociadas a un grupo de dispositivos. Una implementación se puede iniciar desde la API o la interfaz de usuario.
Un grupo de dispositivos solo puede tener una implementación activa asociada en un momento dado. Una implementación se puede programar para comenzar en el futuro o iniciarse inmediatamente.
Implementaciones dinámicas
Las implementaciones de Device Update for IoT Hub son dinámicas por naturaleza. Las implementaciones dinámicas permiten a los usuarios avanzar hacia un modelo de administración de establecer y olvidar mediante la implementación automática de actualizaciones en dispositivos aplicables y recién aprovisionados. Los dispositivos que se aprovisionan o cambian su pertenencia a grupos después de iniciar una implementación, recibirán automáticamente la implementación de actualizaciones siempre y cuando la implementación permanezca activa.
Ciclo de vida de la implementación
Debido a su naturaleza dinámica, las implementaciones permanecen activas y en curso hasta que se cancelan explícitamente. Una implementación se considera inactiva y reemplazada si se crea una nueva implementación destinada al mismo grupo de dispositivos. Se puede volver a intentar una implementación para los dispositivos que produzcan un error. Una vez cancelada una implementación, no se puede reactivar.
Directivas de implementación
Programación de implementaciones
Las implementaciones de actualizaciones se pueden programar para iniciarse inmediatamente o en una fecha y hora determinadas en el futuro. Esto permite al usuario planear eficazmente el tiempo de inactividad del dispositivo para que no interfiera con ningún otro flujo de trabajo de dispositivo crítico.
Directiva de reversión automática
Después de implementar una actualización, es fundamental asegurarse de lo siguiente:
- Los dispositivos están en un estado limpio después de la instalación, es decir, si se produce un error parcial en una actualización, los dispositivos deben volver a su último estado correcto conocido.
- El ecosistema de dispositivos es coherente; es decir, todos los dispositivos de un grupo deben ejecutar la misma versión para facilitar su administración.
- El proceso de reversión es lo más práctico posible, con una opción para que el operador del dispositivo intervenga manualmente solo en circunstancias especiales poco frecuentes.
Para permitir que los operadores de dispositivos cumplan estos objetivos, las implementaciones de actualizaciones se pueden configurar con una directiva de reversión automática desde la nube. Esto permite definir una directiva de desencadenador de reversión, estableciendo para ello umbrales de porcentaje y de número mínimo de dispositivos con errores. Una vez alcanzado el umbral, todos los dispositivos del grupo se revertirán a la versión de actualización seleccionada.
Supervisión de la implementación
Los detalles de la implementación proporcionan información sobre los dispositivos que forman parte de la implementación, así como su estado. A medida que la implementación avanza, los dispositivos pasarán del estado En curso a Completado o Error. Si el estado de la implementación es Cancelado, todos los dispositivos de la implementación también reflejarán el estado Cancelado.
Los dispositivos pueden moverse directamente a un estado de terminal (es decir, a un estado Completado o Error) si la actualización implementada es muy pequeña o la latencia de red es alta. Estos estados se establecen cuando el servicio recibe el estado de implementación del agente de Device Update. No se pueden cambiar manualmente.