Upload
romainkuzniak
View
1.126
Download
0
Embed Size (px)
Citation preview
UNE MIGRATION SUR AWSUne migration orientée produit
QUI SUIS-JE ?
Romain Kuzniak
Responsable technique
@RomainKuzniak
OPENCLASSROOMS
Offre de formation sur la transformation digitale et les nouvelles technologies
Ouvert à tous, du débutant à l’expert, de l’étudiant au professionnel en passant par les personnes en reconversion
OPENCLASSROOMS
1000 cours et MOOC
1 million de membres
2,5 millions de visiteurs uniques par mois
15 à 20 millions de pages vues par mois
Première plateforme de digital learning d’Europe
IL ÉTAIT UNE FOIS …
1999 : création du site par Mathieu Nebra (13 ans), hébergement gratuit fourni par la FAI de son père
2000 : même hébergeur, url gratuite siteduzero.fr.st
2002 : hébergement mutualisé OVH (siteduzero.com)
2004 : appel aux dons pour l’achat d’un serveur dédié dans une baie infogérée par OVH
2006 : second appel aux dons et hébergement chez Din’hosting
2010 : Gandi Cloud
mi-2010 : retour chez Din’hosting suite à des problèmes récurrents de disque sur Gandi Cloud
2011 : achat de plus de serveurs et passage en cloud privé chez Din’hosting
2013 : Heroku
mi-2013 : retour sur nos serveurs suite aux problèmes de stack d’Heroku
2015 : AWS
InfonieOVH
Serveurs dédiés
Serveurs dédiés
Serveurs dédiés
Serveurs dédiés
AWS
HerokuGandi
2002 2004 2006 2010 2011 2013 20151999
NOTRE INFRASTRUCTURE N’EST PLUS ADAPTÉE À NOS BESOINS
Trafic
Services
Workflow de création des fonctionnalités
QUELLE PLATE-FORME DEVONS-NOUS CHOISIR ?
QUELLE PLATE-FORME DEVONS-NOUS CHOISIR ?
QUE VOULONS-NOUS FAIRE ?
NOTRE MÉTIER CONSISTE À CRÉER LA MEILLEURE PLATE-FORME DE DIGITAL
LEARNING DU MONDEi.e. : l’infrastructure est un moyen d’y arriver
OpenClassrooms doit être fonctionnel
Disponibilité de tous les services
OpenClassrooms doit être toujours accessible
Acteur du domaine sérieux et établi
OpenClassrooms doit être réactif Puissance serveur
OpenClassrooms doit être réactif quelle que soit la charge
Auto Scalling
OpenClassrooms doit être réactif partout dans le monde
Multi region
L’utilisateur doit avoir ses données sécurisées
Cryptage des données, passif de sécurité
Les données d’OpenClassrooms doivent être toujours accessibles
Mécanismes de Backup performants
L’AGILITÉ EST AU COEUR DE L’ENTREPRISE
Les développeurs doivent pouvoir surveiller le bon fonctionnement
de l’applicationOutils de monitoring disponibles
Les développeurs font des mises en production plusieurs fois par
jour
Mécanisme de déploiement continu rapide et automatisé
La QA nécessite plusieurs environnements de pré-
production
Possibilité de créer des environnements à la volée
OpenClassrooms doit pouvoir évoluer facilement
Possibilité d’ajouter de nouveaux services facilement
UNE SEULE PLATE-FORME EST CAPABLE DE RÉPONDRE À TOUS CES CRITÈRES
AWS
COMMENT ALLONS-NOUS FAIRE ?
NOTRE MÉTIER CONSISTE À CRÉER LA MEILLEURE PLATE-FORME DE DIGITAL
LEARNING DU MONDEi.e. : notre métier n’est pas de créer ni de maintenir l’infrastructure
AWS
Participation à un AWSome Day
Prise en charge par AWS Startups
Accompagnement de notre projet
MOREA
AWS Advanced Consulting Partner
Pure player AWS
Partage des mêmes valeurs (best practices, agilité …)
Envie de travailler avec nous
COMMENT AVONS-NOUS FAIT ?
PROCESSUS AGILES
Itératif
Incremental
Adaptatif
BEST PRACTICES
Design for failure
Decouple your components
Implement elasticity
Think parallel
Security
…
DÉROULEMENT DE LA MIGRATION
Définition des besoins et de l’architecture
Préparation de l’application à un environnement Cloud
Migration en amont des services pouvant être migrés indépendamment
Tests fonctionnels
Tests de performance
Migration de la production
PRINCIPAUX ÉLÉMENTS DE LA STACK TECHNIQUE
PHP 5.6 / Symfony2
PostgreSQL
Redis / Memcache
Elastic Search
Mais aussi :
MySQL, ruby …
PRINCIPAUX SERVICES AWS UTILISÉS
EC2
AutoScalling
Elastic Load Balancing
S3
Glacier
Cloudfront
RDS
ElastiCache
VPC
Route 53
KMS
QUELQUES CHIFFRES
3 mois (le temps entre la signature du contrat avec Morea et la disponibilité du site sur AWS)
30 (le nombre d’instances EC2)
2k (le nombre de requêtes par minute sur nos frontaux web)
CE QUE NOUS ALLONS FAIRE
Court terme :
Améliorations de nos outils de développement
Améliorations de nos outils de QA
Moyen terme :
Migration et développement de nos outils de BI
Mise en place de Machine Learning
Utilisation des mobile services (Cognito, Mobile Analytics, SNS)
Long terme :
Multi region
…
REMERCIEMENTS
AWS Startups
Lois Baude
Morea
Adrien Pestel et Frédéric Atlan
Patrick Decat
MERCI