Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Durante el ciclo de vida de una solución de IoT, es habitual mover los dispositivos entre centros de IoT. Este artículo se escribe para ayudar a los operadores de solución a configurar directivas de reaprovisionamiento.
Para una descripción más detallada de los escenarios de reaprovisionamiento, consulte Conceptos sobre el reaprovisionamiento de dispositivos de IoT Hub.
Establecimiento de la directiva de reaprovisionamiento
Los pasos siguientes configuran la directiva de reaprovisionamiento para una inscripción individual o un grupo de inscripción:
Inicie sesión en Azure Portal y vaya a la instancia de Device Provisioning Service.
Seleccione Administrar inscripcionesy, a continuación, seleccione las pestañas Grupos de inscripción o Inscripciones individuales.
Seleccione el nombre del grupo de inscripción o la inscripción individual que desea configurar para el reaprovisionamiento.
Use el menú desplegable de Directiva de reaprovisionamiento para elegir una de las siguientes directivas de reaprovisionamiento:
Nunca volver a aprovisionar el dispositivo.
Volver a aprovisionar el dispositivo y restablecer el estado inicial: esta directiva realiza acciones cuando los dispositivos asociados a la entrada de inscripción envían una nueva solicitud de aprovisionamiento. Dependiendo de la configuración de entrada de inscripción, el dispositivo podría reasignarse a otro centro de IoT. Si el dispositivo cambia de hubs de IoT, el registro del dispositivo con el hub de IoT inicial es eliminado. Se proporcionan al nuevo centro de IoT los datos de configuración iniciales que recibió la instancia del servicio de aprovisionamiento al aprovisionar el dispositivo. Durante la migración, el estado del dispositivo se notifica como Asignación.
Volver a aprovisionar el dispositivo y migrar el estado actual: esta directiva realiza acciones cuando los dispositivos asociados a la entrada de inscripción envían una nueva solicitud de aprovisionamiento. En función de la configuración de entrada de inscripción, pudiera reasignarse el dispositivo a otro centro de Internet de las Cosas. Si el dispositivo cambia de centro de IoT, se quitará el registro de dispositivos con el centro de IoT inicial. Toda la información de estado del dispositivo de ese centro de IoT inicial se migra a la nueva instancia de IoT Hub. Durante la migración, el estado del dispositivo se notifica como Asignación.
Seleccione Guardar para permitir el reaprovisionamiento del dispositivo en función de los cambios.
Configuración de la directiva de asignación de inscripciones
La política de asignación determina cómo se asignan o distribuyen los dispositivos asociados al registro a un hub de IoT una vez que se redistribuyen. Consulte Cómo usar las políticas de asignación para aprovisionar dispositivos en IoT hubs para obtener más información sobre las directivas de asignación.
En los pasos siguientes se configura la directiva de asignación para la inscripción de un dispositivo:
Inicie sesión en Azure Portal y vaya a la instancia de Device Provisioning Service.
Seleccione Administrar inscripcionesy, a continuación, seleccione las pestañas Grupos de inscripción o Inscripciones individuales.
Seleccione el nombre del grupo de inscripción o la inscripción individual que desea configurar para el reaprovisionamiento.
En la página Detalles de inscripción, seleccione la pestaña Centros de IoT.
Seleccione una de las siguientes directivas de asignación:
Estático: esta directiva requiere que el centro de IoT deseado se muestre en la entrada de inscripción del dispositivo que se va a aprovisionar. Esta directiva permite designar un único centro de IoT al que quiere asignar los dispositivos.
Distribución ponderada uniformemente: esta directiva distribuye los dispositivos entre los centros de IoT en función del peso de asignación configurado en cada centro de IoT. Es más probable que se asignen los centros de IoT con un mayor peso de asignación. Si va a aprovisionar dispositivos en un único centro de IoT, se recomienda esta configuración. Esta es la configuración predeterminada.
Latencia más baja: esta directiva asigna dispositivos al centro de IoT que da como resultado las comunicaciones de latencia más baja entre el dispositivo y IoT Hub. Esta opción permite que el dispositivo se comunique con el centro de IoT más cercano en función de la ubicación.
Personalizado (use la función de Azure): esta directiva usa un webhook personalizado hospedado en Azure Functions para asignar dispositivos a uno o varios centros de IoT. Las directivas de asignación personalizadas ofrece más control sobre la forma en que se asignan los dispositivos a los centro de IoT. Para más información, consulte Descripción de las directivas de asignación personalizadas con Azure IoT Hub Device Provisioning Service.
En Centros de IoT de destino, seleccione los centros de IoT vinculados que quiera incluir en la directiva de asignación. Opcionalmente, agregue un nuevo centro de IoT vinculado mediante el botón Agregar al centro de IoT.
Con la directiva de asignación Static configuration (Configuración estática), seleccione el centro de IoT al que quiere que se asignen los dispositivos.
Con la directiva de asignación Distribución ponderada uniformemente, se codifican con hash los dispositivos entre los centros de IoT que seleccione en función de los pesos de asignación configurados.
Con la directiva de asignación de latencia más baja , los centros de IoT que seleccione se incluyen en la evaluación de latencia para determinar el centro de IoT más cercano para la asignación de dispositivos.
Con la directiva de asignación Personalizada, seleccione los centros de IoT que quiere evaluar para su asignación mediante el webhook de asignación personalizado.
Seleccione Guardar.
Envío de una solicitud de aprovisionamiento desde el dispositivo
Para que los dispositivos se reaprovisionen según los cambios de configuración realizados en las secciones anteriores, estos dispositivos deben solicitar el reaprovisionamiento.
La frecuencia con la que un dispositivo envía una solicitud de aprovisionamiento depende del escenario. Al diseñar la solución y definir una lógica de reaprovisionamiento, hay algunas cosas que se deben tener en cuenta. Por ejemplo:
- Frecuencia con la que espera que se reinicien los dispositivos
- Las cuotas y límites de DPS
- Tiempo de implementación esperado para la flota (lanzamiento por fases frente a todo a la vez)
- Funcionalidad de reintento implementada en el código de cliente, como se describe en la guía de control de errores transitorios en el Centro de arquitectura de Azure.
Sugerencia
Se recomienda no aprovisionar en todos los reinicios del dispositivo, ya que esta acción podría alcanzar los límites de limitación del servicio, especialmente al volver a aprovisionar varios miles o millones de dispositivos a la vez. En su lugar, debe intentar usar la API Device Registration Status Lookup e intentar conectarse con esa información a IoT Hub. Si se produce un error, intente volver a aprovisionar, ya que la información de IoT Hub podría haber cambiado. Tenga en cuenta que la consulta del estado de registro cuenta como un nuevo registro de dispositivos, por lo que debe tener en cuenta el límite de registro de dispositivos. Considere también la posibilidad de implementar una lógica de reintento adecuada, como retroceso exponencial con selección aleatoria, como se describe en la guía de control de errores transitorios en el Centro de arquitectura de Azure. En algunos casos, en función de las funcionalidades del dispositivo, es posible guardar la información de IoT Hub directamente en el dispositivo para conectarse directamente a IoT Hub después de que se produjese el aprovisionamiento por primera vez mediante DPS. Si decide guardar directamente en el dispositivo, asegúrese de implementar un mecanismo de reserva en caso de que se produzcan errores específicos de IoT Hub. Por ejemplo, considere los siguientes escenarios:
- Vuelva a intentar la operación de IoT Hub si el código de resultado es 429 (demasiadas solicitudes) o un error en el intervalo 5xx. No vuelva a intentar si hay algún otro error.
- En el caso de los errores 429, inténtelo de nuevo después de la hora indicada en el encabezado Retry-After.
- En el caso de los errores 5xx, use el retroceso exponencial, con el primer reintento al menos 5 segundos después de la respuesta.
- Si hay errores distintos de 429 y 5xx, vuelva a registrarse a través de DPS
- Lo ideal es que también admita un método directo para desencadenar manualmente el aprovisionamiento a petición.
También se recomienda tener en cuenta los límites de servicio al planear actividades, como insertar actualizaciones en la flota. Por ejemplo, actualizar la flota todo a la vez podría hacer que todos los dispositivos se vuelvan a registrar a través de DPS (lo que podría estar fácilmente por encima del límite de cuota de registro). En estos escenarios, considere la posibilidad de planear las actualizaciones de dispositivos en fases en lugar de actualizar toda la flota al mismo tiempo.
Siguientes pasos
- Para más información sobre el reaprovisionamiento, consulte Conceptos de reaprovisionamiento de dispositivos de IoT Hub.
- Para obtener más información sobre el desaprovisionamiento, consulte Cómo desaprovisionar dispositivos que se aprovisionaron automáticamente anteriormente.