Bereitstellungsmöglichkeiten in Azure
Azure bietet verschiedene Bereitstellungslösungen für Java-Anwendungen. In dieser Lerneinheit werden einige davon besprochen.
Virtuelle Computer
Virtuelle Azure-Computer (VMs) sind für Windows und Linux verfügbar. Bei Linux-VMs können Sie zwischen verschiedenen Distributionen wie Ubuntu, Red Hat oder SUSE wählen.
VMs sind in der Regel der Ausgangspunkt für Lift & Shift. Bei Letzterem handelt es sich um den Prozess für die Migration vorhandener Computer zu Azure. Hierbei müssen Sie sich um Betriebssystemupdates, die Java-Runtime, die Netzwerkeinstellungen, die Portweiterleitung und die Sicherheit kümmern.
Container
Azure Kubernetes Service (AKS) ist ein Managed Kubernetes-Dienst. Kubernetes ist faktisch der Standard für die Orchestrierung containerisierter Anwendungen. Diese Plattform eignet sich perfekt für Microservices und mittelgroße Anwendungen. AKS bietet Funktionen für die Dienstermittlung, automatische Skalierung und Überwachung. Microsoft arbeitet an Kubernetes-Projekten wie Virtual Kubelet, Dapr und Open Application Model mit.
Azure Red Hat OpenShift ist die von Red Hat verwaltete Variante von Kubernetes.
Azure Container Instances ist eine Lösung für schnelle Tests, Proofs of Concepts und Sidecarcontainer.
Azure App Service
Eine der einfachsten und unkompliziertesten Bereitstellungsmöglichkeiten für Java-Anwendungen in Azure ist Azure App Service. Der Dienst bietet automatische Skalierung, eine integrierte Überwachung und Sicherheit.
Azure Container Apps
Mit Azure Container Apps können Sie sich auf das Erstellen containerisierter Java-Anwendungen konzentrieren, unabhängig davon, ob es sich um monolithische Dienste oder Microservices handelt, ohne die Infrastruktur verwalten zu müssen. Sie können JARs, WARs oder sogar Quellcode bereitstellen, und die Plattform optimiert automatisch Arbeitsspeicher und skaliert Ihre Anwendungen bedarfsabhängig. Außerdem werden erweiterte Diagnosefeatures für die JVM-Problembehandlung integriert. Damit wird eine effiziente Leistung für Ihre Java-Apps gewährleistet.
Darüber hinaus unterstützt Azure Container Apps verwaltete Spring-Komponenten wie Eureka Server und Config Server und ermöglicht eine nahtlose Spring-Integration. Die Lösung wurde als Teil des Azure-Ökosystems entwickelt, um Unternehmensworkloads mit kostengünstiger Skalierung und ausgereifter Speicherverwaltung zu verarbeiten, sodass sie sowohl für traditionelle als auch für moderne Anwendungsarchitekturen ideal ist.
Functions
Sie können Ihren Java-Code als Azure-Funktionen bereitstellen. So können Sie von hervorragenden Tools und der Integration mit anderen Azure-Diensten profitieren.
Beispielszenarien für Funktionen:
- Back-Ends, die mit dem Web, mobilen Geräten und dem Internet der Dinge (Internet of Things, IoT) verbunden sind
- Datei- und Streamverarbeitung für Bots oder in Echtzeit
- Automatisierung geplanter Aufgaben