Freigeben über


Kandidaten für cloudnative Apps

Tipp

Dieser Inhalt ist ein Auszug aus dem eBook, Architecting Cloud Native .NET Applications for Azure, verfügbar auf .NET Docs oder als kostenlose herunterladbare PDF, die offline gelesen werden kann.

Miniaturansicht des E-Books „Architecting Cloud Native .NET Applications for Azure“.

Überlegen Sie, welche Apps Ihre Organisation erstellen muss. Sehen Sie sich dann die vorhandenen Apps in Ihrem Portfolio an. Wie viele von ihnen garantieren eine cloudeigene Architektur? Alle? Vielleicht einige?

Bei der Anwendung einer Kosten-Nutzen-Analyse besteht eine hohe Wahrscheinlichkeit, dass einige die Anstrengung nicht unterstützen würden. Die Kosten, cloudnativ zu werden, würden den Geschäftswert der Anwendung weit überschreiten.

Welche Art von Anwendung kann ein Kandidat für cloudnativ sein?

  • Strategische Unternehmenssysteme, die sich ständig weiterentwickeln müssen, um geschäftliche Fähigkeiten und Funktionen zu bieten.
  • Eine Anwendung, die eine hohe Freigabegeschwindigkeit erfordert – mit hoher Konfidenz
  • Ein System, bei dem einzelne Features freigegeben werden müssen, ohne dass das gesamte System neu bereitgestellt werden muss
  • Eine Anwendung, die von Teams mit Know-how in verschiedenen Technologiestapeln entwickelt wurde
  • Eine Anwendung mit Komponenten, die unabhängig skaliert werden müssen

Kleinere, weniger wirkungsvolle Branchenanwendungen können gut mit einer einfachen monolithischen Architektur in einer Cloud PaaS-Umgebung gehostet werden.

Dann gibt es legacy-Systeme. Während wir alle neue Anwendungen erstellen möchten, sind wir häufig für die Modernisierung von Legacyworkloads verantwortlich, die für das Unternehmen von entscheidender Bedeutung sind.

Modernisieren von Legacy-Apps

Das kostenlose Microsoft E-Book Modernisieren vorhandener .NET-Anwendungen mit Azure-Cloud und Windows-Containern bietet Anleitungen zum Migrieren lokaler Workloads in die Cloud. Abbildung 1-10 zeigt, dass es keine Allzweckstrategie für die Modernisierung von Legacy-Anwendungen gibt.

Strategien für die Migration älterer Workloads

Abbildung 1-10. Strategien für die Migration von Altsystem-Arbeitslasten

Monolithische Apps, die nicht kritisch sind, könnten von einer schnellen Lift & Shift-Migration profitieren. Hier wird die lokale Workload ohne Änderungen auf einer cloudbasierten VM neu gehostet. Bei diesem Ansatz wird das IaaS-Modell (Infrastructure as a Service) verwendet. Azure umfasst mehrere Tools wie Azure Migrate, Azure Site Recovery und Azure Database Migration Service , um die Verschiebung zu optimieren. Obwohl diese Strategie einige Kosteneinsparungen erzielen kann, waren solche Anwendungen in der Regel nicht darauf ausgelegt, die Vorteile von Cloud Computing zu entsperren und zu nutzen.

Ältere Apps, die für das Unternehmen von entscheidender Bedeutung sind, profitieren häufig von einer verbesserten cloudoptimierten Migration. Dieser Ansatz umfasst Bereitstellungsoptimierungen, die wichtige Clouddienste aktivieren – ohne die Kernarchitektur der Anwendung zu ändern. Sie können die Anwendung beispielsweise containern und in einem Container-Orchestrator bereitstellen, z. B. Azure Kubernetes Services, die weiter unten in diesem Buch erläutert werden. Einmal in der Cloud kann die Anwendung Cloud-Sicherungsdienste wie Datenbanken, Nachrichtenwarteschlangen, Überwachung und verteiltes Zwischenspeichern nutzen.

Schließlich können monolithische Apps, die strategische Unternehmensfunktionen bereitstellen, am besten von einem Cloud-Native-Ansatz profitieren, dem Thema dieses Buches. Dieser Ansatz bietet Flexibilität und Geschwindigkeit. Es geht mit Kosten einher, die Plattform zu wechseln, neu zu gestalten und Code neu zu schreiben. Im Laufe der Zeit könnte eine Legacy-Anwendung in Microservices zerlegt, containerisiert und letztendlich in eine cloud-native Architektur replattformiert werden.

Wenn Sie und Ihr Team der Meinung sind, dass ein cloudnativer Ansatz angemessen ist, müssen Sie die Entscheidung mit Ihrer Organisation rationalisieren. Was genau ist das Geschäftsproblem, das ein cloudeigener Ansatz lösen wird? Wie würde es den geschäftlichen Anforderungen entsprechen?

  • Schnelle Veröffentlichungen von Features mit erhöhter Konfidenz?

  • Feinkörnige Skalierbarkeit - effizientere Ressourcennutzung?

  • Verbesserte Systemresilienz?

  • Verbesserte Systemleistung?

  • Mehr Einblicke in Vorgänge?

  • Mischen Sie Entwicklungsplattformen und Datenspeicher, um das beste Tool für Ihren Auftrag zu finden?

  • Zukunftssichere Anwendungsinvestitionen?

Die richtige Migrationsstrategie hängt von den Prioritäten der Organisation und den Systemen ab, auf die Sie abzielen. Für viele kann es kostengünstiger sein, eine monolithische Anwendung in der Cloud zu optimieren oder grobkörnige Dienste zu einer N-Tier-App hinzuzufügen. In diesen Fällen können Sie die Cloud PaaS-Funktionen wie die von Azure App Service angebotenen weiterhin vollständig nutzen.

Zusammenfassung

In diesem Kapitel haben wir Cloud-natives Computing eingeführt. Wir haben eine Definition zusammen mit den wichtigsten Funktionen bereitgestellt, die eine cloudeigene Anwendung fördern. Wir haben uns die Arten von Anwendungen angesehen, die diese Investition und den Aufwand rechtfertigen könnten.

Mit dem Abschluss der Einführung befassen wir uns nun mit einem deutlich detaillierteren Blick auf Cloud-Native-Technologien.

Verweise