BLOG

Open Source im Rampenlicht: Automatische Skalierung von Mesos

Lori MacVittie Miniaturbild
Lori MacVittie
Veröffentlicht am 25. September 2017

Dank der Cloud ist die automatische Skalierung von Anwendungen fast zum Synonym für Skalierbarkeit geworden. Wenn Sie die automatische Skalierung nicht unterstützen, sind Sie nach Einschätzung der meisten Leute nicht skalierbar.

Die automatische Skalierung von Apps in jeder Umgebung – ob Cloud, Container oder herkömmliche Umgebungen – hängt in hohem Maße von der Koordination bestimmter Aktionen über mehrere Systeme hinweg ab. Diese Koordination wird über APIs erreicht. Sie bilden den Grundstein sowohl von Cloud- als auch von Containerumgebungen.

Bis vor Kurzem war die automatische Skalierung von Apps mit Mesos eine überwiegend manuelle Aufgabe. Dies hat wahrscheinlich für mehr als die Hälfte (51 %) der Mesos-Benutzer ( laut ihrer Umfrage ) gut funktioniert, die Container für die Bereitstellung monolithischer und Legacy-Anwendungen nutzten. Für diejenigen, die Mesos einführen, um die Effizienz ihrer Ressourcen und ihre Agilität durch Skalierbarkeit zu steigern, ist es jedoch nicht nachhaltig. Wenn Sie zum Skalieren von Apps auf manuelle Methoden zurückgreifen müssen, besteht das Risiko menschlicher Fehler und es entstehen Betriebskosten, die die Kosten pro Transaktion erhöhen. Schließlich arbeiten Menschen nicht umsonst und wenn sie ihre Zeit damit verbringen, Apps nach oben oder unten zu skalieren, haben sie keine Zeit für andere Projekte, die für das Wachstum und den Erfolg des Unternehmens von entscheidender Bedeutung sein können. Darüber hinaus sind die Kosten pro Transaktion eine wichtige Kennzahl für Cloud- und Containerumgebungen, da deren Effizienz teilweise darauf ausgerichtet ist, diese Kosten niedrig zu halten. Je höher die Kosten pro Transaktion sind, desto geringer ist der erzielte Gewinn bzw. die erzielte Produktivität. Und beides sind heutzutage wichtige Indikatoren für die Gesundheit eines Unternehmens.

Gaurav Kumar , ein Ingenieur bei einem der ersten Unternehmensanwender von Mesos, begegnete dieser Herausforderung auf eine Weise, die einer Open-Source-Einstellung entspricht: Er baute eine. Denn APIs und Open Source ermöglichen Communities und Kunden, solche Dinge zu tun.

automatische Skalierung von Mesos F5

Um die automatische Skalierung von Apps innerhalb von Mesos mit einem F5 BIG-IP zu ermöglichen, waren zwei vorhandene Open-Source-Lösungen erforderlich:

  1. F5 Container Connector für Marathon , der für das Abhören von Marathon-Ereignissen und die entsprechende Konfiguration eines BIG-IP verantwortlich ist. 
  2. Ein Prometheus-Exporteur für BIG-IP-Metriken, der aus einem bestehenden Open-Source-Projekt – BIG-IP Exporter – abgezweigt wurde und relevante Telemetriedaten (Anzahl der TCP-Verbindungen, HTTP-Anfragen usw.) von einem BIG-IP sammelt.

Kumar entwickelte dann den dritten Bestandteil dieser Lösung, die „ F5-basierte Autoscaling-Komponente für DCOS/Marathon-Dienste “ (genannt „F5 Autoscaler“).  

Die F5 Autoscaler-Komponente ruft Statistiken vom F5 Exporter ab und vergleicht sie mit definierten Schwellenwerten. Wenn einer dieser Schwellenwerte erreicht wird, sendet der F5 Autoscaler eine Skalierungsanforderung an den DCOS-Master, um ein Poolmitglied hinzuzufügen. Marathon erfüllt diese Anforderung wie gewohnt, indem es eine neue Container-/App-Instanz bereitstellt und dann BIG-IP über den F5 Container Connector für Marathon benachrichtigt, der BIG-IP mit dem neuen Poolmitglied konfiguriert.

Voilà! Automatische Skalierung von Apps.

Diese Lösung ist ein hervorragendes Beispiel dafür, wie Unternehmen mit Open Source mehr erreichen können, als nur Kosten und Markteinführungszeiten zu senken. Es bietet einen Rahmen zur Lösung echter geschäftlicher Herausforderungen.  

In diesem Spotlight hervorgehobene Open-Source-Software: