Dernière version : 3.0.4-1

|
Aperçu rapide |
|
|
Catalogue |
System (Système) |
|
Catégorie |
Commutateurs |
|
Volumes d'utilisateur |
non |
|
Min. mémoire |
96M |
|
SE |
Linux |
|
Contraintes |
non |
|
Questions/commentaires |
|
URLSW est un commutateur qui distribue les requêtes HTTP à différentes sorties selon que l'URI ou les en-têtes de requêtes correspondent aux règles, définies comme des expressions régulières sur le périmètre de l'appliance. URLSW est utilisé dans des applications disposant de plusieurs appliances de serveur Web ou d'applications afin de distribuer de façon flexible les requêtes HTTP. URLSW fonctionne de la même manière que son homologue PS8, mais à un niveau supérieur. Il analyse les requêtes HTTP au lieu des ports tcp/udp.
URLSW intègre également un outil de contrôle de l'intégrité. Celui-ci analyse périodiquement terminaux de sortie et détermine si les serveurs sont prêts à traiter des requêtes. Si l'un de serveurs contrôlé devient inopérationnel, URLSW désactive automatiquement flux de requêtes pour ce serveur en redirigeant la requête vers un autre serveur actif plus approprié. Lorsque le serveur qui n'était plus opérationnel redevient actif, l'outil de contrôle de l'intégrité le détecte automatiquement et ce serveur réceptionne de nouveau les requêtes.
Le commutateur est utilisé en cascade. Le trafic entrant qui ne correspond à aucune expression régulière définie est réacheminé sur le terminal aux sans aucune modification. Tout le trafic entrant reçu sur les terminaux outX et aux est renvoyé au terminal in.
URLSW est généralement utilisé pour acheminer le trafic entrant sur différentes appliances dans une application.
|
Ressource |
Minimum |
Maximum |
Valeur par défaut |
Testé |
|
UC |
0.1 |
2 |
0.1 |
2 |
|
Mémoire |
96 Mo |
160 Mo |
96 Mo |
128 Mo |
|
Bande passante |
1 Mbit/s |
2 Gbits/s |
250 Mbits/s |
1800 Mbits/s |
|
name |
dir |
Protocole |
description |
|
in |
in |
HTTP |
Entrée commune. Le trafic envoyé à au terminal in est dirigé vers l'une des sorties si une URL ou des en-têtes correspondent aux expressions régulières définies. |
|
ctl |
in |
HTTP |
Terminal de contrôle utilisé pour définir des expressions régulières. Activation/désactivation des sorties et récupération des paramètres et de l'état du terminal de sortie. |
|
out1-out8 |
sortie |
HTTP |
Sorties configurées. Les requêtes sont envoyées via une sortie particulière en fonction des propriétés outX_type et outX_value. Ces sorties peuvent rester déconnectées. Les requêtes dirigées vers les sorties non connectées sont abandonnées. |
|
aux |
sortie |
HTTP |
Sortie en cascade. Les requêtes entrantes qui ne sont dirigées vers aucune des sorties out1-out8 sont acheminées via ce terminal. Ce terminal peut rester déconnecté. |
|
log |
sortie |
Indifférent |
Accès à un système de fichiers réseau basé sur CIFS pour le stockage des journaux (c'est-à-dire, à des fins de débogage). Le serveur connecté doit autoriser les connexions anonymes et avoir un partage lecture-écriture nommé share. Si ce terminal n'est pas utilisé, il peut rester déconnecté. |
|
MON |
sortie |
CCE |
Envoie des statistiques de performances et d'utilisation des ressources. Si ce terminal n'est pas utilisé, il peut rester déconnecté. |
|
name |
type |
description |
|
outX_type |
chaîne |
Définit les critères de correspondance de la requête entrante. 4 choix sont possibles pour cette propriété : hostname, cookie, url et file type.
Valeur par défaut : hosname |
|
outX_value |
chaîne |
Expressions régulières utilisées pour la correspondance. Une définition d'expression régulière est disponible ici. Exemples :
Valeur par défaut : (vide) |
Propriétés de contrôle de l'intégrité
|
name |
type |
description |
|
healthcheck_url |
Chaîne |
URL utilisée pour effectuer le contrôle de l'intégrité des serveurs Web principaux dans les méthodes de contrôle de l'intégrité http_get et http_head. Il peut s'agir d'une URL complète (http://host.name/file/to/check/for.php) ou d'un chemin d'accès relatif (/file/to/check/for.php). S'il est spécifié en tant qu'URL, le contrôle de l'intégrité utilise le protocole HTTP/1.1 lorsqu'il effectue le contrôle de l'intégrité à l'aide du nom d'hôte extrait de l'URL dans son en-tête Host:. De cette façon, des hôtes virtuels peuvent être utilisés. Si l'adresse spécifiée est un chemin d'accès relatif, le contrôle de l'intégrité utilise le protocole HTTP/1.0 et vérifie le document spécifié par cette propriété. Si cette propriété est vide, le contrôle de l'intégrité fait porter ses vérifications sur la racine par défaut "/" à l'aide protocole de HTTP/1.0. |
|
healthcheck_agent |
Chaîne |
Chaîne utilisée comme identificateur d'agent pour les méthodes de contrôle de l'intégrité http_get et http_head. Si la chaîne est vide, URLSW-health-check est utilisé. |
|
healthcheck_method |
Chaîne |
Méthode utilisée pour le contrôle de l'intégrité des serveurs Web principaux.
Valeur par défaut : tcp_connect. |
|
healthcheck_regexp |
Chaîne |
Chaîne de test utilisée avec le mode de contrôle de l'intégrité http_get. Des valeurs courtes ou communes (p. ex. OK) généreront probablement des faux positifs. Cette chaîne est une expression régulière Perl. Vous trouverez davantage d'informations sur les expressions régulières Perl ici. |
|
healthcheck_interval |
Entier |
Intervalle (exprimé en secondes) entre les contrôles d'intégrité des serveurs Web principaux. |
Propriétés de délai d'expiration
|
name |
type |
description |
|
keepalive_timeout |
Entier |
Délai d'expiration des connexions restées actives. Définit le délai d'expiration, pendant lequel la connexion avec le client sera maintenue par le serveur. |
|
client_header_timeout |
Entier |
Délai d'envoi de l'en-tête de la requête par le client. Si passé ce délai le client ne reçoit pas l'en-tête complet, une erreur est renvoyée. |
|
client_body_timeout |
Entier |
Délai d'envoi du corps de la requête par le client. Ce délai est défini pour ne pas transférer le corps entier de la demande, mais uniquement entre les deux opérations de lecture. Une erreur est renvoyée si le client ne transmet aucune donnée au cours de cette période. |
|
send_timeout |
Entier |
Délai pour la réception des données par le client. Si le client ne répond pas au cours de cet intervalle, la connexion est fermée. Ce délai est défini pour ne pas transférer la réponse entière, mais uniquement entre les deux opérations d'écriture. |
|
server_timeout |
Entier |
Délai d'expiration en secondes pour l'établissement d'une connexion tcp sur les serveurs principaux. Ce délai inclut le contrôle de l'intégrité. |
Propriétés de l'interface de contrôle
|
name |
type |
description |
|
ctl_port |
Entier |
Port utilisé pour accéder à l'interface de contrôle de service Web via le terminal ctl. |
Propriétés de journalisation
|
name |
type |
description |
|
enable_access_log |
Chaîne |
Active ou désactive le journal d'accès. Valeur par défaut : no |
|
access_log_filename |
Chaîne |
Nom de fichier du journal d'accès. Valeur par défaut : access.log |
L'appliance URLSW signale les compteurs personnalisés suivants via le terminal mon.
|
Nom du compteur |
Description |
|
Connexions actives |
Nombre de connexions actives. |
|
Connexions acceptées |
Nombre de connexions acceptées |
|
Connexions traitées |
Nombre de connexions traitées |
|
Requêtes traitées |
Nombre de requêtes traitées |
|
Connexions actives en lecture seule |
Nombre de connexions actives en lecture seule. |
|
Connexions actives en écriture |
Nombre de connexions actives en écriture. |
|
Connexions actives en attente |
Nombre de connexions actives en attente. |
Taux de requêtes
URLSW achemine pas moins de 3000 transactions (paires requête/réponse) par seconde, en fonction de la taille de document et de la disponibilité de la bande passante réseau.
Débit des données
URLSW achemine pas moins de 25 Mo/seconde.
Connexions simultanées
URLSW prend en charge pas moins de 1000 demandes simultanées. Lors des tests, URLSW a pris en charge plus de 10 000 transferts actifs simultanés.
En cas d'échec de démarrage de l'appliance, les erreurs suivantes peuvent être consignées dans le journal système :
|
Message d'erreur |
Description |
|
Error: failed to initialize ctl terminal, please contact CA Technologies support. |
Une erreur système s'est produite pendant l'initialisation du terminal ctl. Contactez le support technique de CA. |
|
Error: access log is enabled, but log terminal is not connected. |
Le terminal de journal n'est pas connecté, mais enable_access_log est défini sur yes. |
|
Error: failed to initialize external health checker, please contact CA Technologies support. |
Une erreur système s'est produite au démarrage de l'outil de contrôle de l'intégrité externe. Contactez le support technique de CA. |
|
Error: failed to initialize statistics reporting, please contact CA Technologies support. |
Une erreur système s'est produite lors de l'initialisation de la génération des rapports de statistiques. Contactez le support technique de CA Technologies. |
Présentation
Une interface de service Web de contrôle est présente sur le terminal ctl sur le port ctl_port configuré qui permet d'effectuer les opérations suivantes :
Protocole
Le contrôle programmé des terminaux de sortie utilise la méthode GET HTTP qui n'autorise que la fonctionnalité de lecture. Ainsi, tous les types de requête de protocole pris en charge peuvent être définis au moyen de son URI et de la structure de sortie. Les caractères considérés comme spéciaux pour l'URI doivent être échappés à l'aide de la norme de codage standard %.
Tous les URI pris en charge sont décrits ci-dessous :
Appels de contrôle
Les appels de contrôle suivants peuvent être invoqués :
Le diagramme suivant affiche une utilisation standard de l'appliance URLSW avec 4 serveurs Web et bases de données.

Appliances en cours d'utilisation :
Exemple de configuration de propriété :
|
Nom de propriété |
Valeur |
Notes |
|
out1_type |
hostname |
La correspondance pour les requêtes relatives srv1 est établie sur la base du nom d'hôte. |
|
out1_value |
static.server.com, images.server.com |
Les requêtes pour les hôtes static.server.com et images.server.com sont traitées par srv1. |
|
out2_type |
type de fichier |
La correspondance pour les requêtes relatives srv2 est établie sur la base du type de fichier. |
|
out2_value |
|
Les documents PDF sont traités par srv2. |
|
out3_type |
type de fichier |
La correspondance pour les requêtes relatives srv3 est établie sur la base du type de fichier. |
|
out3_value |
*.php |
Les scripts PHP sont traités par srv3. |
Toutes les autres requêtes sont traitées par srv4 car il est connecté au terminal aux.
La requête client arrive sur la passerelle utilisateur. La passerelle transfère les requêtes au serveur URLSW qui les répartit entre 4 serveurs Web en fonction des règles définies dans les propriétés d'appliance ou ajoutées de façon dynamique par le terminal ctl. Le terminal ctl est accessible par la passerelle admin.
Logiciels Open Source et tiers utilisés au sein de l'appliance
URLSW utilise les packages Open Source tiers suivants en plus des packages Open Source tiers utilisés par sa classe de base LUX6.
|
Logiciel |
Version |
Modifié |
Licence |
Notes |
|
nginx-stable |
0.8.53 |
Non |
GPLv2 |
N/D |
|
samba-client |
3.5.10-125 |
Non |
GPLv2 |
N/D |
|
samba-common |
3.5.10-125 |
Non |
GPLv2 |
N/D |
|
thttpd |
2.25b |
Non |
BSD |
page d'accueil |
|
Copyright © 2013 CA.
Tous droits réservés.
|
|