Noticias

Introducción a Azure IoT Edge en Ubuntu Core

introducir

A principios de este mes/esta semana, anunciamos que ahora puede beneficiarse del poder combinado de Ubuntu Core y Azure IoT Edge, acercando las capacidades de computación, almacenamiento e inteligencia artificial de la nube al borde de la red. Azure IoT Edge es un tiempo de ejecución centrado en el dispositivo que le permite implementar, ejecutar y monitorear cargas de trabajo de Linux en contenedores. Ubuntu Core es una versión de Ubuntu optimizada específicamente para IoT y sistemas integrados. La combinación de ambos es ideal para quienes buscan latencia reducida, menor ancho de banda y procesamiento de datos más eficiente.

Este tutorial le ayuda a empezar a utilizar un dispositivo Ubuntu Core y a administrarlo desde Azure IoT Hub. Azure IoT Hub es una plataforma en la nube que le permite conectarse directamente a dispositivos, configurar e implementar cargas de trabajo perimetrales en sus dispositivos.

Configurando Ubuntu Core

Ubuntu Core es la versión más pequeña e inmutable de Ubuntu centrada en proporcionar una plataforma confiable y segura para dispositivos conectados.

Crear una cuenta SSO de Ubuntu

Antes de configurar una instalación de Ubuntu Core, debe asegurarse de poder conectarse después de la configuración inicial. Esto requerirá una cuenta SSO de Ubuntu y un par de claves SSH.

Si ya tiene una cuenta, puede omitir este paso. Si no tiene una cuenta SSO, puede registrar una aquí:

clave SSH

Para verificar su identidad al intentar conectarse a un dispositivo Ubuntu Core, debe cargar una clave SSH pública en su cuenta SSO. Luego, esto se descargará automáticamente en el dispositivo Core durante la configuración inicial.

Para generar y cargar un par de claves SSH, siga los pasos detallados en el siguiente enlace:

Conéctese a Ubuntu Core usando SSH

Es posible que también deba devolver esta información después de la siguiente etapa de configuración del dispositivo Core.

Obtener y configurar un dispositivo Ubuntu Core

Para la siguiente etapa del proceso, necesitará un dispositivo IoT que ejecute Ubuntu Core. Puede ser un dispositivo físico, como una Raspberry Pi, o un dispositivo virtual en su escritorio.

Puede encontrar todas las imágenes de Ubuntu Core disponibles y listas para descargar en:

Para configurar un dispositivo virtual, puede usar QEMU para emular el hardware que necesita. Siga las instrucciones a continuación para completar esta etapa:

Probando Ubuntu Core usando QEMU

Independientemente de la opción que elija, ahora debería tener una instalación de Ubuntu Core en pleno funcionamiento a la que pueda conectarse a través de SSH. Ahora está listo para configurarlo para Microsoft Azure.

Instalar Azure IoT Edge Snap

Después de configurar y conectarse a la instalación de Ubuntu Core, el siguiente paso es instalar Azure Snapshot.

Microsoft proporciona cuatro instantáneas para su instalación de Ubuntu Core:

  • La Unidad de gestión de identidad utiliza la nube de Azure para autenticar su dispositivo.
  • Las instantáneas del agente del dispositivo garantizan que su instalación esté actualizada.
  • Edge Snap administra cargas de trabajo implementadas en la nube en el dispositivo.
  • El agente de optimización de entrega administra las cargas descargadas desde la nube de Azure.

Además, las cargas de trabajo de Azure se distribuyen como contenedores Docker, por lo que debe instalar Docker Snap para ejecutar estas cargas de trabajo.

Las cinco instantáneas se pueden instalar desde una terminal SSH usando el siguiente comando:

snap install azure-iot-identity

snap install azure-iot-edge

snap install deviceupdate-agent

snap install deliveryoptimization-agent

snap install docker

Nota: Si se le solicita que utilice sudo Para realizar una instalación instantánea, es posible que deba autenticarse utilizando la tienda Snap inicio de sesión de instantánea sudo . Esto le permite ejecutar todos los comandos de instantáneas sin privilegios de root.

Conexión de enchufes y enchufes

De forma predeterminada, las instantáneas no dependen de ellas, no son de confianza y están restringidas, por lo que una vez instaladas mediante la interfaz, deben conectarse a otras instantáneas y recursos del sistema. Cada complemento tiene un conjunto seleccionable de enchufes y ranuras que pueden requerir o proporcionar derechos de acceso específicos. Para implementaciones de producción, se pueden configurar para que se conecten automáticamente y así reducir el esfuerzo de configuración, pero es posible que primero deba configurar manualmente algunos de ellos para asegurarse de que tengan todos los permisos que necesitan.

Si instala instantáneas desde un almacén de instantáneas global, la mayoría de las interfaces ya estarán conectadas, pero algunas pueden requerir configuración manual.

Desde una terminal SSH, puede verificar qué interfaces están conectadas usando el siguiente comando para cada instantánea:

undefined

snap connections azure-iot-identity

snap connections azure-iot-edge

snap connections deviceupdate-agent

snap connections deliveryoptimization

Para cada instantánea, verá una lista de interfaces. Si la ranura está vacía, es posible que sea necesario cablearla.Por ejemplo, si recibe la siguiente respuesta de Snapshot identidad azul iot:

Podemos ver que algunas interfaces están conectadas, pero la instantánea de identidad no puede acceder a la información del nombre de host, la información de registro, la información de montaje, la información del sistema o tpm. Necesitamos conectarlos manualmente, lo cual podemos hacer desde la terminal:

undefined

snap connect azure-iot-identity:log-observe

snap connect azure-iot-identity:mount-observe

snap connect azure-iot-identity:system-observe

snap connect azure-iot-identity:tpm

snap connect azure-iot-identity:hostname-control

El formato de este comando es Conexión rápida Pero no necesitamos especificarlos cuando nos conectamos al socket del sistema snapd.

Borde de la IoT

Para el agente IoT Edge, podemos realizar un proceso similar, pero esta vez también queremos conectarnos desde una instantánea (agente Edge) a otra instantánea (Docker). El siguiente comando debería cubrir todas las interfaces no conectadas.

# Connect to logging and grant permission to query system info

snap connect azure-iot-edge:log-observe

snap connect azure-iot-edge:mount-observe

snap connect azure-iot-edge:system-observe

snap connect azure-iot-edge:hostname-control

# Connect IoT Edge to Docker

snap connect azure-iot-edge:docker docker:docker-daemon

Agente de dispositivo IoT

undefined

# Connect to logging and grant permission to query system info

snap connect deviceupdate-agent:account-control

snap connect deviceupdate-agent:hardware-observe

#Connect to SnapD

snap connect deviceupdate-agent:snapd-control

#Connect to other Azure Snaps

snap connect deviceupdate-agent:identity-service azure-iot-identity:identity-service

Con todas las interfaces ahora conectadas, podemos comenzar a conectarnos a la nube.

Configurar una cuenta de Azure IoT Edge

Para el siguiente paso, debe migrar a la nube y al portal Azure IoT Edge. Si ya tiene una cuenta de Azure, puede iniciar sesión aquí:

portal azul

Si no tiene una cuenta, puede registrarse para obtener una aquí:

Borde de Azure IoT

Puede optar por crear una cuenta gratuita (que incluye créditos de vista previa por tiempo limitado) o una cuenta paga con acceso a servicios premium. Azure IoT Center y Azure IoT Edge son servicios gratuitos y se pueden utilizar de forma gratuita siempre que no excedan los límites de uso de Azure.Puede encontrar más información aquí. aquí.

Una vez que tenga acceso a su cuenta de Azure y a Azure Portal, deberá crear un centro de IoT. En la sección Servicios de Azure del portal, haga clic en Más servicios y seleccione IoT Hub en la sección IoT.

Después de ingresar a IoT Hub, debe configurar un centro. Haga clic en el botón «Crear» y complete los detalles. Una vez que esté satisfecho, haga clic en el botón «Crear».

Después de una breve pausa, se implementará su centro y ahora podremos verlo en el portal de IoT Hub.

Seleccione su hub, luego seleccione Dispositivos en el menú en el lado derecho de la pantalla.

Haga clic en «Agregar nuevo dispositivo», elija un nombre para su dispositivo y luego seleccione la casilla de verificación «Dispositivo IoT Edge». Seleccione cualquier configuración adicional que desee y haga clic en Guardar.

Después de unos momentos, su dispositivo se creará y se agregará a su centro.

Seleccione su dispositivo desde el centro y verá varias opciones e información. Por ahora, sólo nos interesa la «cadena de conexión principal», ya que la necesitamos para configurar el dispositivo real.

Puede ver la cadena de conexión haciendo clic en el ícono del ojo pequeño o copiarla a su portapapeles haciendo clic en el ícono de la derecha.

Configura tu dispositivo

Para que su dispositivo Core se conecte al centro IoT recién establecido, necesita

Configure usando la cadena de conexión que acabamos de obtener.

Regrese a la terminal SSH del dispositivo Core y cree un archivo llamado Perfil.

En este punto, puede resultar útil instalar un editor de texto en el dispositivo Core. Siga los pasos a continuación para instalar el complemento restringido de Nano y conectarlo a su directorio de inicio.Luego abra el archivo config.toml para editarlo.

sudo snap install nano-strict

snap connect nano-strict:home :home

nano-strict config.toml

Copie y pegue lo siguiente en un editor de texto, pero reemplace la cadena de conexión con la cadena obtenida del dispositivo IoT Hub.

## Manual provisioning with connection string 

# 

[provisioning]

source = "manual" 

connection_string = "HostName=snaphub-free.azure-devices.net;DeviceId=iotvm;SharedAccessKey=XXXXXXXXX"

Utilice el siguiente comando para aplicar este perfil a Azure Snap:

sudo snap set azure-iot-edge raw-config="$(cat config.toml)"

También puede usar credenciales X.509 para autenticar su dispositivo en Azure IoT Hub.Para obtener información sobre cómo utilizar este método, consulte este Documentación de Microsoft.

Su dispositivo en Azure IoT Hub

Una vez configurado, su dispositivo descargará algunos contenedores que le permitirán ejecutar cargas de trabajo de Azure IoT Edge. Esto puede llevar algún tiempo dependiendo de la velocidad de su conexión de red, pero una vez completado, su dispositivo será visible en el Portal de Azure, desde donde podrá configurar otras cargas de trabajo y explorar lo que Azure tiene para ofrecer para su dispositivo.

Implementa el mod en tu dispositivo

Próximo paso

Ahora debería tener un dispositivo Ubuntu Core completamente operativo y configurado que se puede administrar de forma remota mediante Azure IoT Hub. Desde aquí puede explorar lo que Azure IoT tiene para ofrecer.

Si desea intentar implementar su primer mod en un dispositivo Edge, este tutorial Microsoft le muestra cómo implementar módulos de detección para enviar datos de telemetría simulados desde su dispositivo a la nube. Es el lugar perfecto para comenzar con las instalaciones de Ubuntu Core Azure IoT Edge.

Para obtener más información sobre las capacidades de Azure IoT, consulte la documentación de Microsoft.

Documentación de Azure IoT Edge | Microsoft Learning

Para obtener más información sobre el poder de Ubuntu Core, consulte Ubuntu Core.

LEER  Deepin 23 Preview lanzado, actualización atómica

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba