Todocoleccion_Case Study_header_web_OVHcloud
30 millions de lots - Todocoleccion

30 millions
de lot

images stockees - todocoleccion

200 millions
d'images stockées

visiteurs - todocoleccion

625 000
visiteurs / jour

Le contexte

Todocoleccion est la plus grande communauté en ligne d’achat et de vente aux enchères d’antiquités, d’art, de livres et de toute sorte d’objets de collection.
Depuis 25 ans, Todocoleccion offre à ses utilisateurs une vitrine sur laquelle ils peuvent mettre en vente leurs biens ou en acquérir.
Avec plus de 30 millions de lots à vendre répartis en plus de 2 000 catégories, l’entreprise propose un catalogue « rempli d’émotions, de sentiments et de souvenirs emplis d’histoires. Des histoires appartenant à une communauté composée de petits groupes aux intérêts culturels variés qui rendent le monde de la collecte si particulier ».
Pour permettre à cette communauté de vendre et d’acheter ces objets, Todocoleccion met à disposition tous les outils nécessaires à la gestion du cycle de vie d’un lot selon le besoin des acheteurs ou des vendeurs. Les vendeurs disposent d’outils pour la gestion massive des lots, l’importation en grande quantité ou encore la gestion de support après-vente, tandis que les acheteurs bénéficient des outils leur permettant de communiquer avec les vendeurs, d’enchérir et faire des offres sur les lots qui les intéressent.

Des pionniers dans le commerce en ligne

En tant que pionnier dans le commerce en ligne, Todocoleccion a relevé de nombreux défis au cours des 25 dernières années, a grandi et s’est étendu. Dans sa première version, le site Internet était statique et les lots à vendre étaient édités directement en HTML. Très vite, la société s’est réorganisée avec l’ajout d’un nouveau partenaire dans le but de révolutionner le secteur des collections et des ventes aux enchères. L’entreprise emploie désormais plus de 50 travailleurs dans le monde et possède une infrastructure hybride répartie entre serveurs dédiés Bare Metal, Hosted Private Cloud et Public Cloud. Grâce à son site Internet et à son application mobile, Todocoleccion permet à plus de 10 millions de visiteurs de consulter 100 millions de pages chaque mois pour un total de transactions s’élevant à plus de 65 millions d’euros chaque année, dont 80 % sont réalisées en Espagne.

Le défi

Une infrastructure pour des transactions B2B, B2C et C2C

Todocoleccion représente de nombreuses communautés partageant des intérêts culturels très spécifiques et particuliers, mais aussi de tailles totalement différentes. Afin de fournir à chacun de ces groupes la sécurité et la visibilité dont ils ont besoin pour leur commerce en ligne, l’entreprise doit avoir une infrastructure hautement disponible et fiable. De plus, Todocoleccion dispose d’une stack complexe composée de multiples outils OpenSource. Un de leurs plus grands défis est de disposer d’un uptime aussi proche que possible de 100 %.

« L’éventail de solutions physiques et virtuelles nous a fait nous tourner vers OVHcloud afin d’améliorer la performance et la scalabilité de notre infrastructure sans avoir à maintenir notre propre centre de données ni utiliser une quantité de ressources trop importante ».

Joaquín Valdés, CEO, Todocolección

Une très grande quantité d’images à redimensionner

À ce jour, la société dispose d’une base de données de plus de 200 millions d’images de produits à la fois en vente et vendus, et chacune de ces images peut être visualisée dans différentes résolutions, tailles et orientations ou selon différents filtres. Ces images occupent 14 TB dans l’Object Storage. Todocoleccion a donc besoin d’un outil de création de vignettes hautement disponible et à un coût maîtrisé. Pour satisfaire ses clients, Todocoleccion a toujours misé sur la rapidité et sur un temps de latence le plus faible possible. L’entreprise souhaitait donc permettre à ses utilisateurs d’accéder à son site Internet avec un temps de réponse des pages maintenu sous 200 ms dans la mesure du possible, le temps de latence optimal d’un site Internet étant de 100 ms.

Un besoin de sécurité et de conformité

La scène des start-ups à Malaga est très variée. OVHcloud est fortement lié à cette scène car elle propose des offres scalables à un coût maîtrisé, idéales pour les start-ups et les projets en démarrage. Todocoleccion étant installée en Europe et proposant du commerce en ligne, l’entreprise a besoin d’un fournisseur répondant aux exigences européennes en matière de sécurité et de protection des données de ses utilisateurs.

« Une des raisons, plus culturelle, est qu’OVHcloud est un projet européen, avec un siège en France et de nombreuses filiales partout dans le monde. OVHcloud génère de l’emploi, de la richesse et, surtout, est conforme aux réglementations et lois en vigueur ».

Joaquín Valdés, CEO, Todocolección

Ainsi, pour satisfaire ses besoins de scalabilité, de haute disponibilité et de sécurité tout en maîtrisant le coût de son infrastructure, la société a choisi de migrer vers OVHcloud.

Qu'est-ce qu'un Thumbnailer ?

Un Thumbnailer est un outil/programme permettant de générer des miniatures, c’est-à-dire des vignettes d’images, pour un site Internet. La bonne utilisation d’un outil de miniaturisation d’images permet, entre autres, de réduire le temps de latence d’un site Internet et d’optimiser l’expérience des visiteurs. 
L’utilisateur donne au Thumbnailer un fichier et une taille cible exprimée en pixels afin que le programme crée une vignette correspondant à ces paramètres. 

Quelle est la différence entre Kubernetes et Docker ?

Kubernetes et Docker vont de pair, ils sont complémentaires. Pour comprendre cette complémentarité, il faut comprendre ce qu’est la conteneurisation. Il s’agit d’une méthode de cloisonnement au niveau du système d’exploitation (OS). Elle permet de faire tourner des environnements totalement isolés les uns des autres mais qui partagent le même « noyau » de la machine hôte.

Docker est une technologie de conteneurisation. Les fichiers binaires, les librairies et, de façon générale, toutes les dépendances dont une application a besoin pour fonctionner, sont placés dans une « boîte », un conteneur, totalement indépendant des autres conteneurs partageant le même « noyau » mais aussi de l’infrastructure sous-jacente. Ces conteneurs pouvant être dupliqués à l’infini, leur gestion peut rapidement devenir un défi. C’est ici qu’intervient Kubernetes. En effet, Kubernetes est un orchestrateur de conteneurs. Il permet de gérer l’intégralité du cycle de vie des conteneurs Docker dès leur création. La création et la duplication de ces conteneurs Docker sont simplifiées, de même que leur répartition sur différentes infrastructures, pour finalement permettre une automatisation facilitée de leur gestion. Kubernetes permet ainsi aux développeurs de se concentrer sur leur code sans avoir à se soucier des couches sous-jacentes et de la gestion des machines virtuelles (VM).

La solution

Migrer l’infrastructure vers OVHcloud

En juillet 2019, Todocoleccion fait donc le choix de migrer une partie de son infrastructure vers OVHcloud afin de réduire ses coûts tout en conservant une disponibilité proche de 100 %, même pendant la migration. L’entreprise choisit OVHcloud comme nouveau fournisseur grâce au large éventail de solutions physiques et virtuelles qui lui permettent d’améliorer ses performances et l’évolutivité de son infrastructure sans avoir à gérer son centre de données On Premises, tout en lui évitant de gaspiller des ressources. La complexité de sa stack nécessitant une offre adaptée répondant à ses exigences techniques, Todocoleccion se tourne vers une solution de cloud hybride dans laquelle Serveurs dédiés Bare Metal, Hosted Private Cloud et Public Cloud sont utilisés pour répondre à ses différents besoins techniques et spécifiques.

« Outre la maîtrise des coûts, nous avions besoin d’une haute disponibilité, d’un bon temps de réponse et de bonnes mesures de sécurité qui nous permettent de proposer nos services sans interruption ou de trouver une réponse et une résolution rapide des incidents en cas d’interruption ».

Joaquín Valdés, CEO, Todocolección

Managed Kubernetes Service pour leur Thumbnailer

Avec plus de 30 millions de lots à stocker et à présenter, Todocoleccion a besoin d’une infrastructure capable de générer, stocker et gérer les vignettes associées aux différents produits mis en vente et aux enchères sur son site Internet. Pour cela, l’entreprise décide en octobre 2020 de mettre en production un outil de miniaturisation d’images pour l’affichage des lots sur son site Internet. Elle utilise son cluster Managed Kubernetes pour opérer son Thumbnailer afin d’optimiser les ressources liées à la création de vignettes des nombreux lots disponibles en ligne, tout en ayant un temps de latence le plus réduit possible. Malgré le manque de connaissance du monde de Docker dont disposent les équipes de Todocoleccion, les membres de son service IT se sont vite rendu compte que Managed Kubernetes était la solution parfaite pour héberger son Thumbnailer.

« Bien que la mise en place de ce projet semblait complexe de prime abord, nous sommes ravis d’avoir pu compter sur Adrian qui a été un véritable évangéliste OVHcloud, nous accompagnant sur l’utilisation de notre cluster Kubernetes managé.
Le support qui nous a été fourni a été à la hauteur de nos attentes ! »

Joaquín Valdés, CEO, Todocolección

Automatiser pour augmenter la fiabilité de l’infrastructure

Todocoleccion souhaitait également automatiser le plus possible le cycle de vie de son code déployé sur Kubernetes. En automatisant la manière dont sont générées des images Docker et leur publication dans le « Docker Registry », la société minimise les points où une intervention humaine est nécessaire dans le déploiement pour réduire les points de défaillance possible.

Cet outil de création de vignettes est composé de pods qui redimensionnent et filtrent les images importées sur le site Internet de Todocoleccion.

Le déploiement du Thumbnailer sur Kubernetes consiste en 8 à 50 pods créés et supprimés selon une politique de mise à l’échelle horizontale (H.P.A) qui ajoute automatiquement des pods lorsque le CPU atteint 80 % de sa capacité, et les supprime lorsque le quota CPU retombe à 50 %. Chaque pod exécute le code du Thumbnailer, constitué d’une application NodeJS, qui communique avec OVHcloud Object Storage et qui transforme ensuite l’image originale pour l’envoyer en contenu statique vers le CDN à l’aide d’une bibliothèque C.

infrastructure_todocoleccion_OVHcloud

 

Enfin, l’usage de Kubernetes par Todocoleccion facilite la gestion d’un cycle de vie logiciel bien défini. La société utilise un pipeline CI/CD basé sur GitLab, qui se charge de tester le code JavaScript, de le compiler et de générer une image Docker. Suite à cela, cette image est appliquée sur un cluster Managed Kubernetes pour sa mise en ligne. En plus de ce pipeline CI/CD pour gérer le cycle de son code, Todocoleccion déploie également des outils pour le suivi d’applications directement dans son cluster Managed Kubernetes, avec des outils comme Prometheus et Grafana. Grâce à ces mesures, Todocoleccion observe chaque mise à jour du code du Thumbnailer et s’assure qu’elle se déroule sans encombre. En cas de défaillances, l’équipe IT peut ainsi agir de la mise en scène à la production. Le Thumbnailer de Todocoleccion lui permet de servir plus de 46 millions de demandes d’images pour plus de 625 000 utilisateurs par jour. Un exemple typique d’utilisation d’un Cluster Managed Kubernetes pour la scalabilité !

Le résultat

Après la migration de son infrastructure sur les instances Public Cloud d’OVHcloud en juillet 2019, Todocoleccion a réduit de près de 80 ms le temps de réponse de son site Internet. L’outil Thumbnailer, entré en production en octobre 2020, permet de servir 120 à 250 demandes par seconde. En temps normal, l’utilisation des ressources reste similaire à l’implémentation précédente. Mais un atout majeur est que Todocoleccion peut redimensionner son cluster en augmentant le nombre de nœuds de travail en fonction du besoin. La société peut ainsi garantir une disponibilité continue, même en cas de forte affluence, en activant l’auto-scaling des node-pools de Kubernetes.

« En bref, OVHcloud nous permet d’obtenir les mêmes résultats qu’avec notre fournisseur précédent, voire de meilleurs résultats, à une fraction du coût ».

Joaquín Valdés, CEO, Todocolección

Todocoleccion souhaite également développer l’utilisation des appareils mobiles, qui représentent déjà 55 % du trafic actuel et du chiffre d’affaires de la société, et continuer d’étendre sa présence à l’international.