Mises à jour sans coupures

  • "En maintenance" ? Sérieusement ?
  • Internet => 24/7
  • Moins de stress

Presenter Notes

Ne pas se tromper de combat

  • Fonctions critiques
  • Isoler les briques
  • Mesurer le métier
stats_small.png

Presenter Notes

Migrations

  • Le point bloquant
  • Trier en plusieurs catégories :
    • Compatible avec l'ancienne version (nouvelles colonnes)
    • Compatible uniquement avec la nouvelle version (suppression de colonnes)
    • Non critiques (fonctions peu utilisées, nouvelles tables)
    • Auxiliaires (ajout d'index)

Presenter Notes

Procédurer

  • Mettre à jour le code sur un serveur "non actif"
  • Lancer les migrations "rétro-compatibles"
  • Mettre à jour le code des applicatifs
    • Sortie du pool
    • Mise à jour
    • Retour dans le pool
  • Lancer les migrations "non-compatibles"
  • Lancer le reste des migrations

Presenter Notes

Pré-requis

  • Rigueur dans la rédaction du plan de bascule
  • Livraisons fréquentes (facilite une migration en deux phases)
  • Pré-production pour valider les non-régressions
  • Automatisation du processus de mise à jour (scripts d'upgrade)

Presenter Notes

Bilan

Autolib':

  • 1 à 2 mises à jour par semaine, à 8h le matin
  • Aucune interruption de service ressentie par les clients
  • Environ 5 minutes de coupure par mois liées au déploiement
  • En deux ans, une seule coupure d'une heure pour des migrations lourdes (split AUTH_USER_MODEL)

Merci South !

Presenter Notes