Serie: Eigene Anwendungen auf Microsoft Azure – Teil 7: Wechsel des Ausführungsmodells


Microsoft Azure bietet zur Ausführung eigener Anwendungen in der Public Cloud vier Optionen: Virtual Machines, Cloud Services, Websites und Mobile Services. Diese Blog-Serie gibt Hinweise zur Entscheidung für die zu einem konkreten Vorhaben beste Alternative, Die Serie ist unterteilt in 7 Teile:

Dieser Teil geht nun auf die Frage ein, welches der Ausführungsmodelle in welcher Situation das bestgeeignete ist.

Grundlegendes

Die Liste der Ausführungsmodelle [“Virtual Machines”-“Cloud Services”-“Websites”-“Mobile Serivces”] stellt in dieser Reihenfolge quasi ein Kontinuum dar. Je weiter man sich in dieser Liste nach rechts in Richtung “Mobile Services”-“Websites” bewegt, desto höher wird der Automatisierungsgrad, der durch die Plattform umgesetzt wird, je weiter man sich nach links bewegt, desto höher wird die Kontrolle über die Ablaufumgebung und die Möglichkeiten zu deren Konfiguration. Die folgende Tabelle, die bereits in Teil 1 dieser Serie zu sehen war, visualisiert dies nochmals.

Virtual Machines Cloud
Services
Websites Mobile
Services
Automatisierungsgrad ●● ●●● ●●●●
Einflussmöglichkeiten ●●●● ●●● ●●

Eine Migration in dieser Reihe nach rechts ist in der Regel mit dem Wunsch verbunden, durch einmaligen Mehraufwand, der mit einer passenden Paketierung der Anwendung einher geht, auf Dauer Aufwände und Kosten durch den höheren Automatisierungsgrad der gewünschten Ausführungsoption zu sparen. Ob eine entsprechende Migration allerdings möglich ist, hängt davon ab, wie gut die Anwendung mit den eingeschränkten Einflussmöglichkeiten der Ziel-Umgebung in Einklang gebracht werden kann. Ggf. fallen einmalige Aufwände an, die Anwendung bzw. die Paketierung entsprechend anzupassen.

Eine Migration in dieser Reihe nach links ist in der Regel in der Notwendigkeit begründet, eine Konfigurationsmöglichkeit oder Funktionalität der Ziel-Option nutzen zu müssen, die in der aktuell vorhandenen Option nicht geboten ist.

Einzelne Migrationsszenarien

Migration
von…
Migration
nach…
Anmerkungen / Erforderliche Schritte
Virtual Machines Cloud Services

Mögliche Motivation:

  • Auto-Skalierung
  • Automatische Upgrades und Patches für die Gast-Betriebssysteme

Notwendige Schritte:

  • Zustandsloses Design für die Anwendung
  • Paketierung benötigter Frameworks und Runtimes (z.B. PHP, Java, …) in das Deploymentpaket
  • Konfiguration der Umgebung via Startup-Tasks
Virtual Machines Websites

Mögliche Motivation:

  • Auto-Skalierung
  • Schnelleres Deployment

Notwendige Schritte:

  • Paketierung benötigter Bibliotheken in die Anwendung
  • Zusammenfassung bisher auf mehrere Instanzen verteilter Funktionalität in eine monolithische Anwendung
Cloud Services Websites

Mögliche Motivation

  • Schnelleres Deployment

Notwendige Schritte:

  • Zusammenfassung bisher auf mehrere Instanzen verteilter Funktionalität in eine monolithische Anwendung
Cloud Services Virtual Machines

Mögliche Motivation

  • Erweiterung der Funktionalität um Komponenten, die persistente VMs erfordern

Notwendige Schritte:

  • Umbau der Deployment-Paketierung in ein VM-Deployment
Websites Cloud Services

Mögliche Motivation

  • Flexiblere Skalierung einzelner Teilkomponenten
  • Remote Desktop-Zugang zu Instanzen
  • Startup-Tasks

Notwendige Schritte:

  • Hinzufügen eines Cloud Service Projekts in Visual Studio zur Web-App-Solution
Websites Virtual Machines

Mögliche Motivation

  • Erweiterung der Funktionalität um Komponenten, die persistente VMs erfordern
  • Remote-Desktop-Zugang zu Instanzen
  • Bessere Konfigurationsmöglichkeiten

Notwendige Schritte:

  • minimal; in der Regel kann eine Website-Anwendung direkt in eine passende VM deployt werden.

Diese Tabelle erhebt keinen Anspruch auf Vollständigkeit. Es kann für eine Migration auch andere motivierende Faktoren geben. Auch können die Aufwände im Einzelfall anders gelagert sein. Nachdem alle Ausführungsoptionen laufend weiterentwickelt werden, sollten die genannten Punkte mit den dann aktuellen Funktionsumfängen der gewünschten Ausführungsoption abgeglichen werden.

Fazit

Die Wahl des bestgeeigneten Ausführungsmodells ist von einigen Einflussfaktoren beeinflusst:

  • dem gewünschten Grad an Flexibilität, an Einflussfaktoren und Konfigurationsmöglichkeiten
  • dem gewünschten Grad an Automatisierung
  • den benötigten Funktionalitäten

In oben in der Tabelle aufgezeigten Kontinuum kann empfohlen werden, soweit wie möglich rechts zu bleiben, d.h. sofern es keinen entscheidenden Grund gibt, auf Websites bzw. (für mobile Szenarien) Mobile Services zu setzen. Hier ist der Automatisierungsgrad höchsten und damit die mit Administration verbundenen Aufwände am niedrigsten.

Darüber hinaus sollten folgende Punkte beachtet werden:

  • Die Ausführungsmodelle lassen sich problemlos miteinander kombinieren.
  • Bei Bedarf kann zwischen den Ausführungsmodellen gewechselt werden.

Weitere Informationen

Comments (0)

Skip to main content