.NET .NET Aspire Bereitstellungen
.NET Aspire Projekte werden mit cloud-agnostischen Prinzipien erstellt und ermöglichen flexible Bereitstellung auf verschiedenen Plattformen, die .NET und Container unterstützen. Benutzer können die bereitgestellten Richtlinien für die Bereitstellung in anderen Cloudumgebungen oder lokalem Hosting anpassen. Der manuelle Bereitstellungsprozess ist zwar machbar, umfasst jedoch aufwändige Schritte, die fehleranfällig sind. Benutzer bevorzugen die Nutzung von CI/CD-Pipelines und cloudspezifischen Tools für eine optimierte Bereitstellungserfahrung, die auf ihre gewählte Infrastruktur zugeschnitten ist.
Bereitstellungsmanifest
Um Bereitstellungstools von Microsoft und anderen Cloudanbietern zu ermöglichen, die Struktur von .NET.NET Aspire Projekten zu verstehen, können spezielle Ziele des AppHost-Projekts ausgeführt werden, um eine Manifestdatei zu generieren, die die von der App verwendeten Projekte/Dienste und die eigenschaften beschreibt, die für die Bereitstellung erforderlich sind, z. B. Umgebungsvariablen.
Weitere Informationen zum Schema des Manifests und zum Ausführen der Ziele des App-Host-Projekts finden Sie im Manifestformat für Bereitstellungstool-Ersteller unter .NET.NET Aspire.
Bereitstellen für Azure
.NET Aspire ermöglicht die Bereitstellung auf Azure Container Apps. Die Anzahl der Umgebungen, in die .NET.NET Aspire bereitgestellt werden kann, wächst im Laufe der Zeit.
Azure Container Apps
.NET .NET Aspire Projekte sollen in containerisierten Umgebungen ausgeführt werden. Azure Container Apps ist eine vollständig verwaltete Umgebung, in der Sie Microservices und containerisierte Anwendungen auf einer serverlosen Plattform ausführen können. Im Azure Container Apps Thema wird beschrieben, wie Sie Aspire Apps manuell mithilfe von Bicep oder mithilfe der Azure Developer CLI (azd) auf ACA bereitstellen.
Verwenden Sie Application Insights für .NET Aspire-Telemetrie
.NET Aspire Projekte sind darauf ausgelegt, Telemetriedaten mit OpenTelemetry zu senden, das ein Anbietermodell verwendet. .NET Aspire-Projekte können ihre Telemetrie mit der Azure Monitor-Telemetry-Distro an Azure Monitor / Application Insights leiten. Weitere Informationen finden Sie in Verwenden von Application Insights für .NET Aspire Telemetrie für schrittweise Anleitungen.
Bereitstellen für Kubernetes
Kubernetes ist eine beliebte Container-Orchestrierungsplattform, die .NET Aspire Projekte ausführen kann. Um .NET Aspire Projekte in Kubernetes Clustern bereitzustellen, müssen Sie das .NET AspireJSON Manifest einer Kubernetes YAML-Manifestdatei zuordnen. Hierfür gibt es zwei Möglichkeiten: mithilfe des Aspir8-Projekts oder durch manuelles Erstellen von Kubernetes Manifesten.
Das Aspir8-Projekt
Aspir8, ein Open-Source-Projekt, ermöglicht das Erstellen von Bereitstellungs-YAML auf Grundlage von dem .NET.NET Aspire App-Hostmanifest. Das Projekt gibt ein .NET globales Tool aus, das zum Ausführen einer Reihe von Vorgängen verwendet werden kann, was zur Generierung von Kubernetes Manifesten führt.
-
aspirate init
: Initialisiert das Aspir8 Projekt im aktuellen Verzeichnis. -
aspirate generate
: Generiert Kubernetes-Manifeste basierend auf dem .NET Aspire-App-Host-Manifest. -
aspirate apply
: Wendet die generierten Kubernetes-Manifesten auf den Kubernetes-Cluster an. -
aspirate destroy
: Löscht die vom Befehlapply
erstellten Ressourcen.
Mit diesen Befehlen können Sie Ihre Apps erstellen, sie containerisieren und in Kubernetes Clustern bereitstellen. Weitere Informationen finden Sie unter Aspir8.
Manifeste Kubernetes manuell erstellen
Alternativ können die Kubernetes Manifeste manuell erstellt werden. Dies erfordert mehr Aufwand und ist zeitaufwändig. Weitere Informationen finden Sie unter Deploy a .NET microservice to Kubernetes.