4. De Zebaz à Sparklane
80COLLABORATEURS 50%
DE CROISSANCE
EN MOYENNE PAR AN
30%DU CA INVESTI DANS
L’INNOVATION
110%
DE RENOUVELLEMENT
CLIENT (EN VALEUR)
ACTIONNAIRES
SIPAREX / BPI
4
2009
Création
2010
Crowdsourcing
Saas
2011 2012 2013 2014 2015 2016
Algorithmes
de mises à jour
Data as
a service
R&D
Big Data
Smart
Data
Zebaz devient
Sparklane
App
CRM
+
PARIS
NANTES
+
LONDRES
5. Sparklane, la solution unique qui
réconcilie enjeux marketing et sales
Hyperciblez vos campagnes
marketing grâce à plus de
30 hypercritères
Atteignez plus facilement
vos objectifs de génération
de leads
&
SPARKLANE FOR MARKETING
Maximisez les chances de closer
vos affaires en disposant de leads scorés
et d’une bonne compréhension du
contexte
Identifiez plus rapidement
vos prospects « chauds » grâce
à une veille sur-mesure des
signaux d’affaires
Améliorez votre
connaissance client en
étant informé de leurs
actualités
Détectez plus rapidement
et facilement les nouveaux
besoins chez vos clients
& &
Account ManagementBusiness Development
SPARKLANE FOR SALES
5
8. Organisation / Architecture Globale
8
News
Société/
contacts
Crawl
Web
- Auto
- Manuel
Aggs
Aggs
Aggs
Micro
service
Micro
service
Micro
service
Micro
service
UI
APPS
Crawl
WebCrawl
WebSRCs
News Collector
Data Prod
Database App.
Soft
Support CICD…Repo…
11. Utilisation EC2 Classique
Amazon
EC2
Elastic Load
Balancing
Auto Scaling
Installation Directe
Docker mono-machine (rare chez Sparklane)
=> 30 Instances
Mise en prod green/blue
Certificats SSL
=> 4-5 ELB
Peu utilisé maintenant
Remplacement machine si healthcheck fail
=> 5-6 ASG
12. Utilisation EC2 Classique
Amazon
SNS
Amazon
SES
DNS Privé
TTL 1 min!
Backup / Archives
Fichiers de configuration
Postgres / Mysql
Scalable Vertical
Snapshot / Restore auto
Pourquoi pas MongoDB ???
Amazon
Route 53
Amazon
S3
Amazon
RDS
Mails techniques
Mails client
Pas de campagne d’emailing
Envoi d’alertes techniques
Amazon
CloudWatch
Monitoring « Machine »
Prometheus pour Docker
Logtrail pour logs
4 Zones – 3 VPC
=> 5 Instances
13. Lambda
• Expérimental chez Sparklane
• Peu de cas d’utilisation
• Anecdotique:
• Synchronisation de DNS (ASG + SNS + Lambda)
• Redémarrage de machine en cas d’alerte
• Envoi d’alertes sur Slack
• (Tout ce que AWS ne sait pas encore faire)
• Utilisation massive de Docker chez nous
• Gros potentiel !!!
AWS
Lambda
Vs.
=> env. 50 containers
14. Services utilisés
14
Amazon
EC2
Elastic Load
Balancing
Auto Scaling
Amazon
S3
Amazon
RDS
Amazon
Route 53
Amazon Elasticsearch
Service
Amazon ECS AWS Elastic
Beanstalk
Amazon
EC2
Auto Scaling
On utilise: On n’utilise pas (mais on pourrait):
Amazon
SNS
Amazon
SES
Amazon
SQS
AWS
Lambda
Amazon
CloudWatch
AWS
CloudFormation
17. Infrastructure as Code
- Versionné (Bitbucket, Github)
- Reproductible (vs. Suivre un doc)
- Rapide (vs. Humain)
- Optimisé (si outillé)
- Automatisé (Scaling, mise en prod, déploiement continu…)
- Sécurisant (pas d’erreur humaine)
18. Ansible
- Remplace un script bash
- Playbooks (recettes) partageable
- Elégant (cron, unarchive…)
- Testable en local
- Modulaire
- Apprentissage
- Debugging
- Bash dans les cas simple
19. Packer par Hashicorp
- Création d’images AWS EC2 (et pas que)
- Il démarre une instance
- Provisionne cette instance (avec Ansible, etc.)
- Crée une image (AMI) à partir de cette instance
- Héritage
- Intéressant pour déploiement continu
- Reproductible / Automatisé
20. Terraform par Hashicorp
- Déploiement d’une infrastructure (AWS, …)
- Différentiel (état 1 -> 2)
- Infrastructure as Code
- Reproductible / Automatisé
- Variables, …
21. Auto Scaling Group / Cloud Init
- Type d’instance EC2, AMI, etc.
- Nombre d’instances
- Règles de Scaling
- Remplacement auto de machine
- Image de base (Ubuntu, etc.)
- User Data / Cloud Init pour provisionner
24. Ordonnanceur Docker
24
Ma précieuse machine
Back
Front
• Si la machine tombe?
• Rolling-update?
• Scaling?
• Haute-Dispo?
• Automatisation?
• Déploiement continu?
25. Ordonnanceur Docker
25
Machine 1
Back
Front
• Si la machine tombe? OK
• Rolling-update? OK
• Scaling?
• Haute-Dispo? OK
• Automatisation?
• Déploiement continu?
Machine 2
Back
Front
Load Balancer
26. Ordonnanceur Docker « Idéal »
26
Machine 1
Back
Front
• Si la machine tombe? OK
• Rolling-update? OK
• Scaling? OK
• Haute-Dispo? OK
• Automatisation? OK
• Déploiement continu? OK
• + souplesse, flexibilité,
• + résilienceMachine 2
Back
Front
Machine X
Back
Other
Other
Other
Master Load Balancer
27. Ordonnanceur Docker « Idéal »
• Mise à disposition d’un pool de machines
• Automatisation du déploiement des
container
• Load Balancers, DNS…
• Supervision
• Dashboard
• Etc. etc.
28. Pourquoi Rancher
• Pas de réservation ressources
• Dashboard complet
• Simple pour utilisateurs
• Simple pour Ops (juste besoin de docker)
• Outillage out of the box
42. Build/Déploiement Packer / Terraform
Commit
Build / Test
Push to Maven
Build AMI (Packer +
Ansible)
Terraform Apply Remplacement
Machine Unique
Mise à jour de l’ASG ou
45. Sparklane sur Rancher
• Mutualisation de ressources (bourrage de machines)
• Déploiement facile, parfois continu
• Plusieurs stacks
• Prod
• Stack développeur
• Env de dev
• On expose que ce que l’on veut (VPN pour le reste)
• Infrastructure as code
• Attention aux ressources: monitoring, alertes
46. Sparklane sur AWS
• Cloud
• Scriptable / Automatisable
• Packer / Terraform
• Maîtrise des coûts
• Mise en place rapide
Editor's Notes
Présentation sommaire:
Zebaz -> Sparklane
Ancienne base crowdsourcée
En croissance
Nantes (dev), Paris + Londres (commercial)
Ciblage
News
Usage Marketing / Sales
Data Viz
- Appli Web mais pas que
Sources hétérogéne de donnée
Production de data complexe
Présentation de ces data à travers différents FE et MS