Compartir a través de


Implementación local del acelerador de soluciones de supervisión remota: Visual Studio Code

En este artículo se muestra cómo implementar el acelerador de soluciones de supervisión remota en la máquina local para pruebas y desarrollo. Aprenderá a ejecutar los microservicios en Visual Studio Code. Una implementación de microservicios local usa los siguientes servicios en la nube: IoT Hub, Cosmos DB, Azure Streaming Analytics y Azure Time Series Insights.

Prerrequisitos

Para implementar los servicios de Azure usados por el acelerador de soluciones de supervisión remota, necesita una suscripción de Azure activa.

Si no tiene una cuenta, puede crear una cuenta de evaluación gratuita en tan solo un par de minutos. Para obtener más información, consulte Evaluación gratuita de Azure.

Configuración de la máquina

Para completar la implementación local, necesita las siguientes herramientas instaladas en la máquina de desarrollo local:

Nota:

Visual Studio Code está disponible para Windows, Mac y Ubuntu.

Descarga del código fuente

Los repositorios de código fuente de supervisión remota incluyen el código fuente y los archivos de configuración de Docker que necesita para ejecutar las imágenes de Docker de microservicios.

Para clonar y crear una versión local del repositorio, use el entorno de línea de comandos para ir a una carpeta adecuada en el equipo local. A continuación, ejecute uno de los siguientes conjuntos de comandos para clonar el repositorio de .NET:

Para descargar la versión más reciente de las implementaciones de microservicios de .NET, ejecute:

git clone --recurse-submodules https://github.com/Azure/azure-iot-pcs-remote-monitoring-dotnet.git

# To retrieve the latest submodules, run the following command:

cd azure-iot-pcs-remote-monitoring-dotnet
git submodule foreach git pull origin master

Nota:

Estos comandos descargan el código fuente de todos los microservicios además de los scripts que se usan para ejecutar los microservicios localmente. Aunque no necesita el código fuente para ejecutar los microservicios en Docker, el código fuente es útil si más adelante planea modificar el acelerador de soluciones y probar los cambios localmente.

Implementación de los servicios de Azure

Aunque en este artículo se muestra cómo ejecutar los microservicios localmente, dependen de los servicios de Azure que se ejecutan en la nube. Use el siguiente script para implementar los servicios de Azure. En los ejemplos de script siguientes se supone que usa el repositorio de .NET en una máquina Windows. Si está trabajando en otro entorno, ajuste las rutas, las extensiones de archivo y los separadores de rutas adecuadamente.

Creación de nuevos recursos de Azure

Si aún no ha creado los recursos de Azure necesarios, siga estos pasos:

  1. En el entorno de la línea de comandos, vaya a la carpeta \services\scripts\local\launch en la copia clonada del repositorio.

  2. Ejecute los siguientes comandos para instalar la herramienta pcs CLI e inicie sesión en su cuenta de Azure:

    npm install -g iot-solutions
    pcs login
    
  3. Ejecute el script start.cmd. El script le pide la siguiente información:

    • Un nombre de solución.

    • La suscripción de Azure que se va a usar.

    • Ubicación del centro de datos de Azure que se va a usar.

      El script crea un grupo de recursos en Azure con el nombre de la solución. Este grupo de recursos contiene los recursos de Azure que usa el acelerador de soluciones. Puede eliminar este grupo de recursos una vez que ya no necesite los recursos correspondientes.

      El script también agrega un conjunto de variables de entorno con un prefijo PCS a la máquina local. Estas variables de entorno proporcionan los detalles para que Supervisión Remota pueda leer desde un recurso de Azure Key Vault. Este recurso de Key Vault es donde la supervisión remota leerá sus valores de configuración.

      Sugerencia

      Cuando se completa el script, también guarda las variables de entorno en un archivo denominado <carpeta principal>\.pcs\<solution name.env>. Puede usarlos para futuras implementaciones del acelerador de soluciones. Tenga en cuenta que las variables de entorno establecidas en el equipo local invalidan los valores del archivo services\scripts\local\.env al ejecutar docker-compose.

  4. Salga del entorno de la línea de comandos.

Uso de recursos de Azure existentes

Si ya ha creado los recursos de Azure necesarios, cree las variables de entorno correspondientes en el equipo local. Establezca las variables de entorno para lo siguiente:

  • PCS_KEYVAULT_NAME : nombre del recurso de Azure Key Vault
  • PCS_AAD_APPID : identificador de aplicación de AAD
  • PCS_AAD_APPSECRET : secreto de aplicación de AAD

Los valores de configuración se leerán de este recurso de Azure Key Vault. Estas variables de entorno se pueden guardar en el archivo <carpeta personal>\.pcs\<nombre de solución.env> de la implementación. Tenga en cuenta que las variables de entorno establecidas en su máquina local sobrescriben los valores en el archivo services\scripts\local\.env al ejecutar docker-compose.

Parte de la configuración necesaria para el microservicio se almacena en una instancia de Key Vault que se creó en la implementación inicial. Las variables correspondientes en keyvault deben modificarse según sea necesario.

Ejecución de los microservicios

En esta sección, ejecutará los microservicios de supervisión remota. La interfaz de usuario web se ejecuta de forma nativa, el servicio Device Simulation en Docker y los microservicios de Visual Studio Code.

Compilación del código

Vaya a "azure-iot-pcs-remote-monitoring-dotnet\services" en la línea de comandos y ejecute los siguientes comandos para compilar el código.

dotnet restore
dotnet build -c Release

Implementación de todos los demás microservicios en el equipo local

En los pasos siguientes se muestra cómo ejecutar los microservicios de supervisión remota en Visual Studio Code:

  1. Inicie Visual Studio Code.
  2. En VS Code, abra la carpeta azure-iot-pcs-remote-monitoring-dotnet .
  3. Cree una carpeta denominada .vscode en la carpeta azure-iot-pcs-remote-monitoring-dotnet .
  4. Copie los archivos launch.json y tasks.json de services\scripts\local\launch\idesettings\vscode en la carpeta .vscode que acaba de crear.
  5. Abra el panel de depuración en VS Code y ejecute la configuración Run All Microservices. Esta configuración ejecuta el microservicio de simulación de dispositivo en Docker y ejecuta los demás microservicios del depurador.

La salida de la ejecución de Ejecutar todos los microservicios en la consola de depuración tiene el siguiente aspecto:

Implementación de microservicios locales

Ejecución de la interfaz de usuario web

En este paso, iniciará la interfaz de usuario web. Vaya a la carpeta azure-iot-pcs-remote-monitoring-dotnet\webui en la copia local y ejecute los siguientes comandos:

npm install
npm start

Una vez completado el inicio, el explorador muestra la página http://localhost:3000/dashboard. Se esperan errores en esta página. Para ver la aplicación sin errores, complete el paso siguiente.

Configuración y ejecución de NGINX

Configure un servidor proxy inverso para vincular la aplicación web y los microservicios que se ejecutan en el equipo local:

  • Copie el archivo nginx.conf de la carpeta webui\scripts\localhost en el directorio de instalación nginx\conf .
  • Ejecute nginx.

Para obtener más información sobre cómo ejecutar nginx, consulte nginx para Windows.

Conexión al panel

Para acceder al panel de la solución de supervisión remota, vaya a http://localhost:9000 en el explorador.

Limpieza

Para evitar cargos innecesarios, cuando haya terminado la prueba, quite los servicios en la nube de la suscripción de Azure. Para quitar los servicios, vaya a Azure Portal y elimine el grupo de recursos que creó el script start.cmd .

También puede eliminar la copia local del repositorio de supervisión remota creada al clonar el código fuente desde GitHub.

Pasos siguientes

Ahora que ha implementado la solución de supervisión remota, el siguiente paso es explorar las funcionalidades del panel de la solución.