Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 implementar los microservicios en contenedores locales de Docker. Una implementación de microservicios local usa los siguientes servicios en la nube: IoT Hub, Cosmos DB, Azure Streaming Analytics y los servicios de Azure Time Series Insights en la nube.
Si desea ejecutar el acelerador de soluciones de supervisión remota en un IDE en el equipo local, consulte Implementación local del acelerador de soluciones de supervisión remota: Visual Studio.
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:
- git
- Docker
- Visual Studio : si tiene previsto realizar cambios en los microservicios.
- Node.js v8 : este software es un requisito previo para la CLI de PCS que los scripts usan para crear recursos de Azure. No use Node.js v10.
Nota:
Estas herramientas están disponibles en muchas plataformas, como Windows, Linux e iOS.
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:
En el entorno de la línea de comandos, vaya a la carpeta \services\scripts\local\launch en la copia clonada del repositorio.
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 loginEjecute 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 detalles para que Remote Monitoring 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.
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 home folder>\.pcs\<solution name.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 Docker
Abra un nuevo símbolo del sistema para asegurarse de tener acceso a las variables de entorno establecidas por el script start.cmd. En Windows, puede comprobar que las variables de entorno se establecen ejecutando el siguiente comando:
set PCS
El comando muestra todas las variables de entorno establecidas por el script de start.cmd .
Asegúrese de que Docker se está ejecutando en el equipo local.
Nota:
Docker debe ejecutar contenedores de Linux si se ejecuta en Windows.
Los microservicios que se ejecutan en los contenedores locales de Docker deben acceder a los servicios en la nube de Azure. Puede probar la conectividad a Internet del entorno de Docker mediante el siguiente comando para hacer ping a una dirección de Internet desde dentro de un contenedor:
docker run --rm -ti library/alpine ping google.com
Para ejecutar el acelerador de soluciones, vaya a la carpeta services\scripts\local en el entorno de la línea de comandos y ejecute el siguiente comando:
docker-compose up
Nota:
Asegúrese de compartir una unidad local con Docker antes de ejecutar docker-compose up.
La primera vez que ejecute este comando, Docker descarga las imágenes de microservicios de Docker Hub para compilar los contenedores localmente. En las siguientes ejecuciones, Docker ejecuta los contenedores inmediatamente.
Sugerencia
Microsoft publica con frecuencia nuevas imágenes de Docker con nuevas funcionalidades. Puede usar el siguiente conjunto de comandos para limpiar los contenedores locales de Docker y las imágenes correspondientes antes de extraer las más recientes:
docker list
docker rm <list_of_containers>
docker rmi <list_of_images>
Puede usar un shell independiente para ver los registros del contenedor. En primer lugar, busque el identificador de contenedor mediante el docker ps comando . A continuación, use docker logs {container-id} --tail 1000 para ver las últimas 1000 entradas del contenedor especificado.
Inicio del trabajo de Stream Analytics
Siga estos pasos para iniciar el trabajo de Stream Analytics:
- Vaya a Azure Portal.
- Vaya al grupo de recursos creado para la solución. El nombre del grupo de recursos es el que eligió para su solución mientras ejecutaba el script start.cmd.
- Haga clic en el trabajo de Stream Analytics en la lista de recursos.
- En la página de información general del trabajo de Stream Analytics, haga clic en el botón Iniciar . A continuación, haga clic en Iniciar para iniciar el trabajo ahora.
Conexión al panel
Para acceder al panel de la solución de supervisión remota, vaya a https://localhost:8080 en el explorador. Ahora puede usar la interfaz de usuario web y los microservicios locales.
Limpiar
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 .
Use el docker-compose down --rmi all comando para quitar las imágenes de Docker y liberar espacio en el equipo local. 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.