Jump to section

Was ist Mandantenfähigkeit?

URL kopieren

Mandantenfähigkeit ist eine Software-Architektur, bei der eine einzelne Softwareinstanz von mehreren unterschiedlichen Nutzergruppen verwendet werden kann. Ein Beispiel für eine mandantenfähige Architektur ist SaaS (Software-as-a-service).

Beim Cloud Computing kann Mandantenfähigkeit auch ein gemeinsames Hosting bedeuten, bei dem Serverressourcen auf verschiedene Kunden aufgeteilt werden.

Mandantenfähigkeit ist das Gegenteil von Einzelmandanten-Lösungen, bei denen eine Softwareinstanz/ein System über einen Endbenutzer oder eine Nutzergruppe verfügt.

Mandantenfähige Anwendungen verfügen in der Regel über eine Anpassungsebene für Mandanten, um das Look-and-Feel der Anwendung anzupassen oder dem Mandanten zu erlauben, über bestimmte Zugriffssteuerungsberechtigungen und -beschränkungen für Nutzer zu entscheiden.

Die Idee von der Mandantenfähigkeit wurde schon vor Jahrzehnten geboren. In den 1960ern haben Universitäten mit leistungsstarken, teuren Mainframes Timesharing-Software entwickelt, mit deren Hilfe mehrere Nutzer praktisch gleichzeitig auf einen Rechner zugreifen konnten.

Das Konzept hat sich in all den Jahren gehalten und bildet mittlerweile das Zentrum des Cloud Computings. Bei einer Public Cloud werden Ressourcen, also Rechenleistung und Speicher, aus einem gemeinsamen Pool entnommen und auf mehrere Mandanten verteilt. Die Daten und Workloads der einzelnen Mandanten bleiben separat, auch wenn sie auf dem gleichen physischen Rechner oder der gleichen Rechnergruppe ausgeführt werden.

Wenn wir nun etwas weiterdenken und das Ganze auf Softwarearchitekturen anwenden, landen wir beim modernen Konzept von SaaS. SaaS-Anbieter führen einzelne Instanzen von Anwendungen aus und bieten unterschiedlichen Kunden Zugriff darauf. Und auch wenn alle Nutzer auf die gleiche Software zugreifen, bleiben ihre Daten doch voneinander getrennt.

Im Sinne einer Plattform zur Container-Orchestrierung wie Kubernetes versteht man unter dem Begriff Mandantenfähigkeit üblicherweise einen einzelnen Cluster, der für mehrere Projekte verwendet wird. Dieser Cluster ist so konfiguriert, dass alle Projekte unabhängig voneinander ausgeführt werden.

Wie bereits aufgezeigt, ist das Konzept der Mandantenfähigkeit ein wichtiges Merkmal des Cloud Computings, da jeweils eine einzelne Instanz einer Softwareanwendung mehreren Mandanten bereitgestellt wird. Clouds werden als PaaS (Platform-as-a-Service) bezeichnet, wogegen Mandantenfähigkeit oft mit SaaS-Anwendungen (Software-as-a-Service) in Verbindung gebracht wird.  

Cloud-Service-Anbieter stellen den Nutzern die für Cloud Computing benötigte Plattform und die zugrunde liegende IT-Infrastruktur aus einem Pool von Ressourcen zur Verfügung, die dann mehreren Nutzern (oder Mandanten) zugewiesen werden. 

Die Cloud-Architektur legt außerdem fest, wie alle Komponenten und Funktionen, die zum Erstellen einer Cloud erforderlich sind, miteinander zu einer Online-Plattform verbunden werden, auf der Anwendungen ausgeführt werden können.

Zur Entwicklung einer Cloud-Plattform werden zusätzliche Entwicklungsebenen benötigt, um Software für Containerisierung, Orchestrierung, APIs (Application Programming Interfaces), Routing, Sicherheit, Management und Automatisierung integrieren zu können.

Public Cloud-Architektur: Eine Cloud-Umgebung aus Ressourcen, die nicht dem Endbenutzer gehören und an mehrere Mandanten weiterverteilt werden können.

Private Cloud-Architektur: Lose Definition einer Cloud-Umgebung, die nur für den Endbenutzer bestimmt ist, üblicherweise in dessen Firewall und zuweilen lokal ausgeführt wird.

Mandantenfähigkeit bietet eine ganze Reihe von Vorteilen, was sich an der Beliebtheit des Cloud Computings deutlich ablesen lässt.

Mandantenfähigkeit sorgt für Kosteneinsparungen. Computing ist in großem Umfang billiger, und die Mandantenfähigkeit macht es möglich, dass Ressourcen effizient zusammengefasst und zugewiesen werden können, was letztlich die Betriebskosten senkt. Für den Einzelnutzer ist der Zugriff auf einen Cloud-Service oder eine SaaS-Anwendung häufig kostengünstiger als die Ausführung von Hardware und Software im Einzelmandanten-Modus.

Mandantenfähigkeit sorgt für Flexibilität. Wenn Sie in eigene Hardware und Software investiert haben, dann kann es sein, dass diese zu Spitzenzeiten an ihre Grenzen stößt oder bei ausbleibender Nachfrage hohe Kosten verursacht. Im Gegensatz dazu können Sie in einer mandantenfähigen Cloud den Nutzern einen Pool an Ressourcen flexibel und nach Bedarf skaliert zur Verfügung stellen. Als Kunde eines Public Cloud-Anbieters können Sie bei Bedarf zusätzliche Kapazitäten anfordern. Wenn Sie dies nicht tun, entstehen keine Kosten.

Mandantenfähigkeit sorgt für mehr Effizienz. Dank der Mandantenfähigkeit müssen einzelne Nutzer weder Infrastrukturen verwalten noch Updates und Wartungsarbeiten handhaben. Was diese Routineaufgaben betrifft, müssen die einzelnen Mandanten nicht ihre eigenen Teams bemühen, sondern können auf einen zentralen Cloud-Anbieter vertrauen.

Die Cloud hat noch viel mehr zu bieten.

Trotz der vielen Vorteile der Mandantenfähigkeit gibt es aber auch Fälle, wo Einzelmandanten-Systeme die bessere Wahl sind, wie beispielsweise eine Private Cloud oder die Nutzung des eigenen Rechenzentrums.

Dazu gehört in erster Linie die Datensicherheit für Anwendungen mit hochsensiblen Daten. Public Cloud-Umgebungen und SaaS-Produkte sind darauf ausgelegt, Workloads und Daten voneinander zu isolieren, und erfüllen diese Aufgabe traditionsgemäß sehr zuverlässig. Allerdings haben Wissenschaftler bei kontrollierten Tests Schwachstellen erkannt, die, zumindest theoretisch, mandantenübergreifende Attacken in Cloud-Umgebungen zulassen könnten.

In der Praxis ist die Wahrscheinlichkeit dafür allerdings sehr gering. Schwachstellen in Systemen mit mehreren Mandanten sind eher eine Seltenheit und ihre Ausnutzung erfordert laut dem 2020 Report on Cloud Vulnerabilities der US-amerikanischen National Security Agency hochqualifizierte Hacker. Laut diesem Bericht wurden bis dato keine solchen Attacken bei den wichtigsten Anbietern von Public Clouds dokumentiert. Die NSA stuft das dazugehörige Risiko noch unter dem Risiko für unzureichende Zugriffskontrollen und Falschkonfigurationen ein.

Bei der Einrichtung eines mandantenfähigen Systems haben Sie hinsichtlich der Isolierung der Umgebungen die Wahl zwischen virtuellen Maschinen (VMs) und Containern.

Bei der Option mit VMs werden mit einem Hypervisor Guest-Rechner hochgefahren, die alle über ein eigenes Betriebssystem sowie Anwendungen und Dependenzen verfügen. Mit dem Hypervisor wird darüber hinaus sichergestellt, dass alle Nutzer voneinander isoliert sind.

Im Vergleich zu VMs sind Container das schlankere, flexiblere und einfacher zu skalierende Modell. Mit Containern lassen sich mandantenfähige Bereitstellungen vereinfachen, und zwar durch die Implementierung mehrerer Anwendungen auf einem einzelnen Host sowie die Nutzung von Kernel und Container Runtime zum Hochfahren der einzelnen Container. Im Gegensatz zu VMs mit ihrem eigenen Kernel nutzen in Containern ausgeführte Anwendungen denselben Kernel, und das selbst bei mehreren Mandanten.

In Linux® machen es Namespaces möglich, dass verschiedene Container die gleiche Ressource zur gleichen Zeit nutzen, ohne dass dies Konflikte verursacht. Die Sicherung von Containern läuft genauso ab wie bei laufenden Prozessen. 

Wenn Sie Kubernetes für die Container-Orchestrierung nutzen, können Sie mithilfe eines einzelnen Kubernetes-Clusters mandantenfähige Umgebungen erstellen. Es ist möglich, Kunden auf ihre eigenen Namespaces aufzuteilen und die Isolierung mithilfe von Richtlinien durchzusetzen.

Weiterlesen

ARTIKEL

Was ist Cloud-Management?

Lernen Sie die verschiedenen Facetten des Cloud-Managements kennen, und welche Vorteile eine Cloud-Management-Plattform für Ihr Unternehmen hat.

ARTIKEL

Was sind gemanagte IT-Services?

Mit gemanagten Services können allgemeine Aufgaben an Fachleute übergeben werden, um Kosten zu reduzieren, die Servicequalität zu verbessern oder internen Teams mehr Zeit für geschäftsspezifische Aufgaben zu verschaffen.

ARTIKEL

Was sind Cloud-Services?

Bei Cloud-Services handelt es sich um Infrastrukturen, Plattformen oder Software, die von einem Drittanbieter gehostet und Nutzern über das Internet zur Verfügung gestellt werden.

Mehr über Cloud Computing erfahren

Produkte

Eine Plattform, die Hardware virtualisiert und diese Ressourcen in Clouds organisiert.

Eine unternehmensfähige Kubernetes-Container-Plattform, auf der Operationen für den gesamten Stack automatisiert werden, um Hybrid Clouds, Multi-Clouds und Edge-Deployments noch einfacher verwalten zu können.

Interaktionen mit unseren strategischen Beratern, die sich ein Gesamtbild von Ihrem Unternehmen machen, Ihre Herausforderungen analysieren und Ihnen helfen, diese mit umfassenden, kosteneffektiven Lösungen zu meistern.

Ressourcen

Training

Kostenloser Trainingskurs

Red Hat OpenStack Technical Overview