Inicio rápido: Configuración del servicio Azure IoT Hub Device Provisioning con la CLI de Azure

La CLI de Azure se usa para crear y administrar recursos de Azure desde la línea de comandos o en scripts. En este inicio rápido se detalla cómo usar la CLI de Azure para crear un centro de IoT y una instancia de IoT Hub Device Provisioning Service y para vincular los dos servicios entre sí.

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Importante

Tanto el centro de IoT como el servicio de aprovisionamiento que se crean en este inicio rápido se podrán detectar públicamente como puntos de conexión de DNS. Asegúrese de evitar cualquier información confidencial si decide cambiar que se usan para estos recursos.

Requisitos previos

  • Use el entorno de Bash en Azure Cloud Shell.

    Iniciar Cloud Shell en una nueva ventana

  • Si lo prefiere, instale la CLI de Azure para ejecutar sus comandos de referencia.

    • Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.

    • Cuando se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.

    • Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.

Crear un grupo de recursos

Para crear un grupo de recursos, use el comando az group create. Un grupo de recursos de Azure es un contenedor lógico en el que se implementan y se administran los recursos de Azure.

En el ejemplo siguiente, se crea un grupo de recursos llamado my-sample-resource-group en la ubicación westus.

az group create --name my-sample-resource-group --location westus

Sugerencia

El ejemplo crea el grupo de recursos en la ubicación de oeste de EE. UU. Puede ejecutar el comando az account list-locations -o table para ver una lista de las ubicaciones disponibles.

Crear un centro de IoT

Para crear un centro de IoT, use el comando az iot hub create.

En el ejemplo siguiente, se crea un centro de IoT llamado my-sample-hub en la ubicación westus. El nombre del centro de IoT debe ser único globalmente en Azure, por lo que es posible que desee agregar un prefijo o sufijo único al nombre del ejemplo, o bien elegir un nombre completamente nuevo. Asegúrese de que el nombre sigue las convenciones de nomenclatura de un centro de IoT: debe tener entre 3 y 50 caracteres, y solo puede contener caracteres alfanuméricos en mayúsculas y minúsculas o guiones ('-').

az iot hub create --name my-sample-hub --resource-group my-sample-resource-group --location westus

Creación de una instancia de Device Provisioning Service

Cree una instancia de Device Provisioning Service con el comando az iot dps create.

En el ejemplo siguiente, se crea un servicio de aprovisionamiento llamado my-sample-dps en la ubicación westus. También tendrá que elegir un nombre único global para su propio servicio de aprovisionamiento. Asegúrese de que sigue las convenciones de nomenclatura de IoT Hub Device Provisioning Service: debe tener entre 3 y 64 caracteres, y solo puede contener caracteres alfanuméricos en mayúsculas y minúsculas o guiones ('-').

az iot dps create --name my-sample-dps --resource-group my-sample-resource-group --location westus

Sugerencia

El ejemplo crea el servicio de aprovisionamiento en la ubicación de oeste de EE. UU. Para ver una lista de las ubicaciones disponibles, ejecute el comando az provider show --namespace Microsoft.Devices --query "resourceTypes[?resourceType=='ProvisioningServices'].locations | [0]" --out table o vaya a la página Estado de Azure página y busque "Servicio Device Provisioning". En los comandos, las ubicaciones se pueden especificar en formato de una palabra o de varias; por ejemplo, westus, West US, WEST US, etc. El valor no distingue mayúsculas de minúsculas. Si utiliza el formato de varias palabras para especificar la ubicación, escriba el valor entre comillas; por ejemplo, --location "West US".

Obtención de la cadena de conexión del centro de IoT

La cadena de conexión de un centro de IoT se necesita para vincularlo el servicio Device Provisioning. Utilice el comando az iot hub show-connection-string para obtener la cadena de conexión y use su resultado para establecer una variable que utilizará al vincular los dos recursos.

En el siguiente ejemplo se establece la variable hubConnectionString en el valor de la cadena de conexión de la clave principal de la directiva iothubowner del centro (el parámetro --policy-name se puede usar para especificar otra directiva). Cambie my-sample-hub por el nombre del IoT Hub único que eligió antes. El comando usa las opciones query y output de la CLI de Azure para extraer la cadena de conexión de la salida del comando.

hubConnectionString=$(az iot hub show-connection-string --name my-sample-hub --key primary --query connectionString -o tsv)

Puede usar el comando echo para ver la cadena de conexión.

echo $hubConnectionString

Nota

Estos dos comandos son válidos para un host que funcione en Bash.

Si usa un shell CMD o Windows local, o un host de PowerShell, modifique los comandos para utilizar la sintaxis correcta de dicho entorno.

Si usa Azure Cloud Shell, compruebe que la lista desplegable de entornos, que se encuentra en el lado izquierdo de la ventana del shell, indica Bash.

El centro de IoT y el servicio de aprovisionamiento se vinculan con el comando az iot dps linked-hub create.

En el ejemplo siguiente se vinculan un centro de IoT llamado my-sample-hub de la ubicación westus y una instancia de Device Provisioning Service llamada my-sample-dps. Cambie estos nombres por los nombres únicos de IoT Hub y Device Provisioning Service que eligió antes. El comando utiliza la cadena de conexión para el centro de IoT que se almacenó en la variable hubConnectionString en el paso anterior.

az iot dps linked-hub create --dps-name my-sample-dps --resource-group my-sample-resource-group --connection-string $hubConnectionString --location westus

El comando puede tardar varios minutos en completarse.

Comprobación del servicio de aprovisionamiento

Para obtener los detalles del servicio de aprovisionamiento, use el comando az iot dps show.

El ejemplo siguiente obtiene los detalles de un servicio de aprovisionamiento llamado my-sample-dps. Cambie este nombre por su propio nombre de Device Provisioning Service.

az iot dps show --name my-sample-dps

El centro de IoT vinculado se muestra en la colección properties.iotHubs.

Comprobación del servicio de aprovisionamiento

Limpieza de recursos

Otras guías de inicio rápido de esta colección se basan en los valores de esta. Si tiene previsto seguir trabajando con las siguientes guías de inicio rápido o tutoriales, no elimine los recursos creados en esta guía de inicio rápido. Si no planea continuar, puede utilizar los siguientes comandos para eliminar el servicio de aprovisionamiento, el centro de IoT o el grupo de recursos y todos sus recursos. Reemplace los nombres de los recursos escritos a continuación por los nombres de sus propios recursos.

Para eliminar el servicio de aprovisionamiento, ejecute el comando az iot dps delete:

az iot dps delete --name my-sample-dps --resource-group my-sample-resource-group

Para eliminar el centro de IoT, ejecute el comando az group delete:

az iot hub delete --name my-sample-hub --resource-group my-sample-resource-group

Para eliminar un grupo de recursos y todos sus recursos, use el comando az group delete:

az group delete --name my-sample-resource-group

Pasos siguientes

En este inicio rápido, ha implementado un centro de IoT y una instancia de Device Provisioning Service, y ha vinculado los dos recursos. Para aprender a usar esta configuración para aprovisionar un dispositivo simulado, vaya al inicio rápido en el que se explica cómo crear un dispositivo simulado.