Aktuelle Version: 3.0.4-1
Auf einen Blick |
|
Katalog |
System |
Kategorie |
Schalter |
Benutzer-Volumes |
no |
Min. Speicher |
96M |
Betriebssystem |
Linux |
Einschränkungen |
no |
Fragen/Kommentare |
URLSW ist ein Schalter, der HTTP-Anfragen basierend auf dem Abgleich der Anforderungs-URI oder der Anforderungs-Header mit Regeln (definiert als reguläre Ausdrücke) auf der Appliance-Begrenzung an unterschiedliche Ausgaben verteilt. URLSW wird in Anwendungen verwendet, die mehr als eine Netz- oder Anwendungsserver-Appliance aufweisen, um HTTP-Anfragen flexibel unter ihnen zu verteilen. URLSW funktioniert ähnlich wie das Gegenstück PS8, jedoch auf einer höheren Ebene - es analysiert HTTP-Anfragen anstelle von tcp/udp-Ports.
URLSW hat auch eine eingebettete Systemintegritätsprüfung. Die Systemintegritätsprüfung fragt regelmäßig out-Terminals ab und ermittelt, ob die Server bereit für die Verarbeitung von Anfragen sind. Wenn einer der überprüften Servern nicht mehr funktionsbereit ist, deaktiviert URLSW automatisch den Anforderungsflow für diesen Server, und leitet die Anfragen an einen anderen geeigneten aktiven Server um. Wenn der zuvor nicht funktionsbereite Server wieder aktiv wird, wird er automatisch von der Systemintegritätsprüfung erkannt und erhält wieder Anfragen.
Der Schalter ist kaskadierbar; eingehender Datenverkehr, der mit keinem definierten regulären Ausdruck übereinstimmt, wird durch das aux-Terminal ohne Änderung weitergeleitet. Der gesamte an den Terminals outX und aux eingehende Datenverkehr wird über das Terminal in weitergeleitet.
URLSW wird normalerweise zum Umleiten von eingehendem Datenverkehr zu unterschiedlichen Appliances innerhalb einer Anwendung verwendet.
Ressource |
Minimum |
Maximum |
Standard |
Getestet |
CPU |
0.1 |
2 |
0.1 |
2 |
Speicher |
96 MB |
160 MB |
96 MB |
128 MB |
Bandbreite |
1 Mbit/s |
2 Gbit/s |
250 Mbit/s |
1800 Mbit/s |
Name |
Richtung |
Protokoll |
Beschreibung |
in |
in |
HTTP |
Häufige Eingabe. An "in" gesendeter Datenverkehr wird nach einem Abgleich der URL oder der Header mit definierten regulären Ausdrücken an eine der Ausgaben gesendet. |
ctl |
in |
HTTP |
Steuer-Terminal, das zum Festlegen von regulären Ausdrücken, Aktivieren/Deaktivieren der Ausgaben und zum Abrufen der Ausgabe-Terminal-Einstellungen und -Status dient. |
out1-out8 |
out |
HTTP |
Konfigurierte Ausgaben. Anfragen werden durch eine bestimmte Ausgabe weitergeleitet, die auf den outX_type- und outX_value-Eigenschaften basiert. Alle Ausgaben können unverbunden gelassen werden; an unverbundene Ausgaben gerichtete Anfragen werden verworfen. |
aux |
out |
HTTP |
Kaskadenausgabe. Eingehende Anfragen, die nicht für eine der out1-out8-Ausgaben bestimmt sind, werden durch dieses Terminal gesendet. Dieses Terminal kann unverbunden gelassen werden. |
log |
out |
Alle |
Zugriff auf ein CIFS-basiertes Netzwerkdateisystem zum Speichern der IIS-Protokolle (für Debugging). Der verbundene Server muss anonyme Anmeldungen zulassen und über eine benannte Freigabe mit Lese-/Schreibzugriff verfügen. Dieses Terminal kann unverbunden gelassen werden, wenn es nicht verwendet wird. |
mon |
out |
CCE |
Sendet Leistungs- und Ressourcenverwendungsstatistik. Dieses Terminal kann ohne Verbindung bleiben, wenn es nicht verwendet wird. |
Name |
Typ |
Beschreibung |
outX_type |
string |
Definiert die Kriterien, mit denen die eingehende Anfrage verglichen wird. Es bestehen 4 Optionen für diese Eigenschaft: hostname, cookie, url und file type.
Standard: hostname |
outX_value |
string |
Reguläre Ausdrücke, mit denen der Abgleich vorgenommen werden soll. Eine Definition von regulären Ausdrücken finden Sie hier. Beispiele:
Standard: (leer) |
Eigenschaften der Systemintegritätsprüfung
Name |
Typ |
Beschreibung |
healthcheck_url |
String |
Die URL, die verwendet wird, um die Systemintegritätsprüfung der Backend-Webserver mit den Systemintegritätsprüfungs-Methoden "http_get" und "http_head" durchzuführen. Sie kann als eine vollständige URL (http://host.name/file/to/check/for.php) oder als ein relativer Pfad (/file/to/check/for.php) angegeben werden. Wenn eine URL angegeben wird, verwendet die Systemintegritätsprüfung das HTTP/1.1-Protokoll und den aus der URL extrahierten Hostnamen in ihrem Host:-Header. Dies ermöglicht die Verwendung von virtuellen Hosts. Wenn sie als ein relativer Pfad angegeben wird, verwendet die Systemintegritätsprüfung das HTTP/1.0-Protokoll und sucht nach dem von dieser Eigenschaft angegebenen Dokument. Wenn diese Eigenschaft leer ist, überprüft die Systemintegritätsprüfung den Standardstamm '/' mithilfe des HTTP/1.0-Protokolls. |
healthcheck_agent |
String |
Zeichenfolge, die als Agentbezeichner für die Methoden http_get und http_head der Systemintegritätsprüfung verwendet wird Wenn sie leer ist, wird "URLSW-health-check" verwendet. |
healthcheck_method |
String |
Die Methode, die für die Systemintegritätsprüfung der Backend-Webserver verwendet wird.
Standard: tcp_connect. |
healthcheck_regexp |
String |
Eine Testzeichenfolge, die mit dem Systemintegritätsprüfungs-Modus "http_get" verwendet wird. Kurze oder häufig vorkommende Werte (z. B. OK) ergibt wahrscheinlich falsche positive Übereinstimmungen. Diese Zeichenfolge ist ein regulär Ausdruck im Perl-Stil; nähere Informationen zu regulären Ausdrücken im Perl-Stil sind hier verfügbar. |
healthcheck_interval |
Int. |
Intervall zwischen Systemintegritätsprüfungen der Backend-Webserver (in Sekunden angegeben). |
Zeitüberschreitungseigenschaften
Name |
Typ |
Beschreibung |
keepalive_timeout |
Int. |
Zeitüberschreitung für Keepalive-Verbindungen. Legt den Zeitraum fest, während dem die Keepalive-Verbindung mit dem Client nicht vom Server geschlossen werden wird. |
client_header_timeout |
Int. |
Zeitraum, in dem der Client den Anfrage-Header senden muss. Wenn der Client nach Ablauf dieses Zeitraums keinen vollständigen Header erhalten hat, wird ein Fehler zurückgegeben. |
client_body_timeout |
Int. |
Zeitraum, in dem der Client den Anfrage-Hauptteil senden muss. Dieser Zeitraum bezieht sich nicht auf die Übertragung des gesamten Anfrage-Hauptteils, sondern auf den Abstand zwischen den beiden Lesevorgängen. Wenn der Client nach Ablauf dieses Zeitraums keine Daten übertragen hat, wird ein Fehler zurückgegeben. |
send_timeout |
Int. |
Zeitraum, in dem der Client Daten erhalten muss. Wenn der Client in diesem Zeitraum nicht antwortet, wird die Verbindung geschlossen. Dieser Zeitraum bezieht sich nicht auf die Übertragung der gesamten Antwort, sondern auf den Abstand zwischen den beiden Schreibvorgängen. |
server_timeout |
Int. |
Zeitlimit in Sekunden für das Herstellen einer TCP-Verbindung zu Backend-Servern. Dies schließt die Systemintegritätsprüfung ein. |
Steuerschnittstelleneigenschaften
Name |
Typ |
Beschreibung |
ctl_port |
Int. |
Port, der verwendet wird, um auf die Webservice-Steuerschnittstelle über das clt-Terminal zuzugreifen. |
Protokollierungseigenschaften
Name |
Typ |
Beschreibung |
enable_access_log |
String |
Aktiviert oder deaktiviert das Zugriffsprotokoll. Standard: no |
access_log_filename |
String |
Dateiname für das Zugriffsprotokoll. Standard: access.log |
Die URLSW-Appliance meldet die folgenden benutzerdefinierten Zähler durch das mon-Terminal.
Zählername |
Beschreibung |
Aktive Verbindungen |
Anzahl aktiver Verbindungen |
Akzeptierte Verbindungen |
Anzahl akzeptierter Verbindungen |
Verarbeitete Verbindungen |
Anzahl verarbeiteter Verbindungen |
Verarbeitete Anfragen |
Anzahl verarbeiteter Anfragen |
Aktive Leseverbindungen |
Anzahl aktiver Leseverbindungen |
Aktive Schreibverbindungen |
Anzahl aktiver Schreibverbindungen |
Aktive Wartverbindungen |
Anzahl aktiver Warteverbindungen |
Anforderungsrate
URLSW leitet nicht weniger als 3000 Transaktionen (Anfrage/Antwort-Paare) pro Sekunde weiter, abhängig von Dokumentgröße und verfügbarer Netzwerkbandbreite.
Datendurchsatz
URLSW leitet nicht weniger als 25 MB/Sekunde weiter.
Gleichzeitige Verbindungen
URLSW unterstützt nicht weniger als 1000 gleichzeitige Anfragen. Bei Tests hat URLSW mehr als 10.000 gleichzeitige aktive Übertragungen unterstützt.
Im Fall von Appliance-Startfehlern können die folgenden Fehler im Systemprotokoll protokolliert werden:
Fehlermeldung |
Beschreibung |
Fehler: ctl-Terminal konnte nicht initialisiert werden; wenden Sie sich an den Support von CA Technologies. |
Während der Initialisierung des ctl-Terminals ist ein Systemfehler aufgetreten; wenden Sie sich an den Support von CA Technologies. |
Fehler: Das Zugriffsprotokoll ist aktiviert, aber das Protokoll-Terminal ist nicht verbunden. |
Das Protokoll-Terminal ist nicht verbunden, aber "enable_access_log" ist auf "yes" festgelegt. |
Fehler: Externe Systemintegritätsprüfung konnte nicht initialisiert werden, wenden Sie sich an den Support von CA-Technologies. |
Ein Systemfehler trat auf, während die externe Systemintegritätsprüfung gestartet wurde; setzen Sie sich mit dem Support von CA Technologies in Verbindung. |
Fehler: Statistikberichterstellung konnte nicht initialisiert werden, wenden Sie sich an den Support von CA-Technologies. |
Während der Initialisierung der Statistikberichterstellung ist ein Systemfehler aufgetreten; wenden Sie sich an den Support von CA Technologies. |
Übersicht
Eine Webservice-Steuerungsschnittstelle wird am Terminal ctl am konfigurierten Port ctl_port angezeigt. Sie ermöglicht Folgendes:
Protokoll
Die Programmsteuerung der Ausgabe-Terminals verwendet die GET HTTP-Methode, die nur Lesefunktionen zur Verfügung stellt. So kann jeder unterstützte Protokollanfragetyp über seine URI und die Ausgabestruktur definiert werden. Zeichen, die in der URI als Sonderzeichen gelten, sollten mit der standardmäßigen %-Kodierung versehen werden.
Es folgt eine Beschreibung aller unterstützten URLs.
Steuerungsaufrufe
Folgende Steuerungsaufrufe können aufgerufen werden:
Das folgende Diagramm zeigt eine typische Verwendung der URLSW Appliance mit 4 Webservern und Datenbank.
Verwendete Appliances:
Beispiel-Eigenschaftskonfiguration:
Eigenschaftsname |
Wert |
Hinweise |
out1_type |
hostname |
Anfragen für srv1 werden nach Hostname abgeglichen. |
out1_value |
static.server.com, images.server.com |
Anfragen für Hosts static.server.com und images.server.com werden von srv1 bereitgestellt. |
out2_type |
Dateityp |
Anfragen für srv2 werden nach Dateityp abgeglichen. |
out2_value |
|
PDF-Dokumenten werden von srv2 bereitgestellt. |
out3_type |
Dateityp |
Anfragen für srv3 werden nach Dateityp abgeglichen. |
out3_value |
*.php |
PHP-Skripte wird von srv3 bereitgestellt. |
Alle anderen Anfragen werden von srv4 bereitgestellt, der mit dem Terminal "aux" verbunden ist.
Clientanfrage kommt auf der Benutzer-Gateway an. Das Gateway leitet die Anfragen an den URLSW-Server weiter, der sie auf 4 Webserver verteilt, abhängig von den Regeln, die in den Appliance-Eigenschaften definiert oder dynamisch vom Terminal ctl hinzugefügt wurden. Auf das Terminal ctl können Sie über den Admin-Gateway zugreifen.
In der Appliance verwendete Open-Source- und Drittanbieter-Software
URLSW verwendet zusätzlich zu den Drittanbieter-Open-Source-Paketen der jeweiligen Basisklasse LUX6 die folgenden Drittanbieter-Open-Source-Pakete.
Software |
Version |
Geändert |
Lizenz |
Hinweise |
nginx-stable |
0.8.53 |
Nein |
GPLv2 |
N/A |
samba-client |
3.5.10-125 |
Nein |
GPLv2 |
N/A |
samba-common |
3.5.10-125 |
Nein |
GPLv2 |
N/A |
thttpd |
2.25b |
Nein |
BSD |
homepage |
Copyright © 2013 CA.
Alle Rechte vorbehalten.
|
|