BLOG

Open Source im Rampenlicht: Erweiterte Servicedefinitionen für OpenStack LBaaS

Lori MacVittie Miniaturbild
Lori MacVittie
Veröffentlicht am 26. Oktober 2017

Einer der oft genannten Vorteile der Cloud – privat oder öffentlich, vor Ort oder außerhalb – ist die Geschwindigkeit. Schnelle Bereitstellung, schnelle Skalierung, schnelle Bereitstellung einer App für die Benutzer, die ihre Funktionalität wünschen oder verlangen.

Um diese Geschwindigkeit zu erreichen, ist ein Großteil der Cloud standardisiert. Seit den Anfängen der Fließbandautomatisierung ist Standardisierung der Schlüssel zum Erreichen schnellerer Ergebnisse. Dies gilt auch für Cloud-Umgebungen. Obwohl Amazon nicht in dem Sinne standardisiert ist, dass seine APIs mit denen von Azure, Google oder sogar OpenStack austauschbar sind, ist es für alle seine verschiedenen Dienste standardisiert. Dies bedeutet, dass alle auf seiner Infrastruktur bereitgestellten Anwendungen in großem Umfang die alltäglichen Betriebsabläufe gemeinsam haben.

Dasselbe gilt für OpenStack, das über eine Standardbereitstellung mit Standarddiensten verfügt, durch seine Plug-in-Architektur jedoch maßgeschneiderte Umgebungen ermöglicht. Das bedeutet, dass Sie Load Balancer, Web Application Firewalls und Computer je nach Ihren speziellen Anforderungen kombinieren können.

Datenpfad Prog Soad 2017

Was OpenStack jedoch nicht tut, ist, diesen maßgeschneiderten Ansatz ohne zusätzlichen Code über die Grundlagen hinaus zu erweitern. Sie können beispielsweise einen anderen Load Balancer einbinden, sind dann aber auf die über OpenStack verfügbaren Algorithmen und Funktionen beschränkt. Wenn ein Load Balancer also über erweiterte Funktionen verfügt – beispielsweise Datenpfadprogrammierbarkeit (die unseren Umfragen zufolge zumindest für NetOps-Leute ziemlich wichtig ist), SSL-Terminierung oder Unterstützung für unterschiedliche benutzer- und serverseitige TCP-Profile – können Sie diese nicht wirklich mit der OpenStack-API ein- und ausschalten. Weil es sich nicht um „Standardfunktionen“ aller Load Balancer handelt, die Sie möglicherweise einbinden.

Das ist fair. Unfair ist es jedoch, Sie vor die Wahl zwischen den erweiterten Funktionen, die Apps schneller und sicherer machen, und den Vorteilen einer standardisierten Cloud-Plattform wie OpenStack zu stellen.

oss verbessert Umfragedaten

Und hier kommt Open Source wieder einmal zur Hilfe, und das beweist: 90 % der Teilnehmer der „State of Open Source“-Umfrage geben „Innovation“ als einen der Dinge an, die durch Open Source verbessert werden.

Um denjenigen Zugriff auf diese erweiterten Funktionen zu ermöglichen, die sich für Lastenausgleich und sichere App-Bereitstellung auf F5 BIG-IP verlassen – ohne OpenStack zu beschädigen – haben wir die Möglichkeit implementiert, diese Funktionen nahtlos zu definieren und in eine OpenStack-Implementierung einzubinden.

Die F5 OpenStack LBaaSv2 Enhanced Service Definition (ESD) bietet einen einfachen, JSON-basierten Mechanismus zum Angeben der Bereitstellung erweiterter Profile auf F5 BIG-IP in einer OpenStack-Umgebung. Mit ESDs können Sie OpenStack-Load Balancer bereitstellen, die für bestimmte Anwendungen angepasst sind.

Kurz gesagt ist ein ESD eine Datei im standardmäßigen JSON-Format mit Schlüssel-Wert-Paaren, die Profile, Richtlinien oder iRules beschreiben, die Sie auf bestimmte Anwendungen anwenden möchten. 

esd-app-dot-net

Beispielsweise weist der JSON-Code links BIG-IP an, eine iRule mit dem Namen „ cve-2015-1635 “ auf den virtuellen Server (die Anwendung) mit dem Namen „app_dot_net“ anzuwenden.

Das ist es. Dieser einfache kleine Codeschnipsel ermöglicht einer App Schutz vor einer echten CVE durch die Verwendung der Magie von Datenpfad-Skripten und ein wenig Open-Source-Innovation.

Auch Profile und Richtlinien können mit den entsprechenden Tags auf die gleiche Weise angewendet werden. Alle Tags sind hier dokumentiert.

Der F5 OpenStack LBaaSv2-Treiber für BIG-IP ist Open Source und auf Github verfügbar. Sie können es auch erweitern, wenn Sie möchten. Allerdings bietet die Möglichkeit, ESDs zu nutzen, die gleiche Erweiterbarkeit, als wenn Sie Zugriff auf den Code hätten, um es selbst zu tun.

Aber hey, es ist Open Source, also tun Sie alles, was Sie interessiert und – was noch wichtiger ist – Ihre Apps bereitstellt.

Weitere Informationen zu ESDs sowie den F5 OpenStack LBaaSv2-Treiber für BIG-IP finden Sie hier auf GitHub: