Zum Inhalt springen

Glossar · A

Auto-Scaling

Auto-Scaling ist eine Technik, die es Systemen ermöglicht, automatisch Ressourcen hinzuzufügen oder zu entfernen, basierend auf der aktuellen Last.

Definition

Auto-Scaling bezeichnet eine Methode in der Informationstechnologie, bei der die Kapazität von IT-Ressourcen automatisch an die aktuelle Nachfrage angepasst wird. Dies umfasst typischerweise das Hinzufügen oder Entfernen von Servern, Rechenleistung oder Speicher, um eine optimale Leistung und Verfügbarkeit sicherzustellen. Ziel ist es, die Systemressourcen dynamisch zu skalieren, ohne manuelles Eingreifen durch Administratoren.

Die Technik wird vor allem in Cloud-Computing-Umgebungen eingesetzt, wo Ressourcen flexibel und bedarfsgerecht bereitgestellt werden können. Auto-Scaling reagiert auf vordefinierte Metriken wie CPU-Auslastung, Netzwerkverkehr oder Anwendungsanforderungen, um die Skalierung auszulösen. So wird eine Über- oder Unterversorgung von Ressourcen vermieden.

Was bedeutet das für Ihr Unternehmen?

Auto-Scaling ist vor allem dann interessant, wenn Ihre Last stark schwankt, etwa bei einem Shop mit Aktionstagen, TV-Werbung oder saisonalen Spitzen. Die Kehrseite ist, dass die Rechnung mitwächst, ohne dass vorher jemand zustimmt, und dass die Anwendung technisch dafür gebaut sein muss. Für die meisten Unternehmenswebsites und internen Anwendungen reicht ein ausreichend großer Server mit gutem Caching, was leichter zu betreiben und günstiger ist.

Hintergrund und Entwicklung

Auto-Scaling entstand mit dem Aufkommen von Cloud-Diensten Ende der 2000er Jahre, als Anbieter wie Amazon Web Services (AWS) begannen, elastische Ressourcenmodelle anzubieten. AWS führte 2009 den Dienst „Auto Scaling“ ein, der es Nutzern ermöglicht, virtuelle Maschinen automatisch zu verwalten. Seitdem haben andere Cloud-Anbieter wie Microsoft Azure und Google Cloud ähnliche Funktionen implementiert.

Die Notwendigkeit für Auto-Scaling ergibt sich aus der variablen Last vieler moderner Anwendungen, insbesondere im E-Commerce, bei Streaming-Diensten und Webanwendungen. Traditionelle statische Infrastrukturen konnten diese Schwankungen nicht effizient abbilden, was zu Performance-Problemen oder unnötigen Kosten führte. Auto-Scaling bietet eine Lösung, indem es Ressourcen flexibel anpasst.

Funktionsweise

Auto-Scaling basiert auf Überwachungsmechanismen, die kontinuierlich Leistungskennzahlen erfassen. Werden definierte Schwellenwerte überschritten, aktiviert das System automatisch Skalierungsaktionen. Diese können das Hochskalieren (Scale-Up oder Scale-Out) durch Hinzufügen von Ressourcen oder das Herunterskalieren (Scale-Down oder Scale-In) durch Entfernen von Ressourcen umfassen.

Die Skalierung kann auf verschiedenen Ebenen erfolgen, etwa auf der Ebene einzelner Server (vertikale Skalierung) oder durch Hinzufügen weiterer Instanzen (horizontale Skalierung). Die meisten Auto-Scaling-Lösungen bevorzugen horizontale Skalierung, da sie eine bessere Ausfallsicherheit und Lastverteilung ermöglichen. Regeln und Algorithmen steuern, wann und wie die Skalierung erfolgt.

Einsatzgebiete

Auto-Scaling wird vor allem in Cloud-Umgebungen verwendet, um Webanwendungen, Datenbanken und Microservices bedarfsgerecht zu betreiben. Es ist besonders relevant bei Anwendungen mit stark schwankender Nutzerzahl, wie Online-Shops während Verkaufsaktionen oder Streaming-Plattformen bei Live-Events.

Darüber hinaus findet Auto-Scaling auch in Container-Orchestrierungssystemen wie Kubernetes Anwendung, wo Container automatisch basierend auf der Last skaliert werden. Dies erhöht die Effizienz und reduziert Betriebskosten, da Ressourcen nur bei Bedarf genutzt werden.

Abgrenzung zu verwandten Konzepten

Auto-Scaling unterscheidet sich von manueller Skalierung, bei der Administratoren Ressourcen manuell hinzufügen oder entfernen. Während manuelle Skalierung zeitaufwendig und fehleranfällig sein kann, ermöglicht Auto-Scaling eine automatisierte und schnellere Anpassung. Zudem unterscheidet sich Auto-Scaling von statischer Skalierung, bei der Ressourcen fest zugewiesen sind und nicht flexibel angepasst werden.

Ein verwandtes Konzept ist das Load Balancing, das die Verteilung von Anfragen auf mehrere Ressourcen steuert, jedoch keine Ressourcen hinzufügt oder entfernt. Auto-Scaling ergänzt Load Balancing, indem es die Anzahl der Ressourcen dynamisch anpasst, während Load Balancer für die Verteilung der Last innerhalb der vorhandenen Ressourcen sorgen.

Verwandte Begriffe

Aus dem Blog

Passende Leistung

Sie möchten wissen, was das für Ihr Projekt bedeutet? Sprechen Sie uns an.

Zur Leistung: Skalierung