Sellsy modernise son SaaS sur le cloud Scaleway avec l’accompagnement et le Run 24/7 d’Enix

Image Description

Environnement

SVG

Technologies

SVG

Services

SVG

Les équipes de Sellsy à Bordeaux ont déménagé leurs bureaux en 2023. En 2024, c’était au tour de l’intégralité de leurs infrastructures de changer d’adresse !

Bien sûr, nos équipes Enix et celles de Sellsy n’ont pas déplacé physiquement les serveurs… mais vu le nombre d’heures passées à tout préparer et la complexité du projet, cette migration n’avait pas grand chose à envier à un déménagement de piano au 6ᵉ étage sans ascenseur.

Maintenant que l’ensemble des applications a été migré et que nous assurons sereinement la gestion opérationnelle de la plateforme, revenons sur les objectifs et détails de cette migration réalisée en quelques mois avec les équipes Sellsy et les équipes Scaleway.

🏡 Pourquoi Sellsy souhaitait changer d’hébergeur ?

Sellsy édite une solution SaaS française de gestion commerciale et financière pour les TPE & PME. Utilisée par près de 50 000 utilisateurs, elle est reconnue sur le marché et embarque de nombreuses fonctionnalités : CRM, pipeline des opportunités d’affaires, Email Automation, tracking et scoring des leads, gestion devis et factures, signature électronique, emailing marketing, etc.

Depuis sa levée de fonds en janvier 2022, Sellsy connaît une forte croissance. Il ont souhaité anticiper les limites de leur infrastructure on-premise utilisée jusque-là et moderniser leur plateforme en améliorant ses capacités de scalabilité et de résilience.

Un élément stratégique était par ailleurs de ne pas dépendre d’un fournisseur de cloud américain, afin de garantir la souveraineté et la conformité des données : un réel critère de choix pour les clients de Sellsy.

Enfin, cette transition devait s’inscrire dans un cadre budgétaire maîtrisé, avec un modèle de coûts prévisible et optimisé, permettant à Sellsy de concilier performance et rentabilité.

🥖 Le choix du cloud Scaleway

Sellsy a choisi le fournisseur cloud français Scaleway pour la richesse de son offre cloud et serveurs bare metal, affirmant ainsi sa volonté de valoriser le savoir-faire technologique français.

Dans le catalogue des solutions Scaleway utilisées, les services managés : object storage pour le stockage des fichiers clients ; instances cloud et Kubernetes managé (Kapsule) pour la R&D, les environnements à la demande et les applications en cours de développement.

Pour les environnements de production dont la croissance est prévisible, Sellsy a opté pour les nouvelles gammes de serveurs bare metal store-9 et core-10. Équipés de processeurs AMD et de disques SSD-NVME, ils sont déployés sur 3 datacenters de Scaleway, assurant ainsi les niveaux de performance et de disponibilité attendus.

Pendant cette phase initiale consistant à définir l’architecture et sélectionner le hardware et les services managés Scaleway, nous avons pu conseiller les équipes Sellsy grâce à notre connaissance des solutions Scaleway dont nous sommes l’un des premiers partenaires privilégiés.

🧑💻 Passer à Kubernetes, avec une utilisation massive de Bases de Données

La stack technique et les applications de Sellsy fonctionnaient depuis plusieurs années avec des conteneurs en local et leurs équipes tech souhaitaient un environnement homogène de bout en bout de la chaîne de production logicielle.

Dans le cadre de cette migration cloud, il a été décidé de passer à Kubernetes pour déployer, gérer et faire évoluer les applications avec une scalabilité accrue, une automatisation avancée et une forte résilience. Pour ce faire, nous avons déployé sur les serveurs bare metal de Scaleway des clusters Kubernetes sécurisés et sur mesure basés sur Talos (avec notre sauce secrète Enix !).

Par ailleurs, Sellsy avait acté en amont du projet de migration de changer de système de base de données relationnelle de MariaDB vers PostgreSQL et ainsi adopter une approche distribuée de l’hébergement des bases de données.

Quentin Loupot, Head of infrastructure chez Sellsy détaille l’accompagnement que nous avons pu offrir à leurs équipes :

Quentin Loupot (Sellsy) : Enix nous a permis de déployer des clusters Kubernetes sur les serveurs bare metal de Scaleway avec un socle de virtualisation Proxmox VE, disposant ainsi d’un rapport coût / ressources imbattable.

Ils nous ont par ailleurs permis d’aller plus loin que ce que nous avions imaginé en interne durant la phase initiale du projet :
  • Dans un premier temps, ils nous ont conseillés et accompagnés pour héberger les multiples bases de données de nos clients directement dans Kubernetes avec l’opérateur CloudNativePG (CNPG), réparties dans plusieurs dizaines de clusters Postgresql ;
  • Nous avons également choisi de déployer dans k8s nos middleware redis et rabbitMQ, via l'opérateur rabbitmq-cluster-operator" (Cet opérateur ayant dorénavant une maturité établie pour des environnements de production exigeants).
Enfin, sur l’aspect CI/CD et GitOps, les équipes Enix nous ont également formés et accompagnés sur la mise en place des déploiements avec FluxCD.

👮 Fermons bien les portes derrière nous, la sécurité !

Sans trop entrer dans les détails, sécurité oblige, nous pouvons partager 2 éléments centraux mis en place sur la nouvelle infrastructure de Sellsy qui contribuent à la sécurité :

  • Utilisation de Talos Linux pour déployer le cluster Kubernetes avec la plus petite surface d’attaque possible (distribution Linux minimale optimisée pour Kubernetes) ;
  • Routage de l’intégralité du trafic HTTP via le CDN/WAF Cloudflare et leurs tunnels cloudflared. Bye-bye les Loadbalancers publics et bonjour au magic transit.

📦 La préparation du côté des applications et des bases de données

Pendant six mois, les équipes Sellsy ont travaillé à une transformation majeure du code de leurs applications pour assurer une transition fluide vers leur nouvelle architecture.

L’un des chantiers les plus conséquents a été la migration de MariaDB vers PostgreSQL, impliquant une refonte complète de la gestion des bases de données dans leur codebase. Au lieu d’une instance centrale mutualisée entre tous les clients, chaque client dispose désormais de sa propre base de données, avec des adaptations en profondeur et la création de scripts de migration robustes pour garantir la continuité des services.

En parallèle, Sellsy a adapté les applications à Kubernetes. Bien qu’elles aient déjà été conteneurisées, certaines nécessitaient une isolation complète pour s’aligner avec leurs nouveaux standards d’architecture. Nous avons également revu ensemble leur workflow de déploiement en séparant la partie intégration continue (tests et builds avec GitLab CI) du déploiement continu, désormais orchestré avec FluxCD.

🪖 Le grand déménagement

Pendant 3 mois, nos équipes ont été en lien direct avec celles de Sellsy (merci Slack connect !) pour piloter les différentes phases de la migration. Nous sommes attachés à cette proximité qui nous permet d’agir avec la même efficacité et la même réactivité qu’une équipe technique en interne.

L‘interconnexion du réseau entre les 2 infrastructures réalisée en amont a grandement facilité cette étape, car elle a permis de continuer l’exploitation des services le temps qu’ils soient basculés d’une infrastructure à une autre, tout en limitant les coupures.

Ainsi, durant ces 3 mois, les données des clients de Sellsy ont été déplacées progressivement de la base centrale dans MariaDB vers leurs bases de données dédiées dans les différentes instances Postgresql ! Pour ceux qui aiment les chiffres, nous parlons ici de près de 40 000 bases de données réparties dans 50 clusters CNPG.

🎙️ Et maintenant alors ? Des regrets avec cette nouvelle plateforme SaaS ?

Côté Enix, nous sommes désormais en charge de l’infogérance en 24/7 de cette nouvelle plateforme cloud déployée chez notre partenaire Scaleway.

Nous étendons par ailleurs régulièrement notre collaboration sur les nouveaux besoins de Sellsy. Nous leur avons par exemple récemment mis à disposition un cluster Elastic managé déployé via ELK.

Du côté de Sellsy, le mieux est peut-être de donner la parole à Quentin que nous remercions pour son retour élogieux sur ce projet passionnant réalisé ensemble :

Quentin Loupot (Sellsy) : L’accompagnement proactif dont Enix a fait preuve durant toute la phase de migration a été essentiel pour nous dans le bon déroulement du projet.

Leur grande disponibilité et leur expertise technique sur des sujets aussi variés que CNPG, Postgresql, Kubernetes et Talos, Proxmox, Ceph et j’en passe ... ont été des atouts majeurs pour soutenir nos équipes en interne !

Enfin et surtout, nous sommes bien installés sur cette nouvelle infrastructure qui tient toutes ses promesses : hébergée en France chez Scaleway, modernisée de bout en bout, avec des performances en hausse de 30%, une sécurité renforcée et des process d’exploitation rigoureux et automatisés !

.