Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais vrai !

55 views

Published on

Il y a deux ans, nous apprenions notre nouvelle mission : migrer les 3 millions de sites web hébergés dans notre datacentre de Paris. Sans en maitriser le code source, les migrer sans impact nous semblait totalement irréaliste.
18 mois plus tard, c'est terminé ! Pour y arriver, nous avons du configurer des proxy SQL, des tunnels réseau, migrer des IP entre nos datacentres, livrer des milliers de serveurs, bosser durant des dizaines de nuits, mais aussi s'organiser entre plusieurs équipes qui n'ont pas l'habitude de travailler ensemble. Quels sont les soucis technique et humains que nous avons rencontrés, et comment les avons nous résolu ? Retour d'expérience sur l'une des plus grosse migration que le web ai connu !

Published in: Technology
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/qURD } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/qURD } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/qURD } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/qURD } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/qURD } ......................................................................................................................... Download doc Ebook here { https://soo.gd/qURD } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais vrai !

  1. 1. Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais vrai ! Vincent Cassé / @vcasse Engineering manager webhosting Sysadmin day / 18 novembre 2019
  2. 2. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er “On vous héberge” 2
  3. 3. Webhosting D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 3 - 1er hébergeur européen - 6 millions de sites web - 60 Gb/s - 6 Millards de requêtes HTTP/jour (hors CDN) - 15 000 serveurs
  4. 4. Webhosting chez OVHcloud : histoire D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 4 - Hébergement à P19 (Paris) depuis 2003 - Le web a changé depuis 1999 - Ouverture du Gravelines en 2016
  5. 5. C’est quoi le métier d’hébergeur ? D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 5
  6. 6. apt-get install apache2 php7 mysql-server? D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 6 - Stocker des données - Exécuter du code
  7. 7. Pourquoi partir de Paris ? D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 7 - Fin de vie des équipements - Décroissance naturelle du datacentre trop lente
  8. 8. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 8 Pourquoi c’était la merde ?
  9. 9. Gestion de risque D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 9 - Probabilités par ordre de grandeur - 0,1% pour 1 site : 1 chance sur 1000 - 0,1% pour 100 sites : 1 chance sur 10 - 0,1% pour 3 millions : 3 000 fois
  10. 10. Gestion de risque D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 10 - Probabilités en absolu - 0,1% pour 1 site : 1 chance sur 1000 - 0,1% pour 100 sites : 1 chance sur 10 - 0,1% pour 3 millions : 3 000 fois - Risque = Impact * Probabilité
  11. 11. Le split brain D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 11 Split-brain is a computer term, based on an analogy with the medical Split-brain syndrome. It indicates data or availability inconsistencies originating from the maintenance of two separate data sets with overlap in scope, either because of servers in a network design, or a failure condition based on servers not communicating and synchronizing their data to each other. https://en.wikipedia.org/wiki/Split-brain_(computing)
  12. 12. Vu d’un site web D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 12
  13. 13. Répartition de charge et tolérance aux pannes D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 13
  14. 14. Domaines de panne D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 14
  15. 15. Différence P19 / Gravelines D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 15
  16. 16. Contrainte des fichiers D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 16 - Dépendant des clients : code source / images/ javascripts… - Limites de rsync - Copie en mode bloc impose de migrer tous les clients d’un filerz
  17. 17. Contrainte des clusters D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 17 - Infra coûteuses mutualisées par cluster (load balancer, IP…) - Changement des zones DNS difficile - Migrer les IP implique de migrer tous les clients d’un cluster
  18. 18. Contrainte des bases de données D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 18 - Bases de données référencées avec les hébergement mais … - Connaissance exhaustive = maîtrise exhaustive des code source - Casser aucun site nécessite de migrer en même temps tous les sites
  19. 19. Contrainte des bases de données (au carré) D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 19 - Accès aux bases de données par sous domaine - Mais fonctionnalité récente (4 ans) - Anciens usages incompatible avec Gravelines
  20. 20. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 20
  21. 21. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er Alors, comment migrer ? 21
  22. 22. Casser les contraintes D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 22 En prenant en compte toutes les contraintes : - Soit migrer les sites 1 par 1 en comprenant leur code source - Soit migrer tout d’un coup (TCP over Trucks ?)
  23. 23. Nommage des bases de données : proxy SQL D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 23 db 1 db 2 …. db 2500 mysql55-XXX.plan XXX db 2 …. db 2500 db 1 …. db 250 mysql55-XXX.plan-service dbXXX.plan P19 Gravelines
  24. 24. Bases de données non référencées D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 24 - Tunnel réseau entre les deux datacentres - Impact : + 10ms de latence - « Best effort »
  25. 25. Latence et SQL proxy D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 25 db 1 db 2 …. db 2500 mysql55-XXX.plan XXX db 2 …. db 2500 db 1 …. db 250 mysql55-XXX.plan-service dbXXX.plan P19 Gravelines db 1 db 2 …. db 2500 mysql55-XXX.plan +10 ms
  26. 26. Contrainte des IP mutualisées D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 26 P19 GRA 127.0.0.1 ::1 À migrer Déjà migré
  27. 27. Contrainte des IP mutualisées D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 27 P19 GRA 127.0.0.1 ::1À migrer Web Web Web Web Web Filerz Filerz Web Web Web Web Web Filerz Filerz
  28. 28. Gestion des fichiers D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 28 Est-ce que cela pose un problème de migrer tous les clients d’un filer en même temps ?
  29. 29. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er Let’s migrate the party! 29
  30. 30. Switch des IP D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 30 - Adaptation de notre système d’information - Patch du load balancer - Tunnel réseau - Outillage et monitoring
  31. 31. Proxy SQL D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 31 - Automatisation des configurations - Déploiement 1 / 10 / 100 / 1000 - Quelques surprises : - Format de stockage des mots de passe dans MySQL - Table ARP - Gestion d’anciennes versions
  32. 32. Découpage de la migration D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 32 - Migration filerz par filerz. - Bases de données associées migrées en même temps - 1 switch d’IP à la fois, donc 1 cluster à la fois - Choix des clusters par niveau de risque. Du moins au plus risqué
  33. 33. Frise chronologique D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 33 Commande du matériel J-60 : Construction du cluster J-30 : Copie des filerz J-40 : Installation des filerz J-30 : Installation des bases J-30 : Communication J-15 : Communication J-10 : Test cluster J-7 : Switch IP J-1 : Accélération copie filerz Nuit 1 : Migration X filerz Nuit N : Migration dernier filerz J + 1 : Fermeture cluster P19 Dé-provisionning
  34. 34. Switch IP (J-7) D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 34 1. Test du cluster de destination et tunnel réseau 2. Informer clients et support 3. Rediriger les opérations SSL 4. Configurer tous les certificats 5. Pour chaque adresse IPv4 / v6 ! • Basculer l’adresse IP • Tester les sites à Paris et Gravelines 6. Rediriger le CDN
  35. 35. Migration d’un filerz : nuit D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 35 1. Tester des sites du cluster 2. Couper le monitoring des machines impactées 3. Lancer un incrémental 4. Passer les sites web en maintenance 5. Attendre le timeout PHP 6. Fermer l’accès aux fichiers sur le filerz 7. Lancer un dernier incrémental 8. Une fois que les données sont à Gravelines : migration des bases de données 9. Modification des configurations des comptes migrés (SI, infrastructure…) 10. Réouverture des hébergements 11. Attendre la fin de la migration des bases de données 12. Re-tester les sites web et vérifier le bon fonctionnement de la migration 13. Réactiver le monitoring 14. Prévenir les clients de la fin des opérations 15. Dormir
  36. 36. Migration d’un filerz : et les bases D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 36 Pour chaque base de données : 1. Passage de la base en lecture seule (select uniquement) 2. Dump de la base de données 3. Import de la base de données à la destination et ouverture en lecture/écriture 4. Redirection du nom DNS de la base vers le nouveau serveur 5. Configuration du SQL proxy vers le nouveau serveur 6. Fermeture de la base à Paris
  37. 37. Migration d’un filerz : et les bases D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 37 - Répartition des opérations sur tous les serveurs - Orchestration : stockage sur une base de données centrale
  38. 38. Migration d’un filerz : et les bases D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 38 - Répartition des opérations sur tous les serveurs - Orchestration : stockage sur une base de données centrale - Record : 13 502 bases migrées en 1h13:31
  39. 39. D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er Causons orga 39
  40. 40. Les défis D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 40 - Technique. Mais on en a bien parlé - Infrastructure découpée en équipes spécialisées (bases de données, web, stockage, datacentres, production, support, load balancers, cdn, réseau…) - Legacy - Migration longue
  41. 41. Organisation de la migration D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 41 1. Établir un scénario de migration 2. Implémenter et tester le scénario 3. Migrer et améliorer après chaque nuit
  42. 42. Change management D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 42
  43. 43. Plus de détails ? D at e F o o t er can b e p er so n alized as fo llo w : In ser t / H ead er an d fo o t er 43 • Why we decided to migrate three million websites? https://www.ovh.com/blog/web-hosting-why-we-decided-to-migrate-three-million-websites/ • How to host 3 million websites? https://www.ovh.com/blog/web-hosting-how-to-host-3-million-websites/ • How to migrate 3 Million web sites? https://www.ovh.com/blog/web-hosting-how-to-migrate-3-million-web-sites/ • How do our databases work? https://www.ovh.com/blog/web-hosting-how-do-our-databases-work/ • More soon on https://ovh.com/blog
  44. 44. Des questions ? Merci ! Vincent Cassé @vcasse

×