OVH NEWS | ACTUALITÉ, INNOVATION ET TENDANCES IT


Découvrir, comprendre et anticiper














Le 17 / 10 / 2013
Partagez

Dossier rédigé par Sophie Lavergne


Un hébergement Web mutualisé plus intelligent et plus dynamique


Plus d’1 000 000 de connexions simultanées, un parc de 7 000 machines, l’hébergement Web mutualisé d’OVH.com est une plateforme colossale qui connaît actuellement d’importantes évolutions. Revue de détail avec Édouard Vanbelle, responsable de l’hébergement Web.



Pourquoi était-il nécessaire de revoir l’architecture de la plateforme ?

Édouard : L’infrastructure existante était parfaitement adaptée pour l’hébergement classique contenant majoritairement des fichiers statiques. Avec la multiplication des CMS comme Prestashop ou Wordpress, nous nous sommes retrouvés confrontés à des problèmes de lenteurs. Nous avons donc particulièrement concentré nos efforts sur l'amélioration des performances, notamment concernant les temps d'exécution des pages dynamiques.


En quoi consiste cette nouvelle architecture et quelles améliorations apporte-t-elle ?

Ces derniers mois, nous avons effectué des optimisations considérables. Pour commencer, nous avons isolé un premier problème : le cache système. Celui-ci n’était pas optimal, ce qui se traduisait par de mauvaises performances concernant les lectures/écritures disque. Cela était dû au répartiteur de charge initial qui dispersait trop les sites dans la ferme des serveurs.
Nous avons décidé de développer notre propre technologie de répartition de charge dans le but d'avoir plus de souplesse et surtout de réactivité. Les algorithmes ont été écrits afin de maximiser l'attribution des ressources d'un site aux mêmes serveurs d'un cluster tout en évitant les collisions (empêcher que trop de clients se retrouvent sur une même machine alors qu'une autre est peu sollicitée). Ces mêmes algorithmes nous permettent aussi d'élire d'autres nœuds supplémentaires si les précédents commencent à être chargés. Concrètement ce répartiteur favorise l'utilisation du cache système et minimise les appels au système de fichiers partagés, ce qui était l'une des causes des lenteurs.
Par ailleurs, nous sommes constamment confrontés aux sites attaqués. Certaines attaques pouvaient impacter, selon les cas, une partie des performances d'un cluster. Ayant désormais la main sur les algorithmes, il nous est devenu aisé de renforcer la sécurité et d’éviter la dégradation des performances. Tous nos hébergements mutualisés bénéficient d'une protection contre le DDoS level7. Ces protections continuent d'ailleurs à être améliorées en ce moment même.
Cette répartition de charge nous a ouvert les portes pour de nouvelles optimisations, dont notamment PHP-FPM* (Fast CGI Process Manager). Le moteur de PHP devient résident en mémoire et bénéficie d’un cache de code, ce qui permet d'accélérer considérablement les temps de réponse des pages dynamiques.
Cette technologie nous était déjà bien connue mais la mettre en place sur le mutualisé était un défi très intéressant. Nous avons patché le code de FPM afin de renforcer la sécurité et surtout pour le rendre plus modulaire avec Apache sans quoi il nous aurait été impossible de l'utiliser sur notre infrastructure. PHP-FPM est désormais proposé en standard sur les nouvelles offres de l'hébergement Web. À ce jour, nous continuons à améliorer ce répartiteur de charge, ce qui revient à rendre le système un peu plus « Cloud ». Ainsi, nous pouvons proposer des ressources garanties aux utilisateurs.


Du Cloud dans l’hébergement Web ? Expliquez-nous…

Oui, pour l’hébergement Web, notre mission consiste à offrir aux utilisateurs la plateforme adéquate à leurs besoins. Ils y déposent leurs fichiers et leurs sites ou applications fonctionnent, sans qu’ils ne se soucient de rien d’autre. Il nous appartient de gérer l’infrastructure, son bon fonctionnement. Et il nous appartient désormais de permettre aux clients d'avoir des ressources garanties.
Notre offre de départ est un environnement mutualisé avec des clients qui partagent des machines. Mais les utilisateurs sont plus ou moins gourmands, certains ont besoin de beaucoup plus de ressources que d’autres, ce qui peut impacter leurs voisins.
Ainsi, ceux qui ont besoin de disposer de ressources garanties sans avoir à se préoccuper d’administrer des machines physiques ou virtuelles opteront pour l'offre « Performance ». Ils disposeront d’un hébergement plus puissant, privé et élastique. Pour résumer, c’est la possibilité de bénéficier d’un service à la fois managé et isolé.




« Ceux qui ont besoin de disposer de ressources garanties sans avoir à se préoccuper d’administrer des machines physiques ou virtuelles opteront pour l'offre "Performance". »



Comment cette infrastructure est-elle surveillée et gérée ?

Une équipe devops est dédiée à la maintenance, au suivi et à la mise à jour de toute l'infrastructure. Nous utilisons Puppet pour assurer l'homogénéité de chaque nœud du cluster, et surtout de nombreux outils développés par nos propres soins, afin d'augmenter la souplesse dans les tests de pré-production, puis d'assurer des déploiements rapides.
Nous avons par ailleurs réécrit de nombreuses sondes permettant de connaître en temps réel les ressources utilisées par chaque hébergement. Nous en profiterons pour les rendre accessibles directement depuis l'interface client, afin que chaque utilisateur puisse s’assurer qu'il a bien choisi l'offre adaptée à ses besoins.


Et du côté de la sauvegarde, y a-t-il eu des modifications ?

Sur ce point, pas de changement. Le backup continue de se faire à Roubaix, dans un centre de données distant de plus de 200 kilomètres afin d’offrir le maximum de sécurité.


D’autres nouveautés ont-elles été apportées ?

Récemment nous avons intégré les certificats SSL aux offres web, permettant à nos clients de sécuriser les transactions avec leurs internautes, particulièrement utiles aux sites marchands. Nous avons également ajouté le CDN à l’infrastructure web. Avec cette technologie, le contenu mis en cache est répliqué en plusieurs endroits du globe, sur le réseau d’OVH. Ainsi, bien que nos serveurs soient hébergés à Paris, les ressources sont disponibles au plus proche des internautes.
Côté performances, nous effectuons beaucoup de R&D concernant les systèmes de fichiers afin d'offrir toujours de meilleurs temps de réponse. Nous prévoyons aussi des plateformes multimoteurs, acceptant d’autres langages que le PHP.

* Ce processus permet la communication entre un serveur web et PHP, basée sur le protocole FastCGI.