Creación y eliminación de rutas y puntos de conexión mediante Azure PowerShell
En este artículo se muestra primero cómo crear rutas y puntos de conexión en cualquier centro desde Azure IoT Hub y, luego, cómo eliminarlos. Aprenda a usar Azure PowerShell para crear rutas y puntos de conexión para Azure Event Hubs, las colas y los temas de Azure Service Bus y Azure Storage.
Para más información sobre cómo funciona el enrutamiento en IoT Hub, consulte Uso del enrutamiento de mensajes de IoT Hub para enviar mensajes del dispositivo a la nube a distintos puntos de conexión. Para obtener información sobre la configuración de una ruta que envíe mensajes al almacenamiento y la posterior realización de pruebas en un dispositivo simulado, consulte Tutorial: Envío de datos de dispositivo a Azure Storage mediante el enrutamiento de mensajes de IoT Hub.
Nota:
Actualmente, PowerShell no admite tipos de autenticación de identidad administrada para crear puntos de conexión. Si no puede usar la autenticación SAS en su escenario, use una de las otras herramientas de administración para crear puntos de conexión.
Además, Actualmente, PowerShell no admite la creación de puntos de conexión de Cosmos DB.
Requisitos previos
Revise los requisitos previos de este artículo en función del tipo de punto de conexión al que quiera enrutar los mensajes.
Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.
Una instancia de IoT Hub. Si aún no tiene un centro, puede seguir los pasos para crear un centro de IoT.
Azure PowerShell. Para usar Azure PowerShell localmente instale el módulo de Azure PowerShell en el equipo. Como alternativa, para usar Azure PowerShell en un explorador web, habilite Azure Cloud Shell.
Un recurso de Event Hubs (con contenedor). Si necesita crear un nuevo recurso de Event Hubs, consulte Inicio rápido: crear un centro de eventos.
(Recomendado) Una identidad administrada con permisos de control de acceso basado en rol para el espacio de nombres de Event Hubs. Para más información, vea Autenticación de una identidad administrada con Microsoft Entra ID para acceder a recursos de Event Hubs.
Creación de puntos de conexión
En IoT Hub, puede crear una ruta para enviar mensajes o capturar eventos. Cada ruta tiene un origen de datos y un punto de conexión. El origen de datos es el lugar del que parten los mensajes o los registros de eventos. El punto de conexión es el lugar en que terminan los mensajes o los registros de eventos. Cuando se crea una ruta en el centro de IoT, se eligen las ubicaciones del origen de datos y del punto de conexión. Luego, se usan consultas de enrutamiento para filtrar los mensajes o eventos antes de que van al punto de conexión.
El servicio que use para crear el punto de conexión debe existir en la cuenta de Azure.
Nota:
Si usa una versión local de Azure PowerShell, inicie sesión en Azure PowerShell antes de comenzar.
Los comandos de los siguientes procedimientos usan estas referencias:
Obtenga la cadena de conexión principal de su centro de eventos. Copie la cadena de conexión para usarla más adelante.
Get-AzEventHubKey -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule
Cree un nuevo punto de conexión de IoT Hub en Event Hubs. Use la cadena de conexión principal del paso anterior. El valor de
EndpointType
debe serEventHub
. Para todos los demás parámetros, use los valores de su escenario.Add-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -EndpointType EventHub -EndpointResourceGroup MyResourceGroup -EndpointSubscriptionId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -ConnectionString "Endpoint=<my connection string>"
Para ver todas las opciones de punto de conexión de enrutamiento, consulte Add-AzIotHubRoutingEndpoint.
Creación de una ruta de IoT Hub
Con el nuevo punto de conexión del IoT Hub, puede crear una ruta.
La ruta de reserva predeterminada de IoT Hub recopila mensajes de DeviceMessages
. Elija otra opción para la ruta personalizada, como DeviceConnectionStateEvents
. Para más información acerca de las opciones de origen, consulte Add-AzIotHubRoute. El parámetro Enabled
es un modificador, por lo que no es necesario usar ningún valor con el parámetro.
Add-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -Source DeviceLifecycleEvents -EndpointName MyEndpoint -Enabled
PowerShell muestra una confirmación similar a la de este ejemplo:
RouteName : MyIotHub
DataSource : DeviceLifecycleEvents
EndpointNames : MyEndpoint
Condition : true
IsEnabled : True
Actualización de una ruta de IoT Hub
Para realizar cambios en una ruta existente, use el siguiente comando. Por ejemplo, pruebe a cambiar el nombre de la ruta mediante el comando.
Set-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute
Use el comando Get-AzIotHubRoute
para confirmar el cambio en la ruta:
Get-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub
Eliminar un extremo
Para eliminar un punto de conexión:
Remove-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -PassThru
Eliminación de una ruta de IoT Hub
Para eliminar una ruta de IoT Hub:
Remove-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -PassThru
Sugerencia
La eliminación de una ruta no elimina ningún punto de conexión de la cuenta de Azure. Los puntos de conexión se deben eliminar independientemente de la eliminación de rutas.
Pasos siguientes
En este artículo de procedimientos ha aprendido a crear una ruta y un punto de conexión para Event Hubs, colas o temas de Service Bus y Azure Storage.
Para más información sobre el enrutamiento de mensajes, consulte Tutorial: Envío de datos de dispositivo a Azure Storage mediante el enrutamiento de mensajes de IoT Hub. En este tutorial, se crea una ruta de almacenamiento y se prueba con un dispositivo de un centro de IoT.