Compartir a través de


Despliegues .NET.NET Aspire

.NET Aspire proyectos se crean con principios independientes de la nube, lo que permite la flexibilidad de implementación en varias plataformas que admiten .NET y contenedores. Los usuarios pueden adaptar las directrices proporcionadas para la implementación en otros entornos de nube o hospedaje local. El proceso de implementación manual, aunque factible, implica pasos exhaustivos propensos a errores. Los usuarios prefieren aprovechar las canalizaciones de CI/CD y las herramientas específicas de la nube para una experiencia de implementación más simplificada adaptada a su infraestructura elegida.

Manifiesto de implementación

Para permitir que las herramientas de implementación de Microsoft y otros proveedores de nube comprendan la estructura de los proyectos de .NET.NET Aspire, es posible ejecutar objetivos especializados del proyecto AppHost de para generar un archivo de manifiesto que describa los proyectos/servicios empleados por la aplicación y las propiedades necesarias para la implementación, como las variables de entorno.

Para obtener más información sobre el esquema del manifiesto y cómo ejecutar los objetivos del proyecto alojados por la aplicación, consulte el formato de manifiesto para los generadores de herramientas de implementación .NET.NET Aspire.

Desplegar en Azure

.NET Aspire permite la implementación en Azure Container Apps. El número de entornos a los que se puede desplegar .NET.NET Aspire aumentará con el tiempo.

Azure Container Apps

.NET .NET Aspire proyectos están diseñados para ejecutarse en entornos containerizados. Azure Container Apps es un entorno totalmente administrado que permite ejecutar microservicios y aplicaciones en contenedores en una plataforma sin servidor. En el tema Azure Container Apps se describe cómo implementar Aspire aplicaciones en ACA manualmente, mediante bicep o mediante el Azure Developer CLI (azd).

Uso de Application Insights para la telemetría de .NET Aspire

Los proyectos .NET Aspire están diseñados para emitir telemetría mediante OpenTelemetry, que utiliza un modelo de proveedor. Los proyectos .NET Aspire pueden dirigir su telemetría a Azure Monitor y Application Insights usando la distribución de telemetría de Azure Monitor. Para obtener más información, consulte para obtener instrucciones paso a paso sobre el uso de Application Insights para .NET Aspire telemetría.

Desplegar en Kubernetes

Kubernetes es una plataforma popular de orquestación de contenedores que puede ejecutar proyectos de .NET Aspire. Para implementar proyectos de .NET Aspire en clústeres de Kubernetes, debe mapear el manifiesto .NET AspireJSON a un archivo YAML de manifiesto de Kubernetes. Hay dos maneras de hacerlo: mediante el uso del proyecto Aspir8 o mediante la creación manual de manifiestos Kubernetes.

El proyecto aspir8

Aspir8, un proyecto de código abierto, gestiona la generación de YAML de implementación en función del manifiesto de la aplicación host .NET.NET Aspire. El proyecto genera una herramienta global .NET que se puede usar para realizar una serie de tareas, lo que da lugar a la generación de manifiestos de Kubernetes:

  • aspirate init: inicializa el proyecto de Aspir8 en el directorio actual.
  • aspirate generate: genera manifiestos de Kubernetes basados en el manifiesto de host de la aplicación .NET Aspire.
  • aspirate apply: aplica los manifiestos de Kubernetes generados al clúster de Kubernetes.
  • aspirate destroy: elimina los recursos creados por el comando apply.

Con estos comandos, puede compilar las aplicaciones, incluirlas en contenedores e implementarlas en Kubernetes clústeres. Para obtener más información, vea Aspir8.

Crear manualmente manifiestos de Kubernetes

Como alternativa, los manifiestos de Kubernetes se pueden crear manualmente. Esto implica más esfuerzo y es más lento. Para obtener más información, consulte Implementación de un microservicio de .NET en Kubernetes.