Web Accélérateur

Qu'est ce que c'est ?

Accélérer l'affichage de vos sites Web

L'accélérateur Web permet de réduire les temps de réponse et de gérer un nombre important de connexions simultanées.

Comment ? :

  • en déchargeant le serveur web de la gestion des connexions clientes et du transport des données
  • en déchargeant le serveur web de la négociation et du chiffrement SSL (https)

L'accélérateur Web permet de conserver en cache certains éléments statiques de vos pages afin d’accélérer l'affichage des pages Web pour vos visiteurs. Il se situe en amont d'un ou plusieurs serveurs Web et va effectuer les requêtes HTTP sur le/s serveur/s Web, puis conserver en cache les réponses afin de les renvoyer directement au client lors d'une requête ultérieure. Cela a des effets bénéfiques en terme de rapidité d'affichage pour le client et soulage également le serveur Web car celui-ci ne sera pas obligé de traiter une requête qu'il a déjà traité auparavant, si le cache n'a pas expiré.

Vous pouvez également ajouter de manière simple un certificat sur l'accélérateur Web afin de chiffrer les connexions vers le site Web. Vous n'avez rien à configurer de votre côté, tout se fait via l'interface web de Gandi en quelques minutes.

Répartir la charge sur plusieurs serveurs (Round robin / Client-ip)

Une autre fonctionnalité intéressante de l'accélérateur web, est de permettre de répartir la charge sur plusieurs serveurs Web (répartiteur de charge ou “load balancer”), mais uniquement en HTTP. Cela vous permettra d'ajouter des serveurs Web supplémentaires rapidement en cas d'augmentation de la charge, sans avoir à modifier vos fichiers de zone (et donc patienter pour que la réjuvénation ou “propagation DNS” soit totale).

Il y a deux algorithmes de répartition de charge disponible :

  • round-robin : Les requêtes sont envoyées aux serveurs Web de manière aléatoire. Cela peut provoquer des problèmes de suivi de session.
  • client-ip : Choisis un serveur par client et maintient les requêtes sur le même serveur jusqu'à ce que la session soit terminée.

Si vos sites Web nécessitent une authentification ou utilisent plus généralement les sessions, il est conseillé de choisir l’algorithme de répartition de charge client-ip afin d'éviter des problèmes potentiels avec vos applicatifs web.

Par ailleurs, vous pouvez ajouter une sonde afin de vérifier la disponibilité de chacun des serveurs Web. Si l'un des serveurs Web ne répond plus, l'accélérateur web n'enverra plus de requêtes vers celui-ci permettant ainsi d'assurer une continuité de service.

Créer un Web Accélérateur

La création du Web Accélérateur se fait simplement, rendez vous dans l'onglet 'Serveurs', puis cliquez sur l'onglet 'Accélérateur Web' afin de le créer. Seules deux informations sont nécessaires pour la création, le nom, ainsi que la localisation. Celle-ci est à déterminer en fonction de la localisation des autres serveurs. En effet, il n'est pas possible d'indiquer des serveurs Gandi situés dans un centre de données différent de celui de l'accélérateur Web.

Le web accélérateur est facturé 50 crédits par heure, puis :

  • Si le SSL est activé : 20 crédits / heure
  • Pour chaque serveur ajoutés : 12 crédits / heure

Déclarer des adresses

Pour déclarer un site sur l'accélérateur Web, rendez vous sur la page principale puis cliquez sur 'Ajouter une adresse'. Indiquez alors l'adresse du site Web à indiquer, puis cliquez sur 'Valider'.

Dans le cas où le domaine est enregistré chez Gandi et utilise nos serveurs DNS, alors il vous sera proposé de modifier le fichier de zone automatiquement.

Dans le cas où le domaine n'est pas enregistré chez Gandi ou bien si les serveurs DNS ne sont pas ceux de Gandi, alors il sera nécessaire d'ajouter un enregistrement TXT dans le fichier de zone, ou bien un fichier texte sur l'adresse à ajouter. Ces informations vous seront fournies sur l'interface dans ce cas :

Ajouter un certificat SSL sur une adresse

Il est possible d'installer des certificats SSL sur son Accélérateur Web.

Un certificat SSL permet de protéger une adresse web, ou un ensemble dans le cas des certificats Wildcard et Multidomaines.
Pour plus d'infos sur les certificats, rendez-vous dans la section Wiki à ce sujet.

Vous devez être en possession du certificat et de la clé privée associée, pour pouvoir procéder à l'installation.

Pour ajouter un certificat SSL sur une adresse, cliquez sur l'icône en forme de cadenas situé à coté de l'hôte virtuel, puis indiquez votre clé privée ainsi que le certificat. Enfin validez afin qu'il soit pris en compte.

Une fois dans cette interface, vous devrez coller l'ensemble des données du certificat (il n'est pas question de CSR ici, mais de la CRT).

La première ligne d'un certificat issu sous Apache devrait commencer par
-----BEGIN CERTIFICATE-----
Toutes les lignes doivent être collées et faites attention à ce qu'il n'y ai pas de retour chariot vide à la fin du formulaire.

Il vous faudra ensuite faire la même chose pour la clé privée dans le champ adéquate. Si la paire certificat - clé privée correspond au domaine à protéger, vous aurez alors terminé le processus d'ajout de certificat sur votre nom de domaine.

La clé privée est confidentielle et ne doit pas être divulguée sans quoi votre certificat devient inutile. Celle-ci est stockée de manière chiffré de notre coté lorsque vous l'ajoutez sur une instance et la connexion sur le site Web est sécurisée.

L'opération prends quelques minutes à peine et le certificat est ensuite installé.

La liste non-exhaustive des certificats supportés peut être consulté sur cette page.

Déclarer des serveurs

Une fois l'adresse ajoutée à l'accélérateur Web, il sera nécessaire de définir le ou les serveurs Web qui hébergent vos sites. Sur la page principale de l'accélérateur Web, dans la section 'Interfaces réseaux', cliquez sur 'Ajouter une interface réseau'. Vous devrez alors choisir un serveur dans la liste déroulante et indiquer le port d'écoute du serveur Web :

Vous devez vous assurez que l'hôte virtuel a bien été déclaré sur le serveur Web auparavant. Pour les serveurs en mode Gandi AI, le port à indiquer est le port 80.

En fonction de vos besoins, vous pouvez choisir l'algorithme de répartition de charge sur l'interface et le changer à tout moment.

Une fois le serveur ajouté, vous avez la possibilité de vérifier que votre serveur Web répond bien aux requêtes de l'accélérateur Web en cliquant sur le bouton 'Tester' :

De la même manière, vous pouvez désactiver le serveur sur l'accélérateur Web afin que les requêtes ne lui soient plus envoyées, sans avoir à le retirer du pool. Pour cela, cliquer sur le bouton 'Stop' dans la colonne 'Statut'.

Configurer le Healthcheck

Le “healthcheck” permet de vérifier l'état de santé de vos serveurs Web avec une vérification HTTP régulière, afin de ne plus envoyer de requêtes à un serveur Web qui n'est plus accessible. Dans ce cas là, l'accélérateur web enverra les requêtes HTTP aux serveurs Web qui répondent toujours. Dès que le serveur Web est remis en service, l'accélérateur renverra alors les requêtes également sur celui-ci. Cela permet d'améliorer la disponibilité de vos services Web, en plus de répartir la charge.

Pour que le Web accélérateur puisse rediriger automatiquement les requêtes vers un serveur fonctionnel dans le cas où l'un d'eux n'est plus disponible, il est nécessaire de configurer une sonde.

Lorsque vous cliquez sur activation, notre système fait un test de disponibilité avec les options par défaut sur chacun des serveurs qui ont été déclarés sur l'accélérateur Web. Le test se fait uniquement sur les interfaces qui n'ont pas été mises en pause. Si le test indique que tous les serveurs répondent, vous pourrez alors activer la sonde. Dans le cas où un des serveurs ne répond pas, il faudra soit le mettre en pause, soit le rendre de nouveau accessible.

Configuration avancée

Si vous ne comprenez pas l'utilité des valeurs ci-dessous, il est conseillé de laisser les valeurs par défaut.

  • Intervalle de balayage : Le temps d'attente entre chaque vérification sur chaque serveur.
  • Timeout (ou expiration) : Délai sous lequel le serveur Web doit répondre avant d'être considéré comme indisponible.
  • Fenêtre de déclenchement : La fenêtre de déclenchement correspond au nombre d'itérations à prendre en compte pour que la sonde détermine la santé du serveur. La valeur doit être comprise entre 2 et 10.
  • Valeur plancher : La valeur plancher correspond au nombre de fois où la sonde détecte un bon fonctionnement du serveur. La valeur doit être comprise entre 1 et 9 et doit être inférieure ou égale à la valeur de la fenêtre de déclenchement.

Si, par exemple, vous définissez la fenêtre de déclenchement à 5 et la valeur plancher à 4, alors le serveur sera considéré comme disponible s'il répond à 4 requêtes sur 5. Dans le cas contraire, il sera considéré comme indisponible.

Fonctionnalités

Cache

Le Web Accelerator inclue un puissant service de cache HTTP, identique à celui utilisé par Simple Hosting. Consultez le guide dédié au Cache pour en savoir plus.

WebSocket

WebSocket est désormais disponible en Alpha test dans le centre de données FR-SD2 (Paris, France).

En savoir plus et suivre un exemple détaillé dans le tutoriel WebSocket sur Web Accélérator.

GeoIP

Il est possible d'utiliser la localisation GeoIP sur les instances Simple Hosting, en récupérant la valeur du tag 'X-Country-Code' de l'en-tête HTTP. La valeur renvoyée sera sous la forme 'FR', 'EN', 'US', 'GB', etc. défini par la norme ISO 3166. Vous pouvez trouver la liste complète des codes pays sur le site officiel https://www.iso.org/obp/ui/fr/#search

Le code pays est retourné en fonction de l'adresse IP du visiteur, les adresses IPv4 et IPv6 sont supportées.

Cette fonctionnalité est utile par exemple dans le cas d'un site en plusieurs langues, pour choisir la langue par défaut à afficher à votre visiteur en fonction de son pays.

Facturation

La facturation de l'accélérateur se fait à l'heure grâce au système de crédit. Le Web accélérateur coûte 50 crédits par heure, puis chaque serveur ajouté consommera 12 crédits supplémentaires.

Problèmes et solutions

Les requêtes ne parviennent pas jusqu'aux serveurs Web

Si vous avez configuré un parefeu sur votre serveur, vous devrez autoriser le range d'adresse IP 10.0.0.0/8 à accéder au serveur. En effet, les accélérateurs Web enverront des requêtes depuis des ip's de ce range, si votre serveur ne les accepte pas alors les pages Web ne pourront être renvoyées aux visiteurs via l'accélérateur.

Dernière modification: le 01/08/2016 à 12:03 par Alexandre L. (Gandi)