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 de Azure 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. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
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.
En caso de que 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 o bien agregue un prefijo o sufijo único al nombre del ejemplo, o bien elija 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 servicio de aprovisionamiento de dispositivos
Cree una instancia de servicio de aprovisionamiento de dispositivos con el comando az iot dps create.
En el ejemplo siguiente, se creará una instancia de servicio de aprovisionamiento de dispositivos llamada my-sample-dps en la ubicación westus. También deberá elegir un nombre único global para su propia instancia. 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"
.
Para lograr resistencia y confiabilidad, recomendamos la implementación en una de las regiones que admiten las Availability Zones.
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 connection-string show para obtener la cadena de conexión y use su resultado para establecer una variable que se utilizará más tarde, 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 connection-string show --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.
Vinculación del centro de IoT y el servicio de aprovisionamiento
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.
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 los siguientes inicios rápidos o tutoriales, no elimine los recursos creados en este inicio rápido. Si no tiene previsto 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 incluidos en los siguientes comandos con 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 saber cómo usar esta configuración para aprovisionar un dispositivo, vaya al inicio rápido en el que se explica cómo crear un dispositivo.