Kubernetes OVH

- Type de client
- Editeur de logiciels
- Offre
- Kubernetes
- Objectifs
- Disposer d’une architecture SAAS robuste et scalable
Les résultats
-
-
Scalabilité
Architecture adaptative hautement disponible pour absorber l’augmentation de la charge
Cloud – Migrez vos applications SAAS sur Kubernetes.
LecPac Consulting a accompagné un de ses clients vers une architecture Cloud Native basée sur l’offre managée Kubernetes de chez OVH, en s’appuyant sur les meilleures technologies cloud et bonnes pratiques DevOps. 👇






Notre rôle n’est pas de gérer nos propres datacenters, mais de proposer à nos clients des services à forte valeur ajoutée au dessus de l’offre Cloud des gros acteurs du marché (OVH, Google, AWS,…).
Les solutions que nous choisissons sont agnostiques et sans lock-in technique. Elles permettent de localiser votre hébergement chez le fournisseur cloud de votre choix et d’en changer durant toute la durée de vie de votre projet.
Explorer le potentiel de Kubernetes pour vos logiciels SAAS
Notre client disposait d’une infrastructure composée de serveurs dédiés sur laquelle il hébergeait des applications web en mode SAAS.
Ses applications étaient développées en Symfony et versionnées sur un dépôt Bitbucket, elles étaient par la suite conteneurisées avec Docker pour être déployées en production.
Les problèmes rencontrés sur cette architecture étaient un manque de fiabilité sur le déploiement, car cette tache était réalisée manuellement par les équipes de développement. Puis Il y avait également des interruptions de service causées par des crash de conteneur liés par un manque de ressources sur les serveurs dédiés ou bien des problèmes applicatifs.
Notre client souhaitait continuer à faire de la conteneurisation pour avoir un environnement identique entre le développement et la production. La sécurité des données et la disponibilité en production étaient des enjeux majeurs dans ce projet.
Pour nos consultants DevOps, il semblait évident de proposer une architecture Kubernetes pour répondre aux besoins de notre client.
Voici quelques avantages majeurs de l’adoption d’un cluster Kubernetes lorsque l’on fait de la conteneurisation :
- Cohérence des environnements : L’utilisation des conteneurs offre une cohérence des environnements de développement, de tests et de production. Un conteneur docker qui tourne sur un ordinateur fonctionne de la même manière que sur un cluster Kubernetes.
- Supervision des conteneurs: La tâche principale de l’orchestrateur Kubernetes est de maintenir en confiance l’état de fonctionnement des conteneurs et plus généralement des applications.
- Déploiement automatique des applications : Le déploiement peut être beaucoup plus facilement automatisé sur cette infrastructure ( approche GITOPS ). Les coûts d’exploitation sont également réduits.
- Continuité des applications : Kubernetes maintient des répliques actives de groupes de conteneurs, dans le but précis d’apporter de la résilience face à la panne en cas de défaillance d’un conteneur.
- Mise à l’échelle automatique des applications : L’architecture est évolutive, Kubernetes peut être configuré pour répliquer automatiquement les pods applicatifs vers différents nœuds, on parle ainsi de scalabilité horizontale.
Comment choisir son hébergeur cloud ?
Comme toute technologie disruptive, il faut passer par une phase de préparation pour migrer vers une infrastructure Kubernetes. Nous conduisons la plupart de nos clients à travers ce processus en réalisant un audit de l’existant , en analysant les risques , et en fournissant des conseils stratégiques pour faire le bon choix sur l’infrastructure Kubernetes.

Comme pour notre client, si vous souhaitez migrer sur Kubernetes, il y a évidemment une bonne raison à cela : stabilité accrue, unification des environnements et autoscaling rapide.
Une fois que nous avions réalisé l’étude de l’existant, analysé les besoins et les risques des applications SAAS de notre client, la première chose qui a été considéré était de savoir comment l’infrastructure sous-jacente y serait provisionnée et gérée.
La première option était d’exécuter un cluster Kubernetes sur une infrastructure privée, cela signifie que vous devez vous les complexités des composants de la plateforme ( ETCD, Stockage persistant, Loadbalancing, Mise à jour de sécurité… ).
S’il n’y a pas d’obligation légale ( PCI DSS , HDS …), chez LecPac Consulting, nous privilégions d’utiliser un service Kubernetes managé. Cela permet en l’occurrence de déléguer toute la responsabilité du provisionnement et de la gestion de l’infrastructure chez un hébergeur cloud. ( OVH, GCP, AWS… ).
Comment déployer une infrastructure Kubernetes?

Pour une migration réussie vers le cloud, nous avons une approche DevOps avec des outils qui permettent de définir votre infrastructure avec du code. Votre hébergement devient donc (comme en génie logiciel ) testable, re-jouable, versionable, automatisable. Nous mettons en avant l’automatisation des tâches (livraison, rollback, etc..) plutôt que les actions manuelles sur les machines.
Ansible, Terraform, Flux2 pour quoi faire ?
- Instancier des machines virtuelles et/ou toute une infrastructure Kubernetes.
- Installer des logiciels de base sur une VM vierge ou sur un cluster Kubernetes.
- Déployer vos services et applications.
- Effectuer des opérations de maintenance sur tout ou partie de vos VMs (backup, mise à jour de sécurité, monitoring).
Toutes les ressources ( Cluster Kubernetes , Machines virtuelles de base de données ) définissant l’environnement de notre client sont ainsi versionnées.
Conclusion
L’utilisation d’une offre managée Kubernetes simplifie la gestion de l’infrastructure ! Cependant, la migration de certaines applications demande beaucoup d’efforts. Nos consultants restent disponibles pour vous révéler et accompagner votre ambition de migrer vers une infrastructure Cloud native.