Mit der automatischen horizontalen Skalierung der Kinsta Anwendungs-Hosting Plattform ist es jetzt einfacher, genau die Leistung bereitzustellen, die deine Anwendung braucht, um den wechselnden Anforderungen an die Serverressourcen gerecht zu werden.
Die horizontale Skalierung – das Hinzufügen oder Entfernen von Pod-Instanzen, auf denen der Webprozess deiner Anwendung läuft – kann jetzt so konfiguriert werden, dass sie automatisch auf Basis der CPU-Auslastung ausgelöst wird. So kann deine Anwendung bei hoher Auslastung hochgefahren oder bei geringerem Bedarf in Bezug auf Leistung und Kosten heruntergefahren werden.
Giuseppe Silletti, Tech Lead eines Entwicklerteams für Anwendungs-Hosting und Datenbank-Hosting bei Kinsta, sagt, dass Schwankungen in der Nachfrage nach Serverressourcen bei Webanwendungen üblich sind.
„Stell dir vor, eine E-Commerce-Plattform erlebt einen plötzlichen Anstieg des Datenverkehrs aufgrund eines Flash-Sales“, erklärt Silletti. „Tausende von Nutzern greifen gleichzeitig auf die Website zu, um nach Produkten zu suchen, Artikel in den Warenkorb zu legen und zur Kasse zu gehen. Der plötzliche Zustrom von Besuchern erhöht die CPU- und Speicherauslastung des Webservers. Die CPU-Auslastung steigt auf 85% und liegt damit weit über den normalen Werten. Die derzeitige Anzahl der Webserver-Instanzen reicht nicht aus, um diese erhöhte Last zu bewältigen, was zu verzögerten Antwortzeiten und möglichen Timeouts führt.“
„Horizontale Skalierung ist hier unerlässlich“, sagt er. „Durch die Überwachung von Kennzahlen wie der CPU-Auslastung werden zusätzliche Webserver-Instanzen hochgefahren, um die eingehende Trafficlast zu verteilen und sicherzustellen, dass das Nutzererlebnis nahtlos und reaktionsschnell bleibt.“
Aktivieren der automatischen horizontalen Skalierung
Bei der Konfiguration deiner Anwendungen auf der Kinsta-Plattform kannst du die CPU- und Speicheranforderungen der Kubernetes-Pods für Webservice-, Background Worker- und Cron-Job-Prozesse festlegen. Du kannst auch manuell festlegen, wie viele Instanzen eines jeden Pods benötigt werden.
Wenn du die Ressourcen für einen Webdienst festlegst, ist die neue Automatische Skalierung Option eine minimale und maximale Anzahl von Pods (zwischen 1 und 10) für den Prozess festlegen.
„Die Erhöhung der Pod-Größe – die vertikale Skalierung – bedeutet, dass die CPU, der Speicher und andere Ressourcen, die jedem bestehenden Pod zugewiesen werden, erhöht werden“, sagt Silletti. „Das ist ein schneller Weg, um die Leistung zu steigern, hat aber aufgrund der maximal verfügbaren Ressourcen auf dem Knoten seine Grenzen
„Bei der horizontalen Skalierung wird die Anzahl der Pods erhöht, indem zusätzliche Instanzen des Pods im gesamten Cluster eingesetzt werden“, erklärt er. „Das ist ein flexiblerer Ansatz, um eine höhere Last zu bewältigen und ist nicht durch die Kapazität des einzelnen Knotens begrenzt.“
Wie die automatische Skalierung bei Kinsta funktioniert
Wenn die automatische Skalierung aktiviert ist, wird die Nachfrage auf den Pods des Webdienstes überwacht, um festzustellen, ob die Last unter oder über 80% der Kapazität liegt.
„Wenn die CPU-Auslastung den festgelegten Schwellenwert überschreitet, löst die automatische Skalierung von Kubernetes die Erstellung zusätzlicher Pods aus, um die Last auszugleichen“, sagt Silletti. „Der Load Balancer des Dienstes erkennt diese neuen Pods automatisch und verteilt den eingehenden Datenverkehr auf alle verfügbaren Pods.“
„Wenn Kubernetes feststellt, dass die Ressourcenauslastung unter dem festgelegten Schwellenwert liegt, leitet es den Prozess zum Entfernen von Pods ein. So wird sichergestellt, dass auch nach dem Entfernen eines Pods die verbleibenden Pods die Verkehrslast effizient bewältigen können, ohne den Schwellenwert zu überschreiten.“
Auch wenn die automatische Skalierung aktiviert ist, brauchen die Nutzer/innen vielleicht Hilfe bei der Festlegung der Werte für die minimalen und maximalen Pod-Instanzen. Sillettis Ratschlag?
„Lege zunächst eine Basislinie für die Ressourcennutzung deiner Anwendung unter normalen und Spitzenlastbedingungen fest“, sagt er. „Dann verwende Tools und Metriken, um die Leistung und Ressourcennutzung der Anwendung zu überwachen. Überprüfe die Konfigurationen und passe sie bei Bedarf an, um eine optimale Leistung zu gewährleisten.“
Beginne noch heute mit der Autoskalierung deiner Anwendung
Hast du eine Idee für eine Anwendung, die von der automatischen Skalierung von Pod-Ressourcen profitieren könnte? Hier erfährst du, wie du mit der Anwendungs-Hosting-Plattform von Kinsta schnell loslegen kannst:
- Durchstöbere unsere wachsende Bibliothek mit Schnellstart-Beispielen, um zu sehen, wie du deine Lieblingstechnologien von Git-Hosts wie GitHub, GitLab und Bitbucket bereitstellen kannst.
- Lies unsere offizielle Dokumentation zur Anwendungsskalierung.
- Erstelle dein MyKinsta-Konto und beginne risikofrei zu bauen!
Wenn du deine Anwendung bereitstellst, laufen dein Code und die dazugehörigen Speicherdienste auf der erstklassigen Infrastruktur der Google Cloud Platform, die von den virtuellen C2-Maschinen der Plattform unterstützt wird.
Das ist ein Zuhause für deine Anwendung mit Platz zum Wachsen.