Aller au contenu principal

Étude de cas

Migrer dix applications d’Azure Web Apps vers Kubernetes

Le problème

La plateforme reposait sur Azure Web Apps, un modèle qui convient tant que les applications restent simples et peu nombreuses. À une dizaine d’applications réparties entre segments clients historiques et nouveaux, les limites étaient devenues structurelles : contrôle réduit sur l’exécution, mise à l’échelle grossière, isolation insuffisante entre segments, et coûts qui suivaient mal l’usage réel.

Les données, elles, vivaient dans un pool de bases managé — une base par client, 150 au total — que la migration ne devait pas toucher.

La solution

Les applications ont été portées sur Kubernetes (AKS), réparties sur des clusters multi-régions correspondant aux segments clients. Chaque segment obtient son isolation, sa fenêtre de maintenance et son dimensionnement propres.

Plateforme avant et après la migration, sur AzureAvant : une dizaine d’applications hébergées en Azure Web Apps, connectées à un pool de bases managé. Après : deux clusters Kubernetes, un par segment client, connectés au même pool. Le pool héberge 150 bases clients, une par client, et n’a pas été touché par la migration.Microsoft AzureAvantAzure Web AppsWeb AppWeb AppWeb App≈ 10 applicationsAprèsKubernetes (AKS)cluster historiquenouveau clusterPool de bases managéAzure SQL · MSSQL150 bases clientsLa couche de données ne change pas : même pool.Seule l’exécution change : Web Apps → clusters AKS.Plateforme avant et après la migration, sur AzureAvant : une dizaine d’applications hébergées en Azure Web Apps, connectées à un pool de bases managé. Après : deux clusters Kubernetes, un par segment client, connectés au même pool. Le pool héberge 150 bases clients, une par client, et n’a pas été touché par la migration.Microsoft AzureAvantAzure Web AppsWeb AppWeb AppWeb App≈ 10 applicationsAprèsKubernetes (AKS)cluster historiquenouveau clusterPool de bases managéAzure SQL · MSSQL150 bases clientsLa couche de données ne change pas : même pool.Seule l’exécution change : Web Apps → clusters AKS.

La migration a été menée sans interruption de service, application par application, avec possibilité de retour arrière à chaque étape.

Les résultats

  • Une dizaine d’applications migrées
  • Clusters multi-régions séparant les segments clients
  • Isolation et dimensionnement indépendants par segment
  • Déploiements maîtrisés et reproductibles via Helm

Ce que j’en retiens

Kubernetes n’est pas un gain en soi, et un service managé plus simple reste le bon choix pour beaucoup de charges. Ce qui a justifié la migration ici, c’est le besoin d’isoler des segments clients aux exigences différentes — un besoin d’architecture, pas une préférence technique.

  • Azure
  • Kubernetes (AKS)
  • Helm
  • Docker

Retour aux études de cas