| OVFOKUS |

Webportal Entwicklung


Teil 3: Webportal Hosting

Kontakt

Cloud oder On-Premises? Virtual Machines, Container oder doch lieber Bare Metal? Cluster oder Single Node? Bei der Wahl des Hostings eines Webportals stehen mittlerweile eine Vielzahl von Optionen zur Verfügung. Mit diesem Beitrag möchten wir einen Leitfaden zur Verfügung stellen, der bei der Auswahl passender Hosting-Optionen unterstützt.

Cloud oder on Premises?

Cloud

Wenn wir von Cloud reden, dann ist im Regelfall eine Public Cloud gemeint. Eine Public Cloud bietet über einen externen Dienstleister Computing-Dienste über das Internet an. Der Nutzer bucht diese Ressourcen und muss sich nicht mehr um Beschaffung und Verwaltung eigener Hardware und Software für den Betrieb des Webportals kümmern. Die Kosten für die Nutzung der Dienste ergeben sich dabei oft anhand der genutzten Ressourcen, sprich genutzte Arbeitsspeicher und CPU-Zyklen. Bekannte Public Cloud Anbieter sind Microsoft Azure, Amazon Web Services und Google Cloud Platform.

Cloud-Anbieter stellen den Nutzern in der Regel Migrationsoptionen ihrer bestehenden Infrastruktur zur Verfügung. Lift-and-shift ist in vielen Fällen durch Virtual Machines Varianten in die Cloud möglich. Dadurch entfallen Kosten für die Anschaffung von Hardware und Infrastruktur und die Systeme lassen sich per Knopfdruck vertikal skalieren. Dennoch sind Verwaltung und Pflege auf Betriebssystem-Ebene notwendig, was wiederrum primär Personalkosten verursacht.

Neben klassischen Virtualisierungslösungen ist es auch möglich, containerisierte Anwendungen in der Azure Cloud zu deployen. Wird zum Beispiel ein Web-Portal bereits in Containern betrieben, so können die Azure Container Instances genutzt oder es kann auf ein Managed Kubernetes Cluster zugegriffen werden.

Wer noch mehr Verantwortung für den Betrieb der Webanwendung abgeben möchte, kann Azure App Services nutzen bzw. Teile des Webportals in die Serverless Komponente Azure Functions auslagern. Welche Plattform für welchen Anwendungsfall geeignet ist, kann im Microsoft Azure Kosmos mit Hilfe eines Entscheidungsbaums herausgefunden werden.

[8]

On-Premises

Werden die Systeme eigenverantwortlich betrieben, so hat eine Unternehmung im Gegensatz zum Cloud-Betrieb die volle Kontrolle über Infrastruktur und Hardware, jedoch auch die volle Verpflichtung. Regelmäßige Sicherheits- und Firmwareupdates, Netzwerk-Konfiguration, Provisionierung und Konfiguration der Systeme oder die Bereitstellung ausreichender Rechenleistung sind nur einige Punkte, die man für den Betrieb eines Webportals berücksichtigen sollte.

Bei eigener Hardware sind viele Aspekte des Datenschutzes einfacher zu klären. Obwohl Cloud- und Hosting-Anbieter oft auch in Europa, teilweise sogar in Deutschland hosten und damit europäisches bzw. deutsches Recht gilt, werden die eigenen Daten an einen externen Anbieter weitergegeben. Gerade bei sensiblen Daten wie z.B. Gesundheitsdaten ist das eigene Rechenzentren oft präferiert. Insbesondere bei Hosting-Anbietern aus den USA sollte man vorher prüfen, ob die Datenschutz­bestimmungen der Anwendung trotz CLOUD Act gewährleistet werden können [1].

Fehlt das nötige technische Knowhow zum Betrieb der Anwendungen oder schrecken die hohen initialen Kosten für die eigene Hardware und deren Konfiguration ab, so besteht auch die Möglichkeit, das Hosting an einen externen Dienstleister auszulagern. Im Vergleich zu den Cloud-Dienstleistern lassen sich dabei individuelle Infrastrukturen realisieren oder unter anderem Root Server mieten. Die Bandbreite des Angebots im Hinblick auf Ausstattung und Support variiert zudem bei der Vielzahl der Anbieter am Markt.

Eine On-Premises-Lösung am Standort eines Unternehmens bietet einen weiteren Vorteil: Die Verbindung zu den Webportalen ist nicht durch das Internet beschränkt. Gerade bei großen Datenmengen kann eine schnelle und stabile Netzwerkverbindung von Vorteil sein. Der Vorteil entfällt natürlich, wenn ein Zugriff außerhalb des Netzwerks z. B. aus dem Home-Office ermöglicht werden muss.

Wann was nutzen?

Viele Unternehmen migrieren in die Cloud und möchten von der Flexibilität und Skalierbarkeit der Systeme profitieren. 81 % der Unternehmen haben laut Forbes [2] bereits 2020 mindestens eine Anwendung in der Cloud. Insbesondere, wenn die Nutzer-Zielgruppe des Webportals international ist, kann ein Einsatz von Cloud-Lösungen viele Aufgaben erleichtern. Load-Balancing und Multi-Region-Verfügbarkeit sind in der Cloud mit wenigen Schritten konfigurierbar.

Wer besonders hohen Wert auf den Datenschutz legt und die volle Kontrolle über Hardware- und Software-Ausstattung der Systeme besitzen möchte, der sollte On-Premises Lösungen bevorzugen. Fehlt es allerdings an entsprechendem Knowhow, um eine solche Plattform sicher und zuverlässig zu betreiben, finden sich am Markt auch Hosting-Anbieter mit umfangreichem Support und zertifizierten Rechenzentren.

Hybride Lösungen mit einer Kombination aus Cloud und On-Premises Hosting sind in vielen Anwendungsszenarien ebenfalls möglich. So lässt sich z. B. das Frontend eines Webportals in der Cloud betreiben, die Daten liegen jedoch weiterhin auf den selbst verwalteten Systemen.

VIRTUAL MACHINES, CONTAINER ODER BARE METAL?

Neben dem klassischen Hosting auf den physischen Servern selbst, auch Bare Metal genannt, existieren weitere Ansätze wie Virtual Machines und Container. 

Virtual Machines

Der Einsatz von virtuellen Maschinen erleichtert die Verwaltung und Skalierbarkeit von verteilten Anwendungen deutlich. Der Zugewinn an Flexibilität und Komfort wirkt sich allerdings architekturbedingt negativ auf die verfügbare Performance aus. Statt eines direkten Zugriffs auf die Hardware existiert im Umfeld der Virtualisierung eine weitere Abstraktionsschicht, die Teile der verfügbaren Ressourcen wie z. B. RAM, CPU und Storage an virtuelle Instanzen weiterreicht. Virtual Machines sind innerhalb ihres Kosmos portabel. Sie können von einem Rechnersystem auf andere verschoben werden, im Clusterverbund teilweise sogar automatisiert.

Container

Container stellen eine leichtgewichtigere Alternative zur Virtualisierung dar. Statt einen kompletten Schnitt durch die Systemarchitektur zu ziehen, greifen Container direkt auf den Kernel des Hosts zu. Die Isolierung der Prozesse wird durch das Kernel selbst und eine Verwaltungssoftware wie z.B. Docker sichergestellt. Ein Hypervisor ist dadurch nicht mehr notwendig.

Des Weiteren muss in den Containern kein komplettes Betriebssystem simuliert werden. Die Nutzung von Containern hat somit einen geringeren Einfluss auf die Performance als eine klassische Virtualisierung. Container kapseln alle für den Betrieb der Anwendung notwendigen Komponenten wie Application Server und deren Konfigurationen oder spezifische Version eines genutzten Frameworks.

Ein weiterer Vorteil ergibt sich dadurch, dass man schon während des Entwicklungsprozesses des Webportals Container einsetzen und damit gleiche Umgebungen wie im späteren Produktivbetrieb erstellen kann. So können frühzeitig Probleme in der Interoperabilität der Bausteine einer Anwendung reduziert werden. Das Problem des „Works on My Machine“-Phänomens wird eliminiert. Durch offene Industriestandards der Open Container Initiative [3] lassen sich containerisierte Anwendungen ohne viel Aufwand auf andere Systeme, z.B. zu einem Cloud-Anbieter oder dem eigenen Rechner, portieren.

Orchestrierungstools erleichtern die Verwaltung und Bereitstellung von containerisierten Anwendungen und machen viele manuelle Prozesse überflüssig. Bekanntester Vertreter dieser Kategorie ist das Open-Source Tool Kubernetes. 33 % aller Organisationen nutzen Kubernetes produktiv oder experimentieren damit. [2] Mithilfe von Konfigurationsdateien können Services eines Webportals beschrieben werden. Um die Bereitstellung, Verwaltung und Skalierung der Anwendung kümmert sich Kubernetes dann automatisch. Somit ist auch das Handling von Anwendungen mit mehreren 100 Microservices oder mehr realisierbar. 

Wann was nutzen?

Eine generelle Empfehlung gibt es hier nicht. Welches System für eine Anwendung am geeignetsten ist, hängt stark von der Art des zu betreibenden Webportals ab. Nutzt die Anwendung bereits eine Microservice Architektur oder entsteht eine neue Anwendung, kann die Nutzung von Containern das Load-Balancing und Skalieren des Webportals mit einem Orchestrierungstool vereinfachen. 

Bei einer konstanten Last, die die komplette Ressourcenbandbreite des Hostsystems benötigt, kann die Nutzung auf Bare Metal die präferierte Lösung sein. Ein Beispiel dafür wäre eine Batch-Verarbeitung mit hohem I/O-Bedarf. Wird ein direkter Zugriff auf das Betriebssystem zum Betrieb der Anwendung benötigt und soll die Flexibilität der Ressourcenverteilung genutzt werden, bietet sich eine Infrastruktur auf Basis von Virtual Machines an.

CLUSTER VS. SINGLE NODE?

Im Regelfall ist es erstrebenswert, ein Webportal 24 Stunden am Tag ohne Ausfälle zu betreiben. Durch hochverfügbare Hardware kann oftmals ein Großteil abgedeckt werden. So gibt z.B. Microsoft für eine einzelne Virtual Machine im Azure-Portal maximal eine Verfügbarkeit von 99,9 % an [4]. Das klingt erst einmal viel, bedeutet allerdings auch eine mögliche Downtime von ungefähr 45 Minuten pro Monat. Eine solche längere Nichtverfügbarkeit des Webportals zu Lastzeiten kann zu einem großen Akzeptanz- und Vertrauensverlust und einem hohen wirtschaftlichen Schaden führen. Dass sogar ein ganzes Rechenzentrum nicht verfügbar sein und die Wiederherstellung der Systeme mehrere Tage dauern kann, hat der Brand in den Rechenzentren eines der größten des Hosting-Anbieters Europas, OVH, gezeigt. [5]

Um Ausfallszenarien zu vermeiden ist es ratsam, ein Webportal redundant und multi-regional aufzustellen. Durch die Redundanz ergeben sich weitere Vorteile in Bezug auf die Performance des Systems. Fallen Teile des Systems aus oder reagieren sie z. B. aufgrund hoher Anfragezahlen langsam, kann ein Load-Balancer die Anfragen auf eine andere Instanz des Services/Webportals umleiten. So lassen sich Ladezeiten reduzieren bzw. bei einem Ausfall eines Teils der Anwendung diese überhaupt wieder erreichbar machen.

Neben der erhöhten Ausfallsicherheit und Lastverteilung erlauben Cluster-Systeme die automatische Skalierung des Services. So bietet Microsoft Azure mit Autoscale [6] ein Feature, dass eine Anwendung nach vordefinierten Metriken hoch- und runterskaliert. Dadurch ist es möglich, tagsüber ein hohes Anfragevolumen abzudecken und in weniger frequentierten Zeiten die Ressourcen zu reduzieren und Kosten zu sparen. Ungewöhnlich hohe Anfragespitzen können abgefangen werden. Für den Einsatz einer containerisierten Infrastruktur bietet Azure auch hier die Möglichkeit, die Anzahl verwendeter Nodes in einem Kubernetes Cluster automatisch zu skalieren. 

Wann was nutzen?

Ein Webportal auf einem Single Node System zu hosten, birgt ein hohes Ausfallrisiko – trotz eventuell hochverfügbarer Hardware. Neben Hardwareproblemen können auch Ausfälle in der Anwendung selbst zu langen Downtimes führen. Aus diesem Grund sollten Webportale im Idealfall redundant und multi-regional betrieben werden.

FAZIT

Ein Trend ist erkennbar: Unternehmen investieren in die Cloud. Ein Report der MarketsandMarkets [6] schätzt, dass die Investionen in Cloud-Dienste bis 2025 global auf rund 832,1 Milliarden USD anwachsen. Das entspricht einer jährlichen Wachstumsrate von 17,5 % ab 2020. 

Dennoch ist es schwierig, eine generelle Empfehlung in Bezug auf das Hosting eines Webportals auszusprechen. Zu groß ist die Anzahl der individuell zu betrachtenden Abhängigkeiten wie die Architektur des Webportals, Datenschutzbestimmungen, zu erwartende Lastverteilungen und vieles mehr. Selbst wenn die Entscheidung auf die Cloud fällt, stehen hier noch diverse Optionen zum Betrieb eines Webportals zur Verfügung.

Die eine optimale Hosting-Lösung für alle Webportale gibt es somit nicht. Einige Tipps, Ideen und Denkanstöße haben wir in diesem Betrag präsentiert. Haben Sie weitergehende Fragen? Sprechen Sie uns gerne an?

Quellen

[1] „CLOUD Act – US-Gesetz für internationalen Datenzugriff und -schutz verabschiedet,“ 24 03 2018. [Online]. Available: https://www.heise.de/newsticker/meldung/CLOUD-Act-US-Gesetz-fuer-internationalen-Datenzugriff-und-schutz-verabschiedet-4003330.html. [Zugriff am 16 06 2021].
[2] L. Columbus, „32% Of IT Budgets Will Be Dedicated To The Cloud By 2021,“ 2020 08 2020. [Online]. Available: https://www.forbes.com/sites/louiscolumbus/2020/08/02/32-of-it-budgets-will-be-dedicated-to-the-cloud-by-2021/?sh=58406c105fe3. [Zugriff am 16 06 2021].
[3] „Open Container Initiative,“ [Online]. Available: https://opencontainers.org/.
[4] „SLA for Virtual Machines,“ 06 2020. [Online]. Available: https://azure.microsoft.com/en-us/support/legal/sla/virtual-machines/v1_9/. [Zugriff am 13 07 2021].
[5] „Cloud-Dienstleister OVH: Feuer zerstört Rechenzentrum, ein weiteres beschädigt,“ 03 10 2021. [Online]. Available: https://www.heise.de/news/OVH-Feuer-zerstoert-Rechenzentrum-in-Strassburg-ein-weiteres-beschaedigt-5076320.html. [Zugriff am 16 06 2021].
[6] „Azure Autoscale,“ [Online]. Available: https://azure.microsoft.com/de-de/features/autoscale/. [Zugriff am 16 06 2021].
[7] „Cloud Computing Market by Service Model (Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS)), Deployment Model (Public and Private), Organization Size, Vertical, and Region – Global Forecast to 2025,“ [Online]. Available: https://www.marketsandmarkets.com/Market-Reports/cloud-computing-market-234.html. [Zugriff am 16 06 2021].
[8] Icons: https://docs.microsoft.com/en-us/azure/architecture/icons/

| OVFOKUS |

Webportal Entwicklung

Weitere Beiträge aus dieser Reihe:

Teil 1: Ein Überblick 

Teil 2: Barrierefreiheit von Webportalen 

SUchen Sie die Für Ihr Unternehmen passende PORTALLösung?
In einem Teilbereich oder als Ganzes?

Wie können wir Sie unterstützen? Sprechen Sie uns an – ganz unverbindlich!