Thibaud Cainne (AlloCiné) "Nous analysons 6 milliards de hits tous les 10 jours sur AWS"

Analytics, encodage de vidéos, stockage multimédia... Le spécialiste du cinéma en ligne s'est tourné résolument vers le cloud d'Amazon pour opérer plusieurs projets stratégiques.

thibaud cainne cto allocine
Thibaud Cainne est directeur technique d'Allociné. © JDN / Antoine Crochet-Damais

JDN. Vous avez été nommé récemment à la tête de la DSI d'AlloCiné. Quel était l'existant à votre arrivée ?

Thibaud Cainne. Je suis arrivé chez AlloCiné en janvier dernier. J'y ai trouvé une plate-forme technique finalement assez traditionnelle avec un hébergeur et des prestataires classiques.

Les sites reposent sur la technologie Microsoft .Net pour la partie serveur, avec IIS et Windows Server. Sur la partie frontale, nous utilisons beaucoup de technologies open source, notamment les serveurs Nginx et Linux Virtual Server, ou l'outil de cache Varnish. Il s'agit de très bons outils sur ce terrain.

Pour s'adapter aux fluctuations de charge, les sites font appel aux CDN Akamai et Level3.

Vous avez récemment fait évoluer une partie de l'infrastructure vers le cloud. Pourquoi ce choix ?

Nous venons de mettre en ligne un portail de vidéos. Ce chantier demandait un accroissement de notre capacité de stockage, avec de la sauvegarde et de l'archivage, mais aussi la mise en place de processus d'encodage. Le tout avec des volumes de vidéos à mettre en ligne très variables d'un jour à l'autre, en fonction des partenariats signés avec les fournisseurs de contenus. L'idée étant de les publier rapidement en 24h. Nous avons commencé à réaliser un modèle économique sur la base de quelques dizaines de serveurs acquis et installés en interne. Nous nous sommes vite rendu compte que cette piste nous conduisait à des délais de projet trop longs, avec un coût d'infogérance élevé pour une utilisation à plein quelques heures par mois.

Partant de là, nous nous sommes tournés vers la solution du cloud Amazon qui nous permet de louer des serveurs en fonction des besoins. Nous faisons appel à des instances EC2 sur lesquelles nous avons monté notre serveur d'encodage maison, avec quelques adaptations. Nous avons mis en place une infrastructure de scripting développée sur-mesure pour piloter ces instances depuis notre data center, envoyer et récupérer les fichiers transcodés.

"Nous utilisons Hadoop sur Amazon Web Services"

Vous aviez aussi de nouvelles problématiques de stockage...

Avec cette nouvelle volumétrie de contenus vidéo, nous avons fait face à la même alternative côté stockage. Soit nous faisions l'acquisition d'un serveurs NAS de 40 à 60 To, avec à la clé un investissement important à réaliser sans pour autant bénéficier d'une solution très évolutive, soit nous passions par le cloud. Là encore, nous avons opté pour cette dernière. Nous atteignons aujourd'hui 5 à 6 To d'occupation. Le rapport de coût entre les deux possibilités est assez clair. Et à la différente d'une solution de système classique installée en interne qui peut nécessiter plusieurs mois de mise en place, le cloud permet de commencer en 5 minutes.

Pour conclure sur ce point, le cloud public est une solution d'infrastructure bien adaptée dans deux cas de figure : en cas d'activité à pics d'une part, et en cas d'impossibilité à prévoir le niveau d'activité d'autre part. Le cloud permet en effet de réduire les risques en évitant tout investissement. Même si l'activité est linéaire, je ne pense pas que le cloud soit plus cher d'ailleurs. Il représente à peu près le même prix qu'une infrastructure classique pour peu de louer des instances avec de la réserve, et en réalisant un auto-dimensionnement en fonction des fluctuations quotidiennes par exemple. En revanche, si l'investissement a été déjà réalisé, le coût n'en vaut alors pas la chandelle.

Avez-vous des problématiques d'analyse de données en masse, bref de Big Data ?

Nous avons là encore recours au cloud d'Amazon, et notamment au service Elastic MapReduce (EMR). Il s'agit ni plus ni moins que d'un cluster Hadoop à la demande. Notre objectif était de mettre en place un outil d'Analytics maison. AlloCiné représente 50 millions de visiteurs uniques par mois et 600 millions de hits par jour, soit 6 milliards tous les 10 jours. Là encore deux alternatives : internaliser le système, avec des coûts faramineux et des délais de mis en place d'au moins trois à quatre mois... ou opter pour le cloud. Nous n'avons pas hésité.

"Nous envisageons de monter un PRA dans le cloud"

 D'autant que pour ce besoin, Amazon propose une solution Hadoop packagée, avec Hive, sur des instances EC2 à la demande. Au lieu d'envoyer les hits chez nous, nous les envoyons sur le CDN CloudFront d'Amazon, sur lequel nous récupérons les logs qui sont stockés sur S3. Nous manipulons ensuite directement ces fichiers depuis des cluster EMR. En sortie, nous visualisons les statistiques et indicateurs consolidés par le biais de fichiers Excel csv. C'est le cas par exemple du taux de visionnage des vidéos, qui est désormais généré par cette plate-forme. Une fois les calculs achevés, nous poussons les logs dans l'outil de stockage Glacier d'Amazon. Pour optimiser les coûts du cluster, nous avons recours à des instances Spot.

Est-il aisé de se lancer dans de tels projets de cloud public, en termes de compétences notamment ?

EC2 et S3 sont des solutions relativement faciles à prendre en main pour un administrateur système. Nous avons un très bon responsable de production chez AlloCiné. Côté EMR, c'est un peu plus compliqué. Ce service nécessite en effet de nouvelles compétences. Amazon nous a accompagné dans la démarche.

Quelle est la prochaine étape ?

Nous allons tester Amazon CloudFront. Nous envisageons aussi de mettre en place un plan de reprise d'activité en mode cloud. Des réplications existent déjà sur des infrastructures traditionnelles, mais les coûts sont importants. Notre taux de cache sur les CDN Akamai et Level3 nous permet aussi de rester en ligne en cas de problèmes sur nos serveurs, mais il s'agit de solutions chères et pas forcément les plus intelligentes. L'idée serait donc de monter un PRA en se basant sur le cloud d'Amazon, avec des instances actives pour gérer la synchronisation de nos bases de données. En cas de problème technique, nous pourrions alors remonter nos serveurs frontaux automatiquement sur des instances activées à la volée. Objectif : ne payer que le minimum vital pour bénéficier d'un PRA.

Où en sont vos projets en matière de mobilité ?

L'application mobile AlloCiné se classe parmi les premières apps mobiles françaises installées. Elle passe par les CDN Akamai et Level3 pour appeler notre API. Nous sommes présents sur iOS, Android et Blackberry, mais aussi sur les télévisions connectées, Samsung, LG, Bada, Tizen... Nous sommes également sur XBox.

 

Biographie professionnelle : Thibaud Cainne a été nommé directeur technique d'AlloCiné en janvier 2013. La direction technique d'AlloCiné compte plus d'une vingtaine de personnes en France, et fait appel à des équipes en Ukraine via une société Offshore. Précédemment, Thibaud Cainne a notamment été directeur technique de Brandalley et de Fotovista (groupe Pixmania).