Erweiterungen

Der Kreativität sind fast keine Grenzen gesetzt wenn es darum geht den Funktionsumfang des Load-Balancers mit weiteren, nützlichen Funktionen auszubauen.

Während sich zum Beispiel die Verarbeitung von HTTPS durch das SSL-Modul (»mod_ssl« ) einrichten lässt, stellen weitere Module auch die Möglichkeit zur Zwischenspeicherung ("Caching") oder Filterung der von den Backends generierten Inhalte zur Verfügung.

So lässt sich, wie in Listing 3 dargestellt, ein einfacher, datei-basierter Cache inklusive Komprimierung für den kompletten URL-Raum "/" realisieren (beispielsweise mit einer Ausnahme des untergeordneten URL-Raums "/users").

Listing 3

Beispiel-Config von mod_cache

CacheEnable disk /
CacheDisable /<emphasize class="replaceable">users</emphasize>
CacheRoot /var/cache/httpd
...
AddOutputFilterByType DEFLATE text/html

Dies erlaubt neben der durch das Caching erreichten Performance-Steigerung auch eine nicht unbeträchtliche Verminderung des Datenaufkommens sowie die generelle Entlastung der Backend-Server da nicht mehr bei jeder Anfrage eine erneute Kontaktaufnahme stattfinden muss.

Verwaltung

Wurde beim Start des Servers ebenfalls das Status-Modul (»mod_status« ) geladen so stellt das Proxy-Modul eine einfache aber praktische Web-Oberfläche zur Verwaltung des Load-Balancers zur Verfügung (siehe Abbildung 2). Die Konfiguration ist simpel und erfolgt mittels Zuweisung eines Handlers:

<Location "/.balancer-manager">
  SetHandler balancer-manager
</Location>
...
ProxyPass /.balancer-manager !

Es sollte hierbei jedoch auf die Zugangskontrolle sowie den Ausschluss der jeweiligen URL von der Verarbeitung innerhalb des Load-Balancers geachtet werden. Im Listing wurde dies zum Beispiel mittels einer negierten »ProxyPass« Anweisung erreicht. Bei der Verwendung des Rewrite-Moduls kann dies aber auch durch die Verwendung einer separaten Regel geschehen.

Abbildung 2: Die Web-Oberfläche des Balancer Managers ermöglicht die grundlegende Verwaltung des Load-Balancers.

Die eigentliche Verwaltung begrenzt sich zwar auf die Status-Anzeige aller konfigurierten Balancer sowie auf die Möglichkeit einzelne Pool-Mitglieder zu deaktivieren oder ihre rudimentären Einstellungen anzupassen, sie ist aber dennoch äusserst hilfreich im Fall eines akuten Problems oder auch bei der Überwachung mehrerer Load-Balancer.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2020