SlideShare une entreprise Scribd logo
1  sur  13
@nhelleringer#HAProxy #DevoxxFR
HAProxy lvl2 : des bases au scaling
@nhelleringer#HAProxy #DevoxxFR
HAProxy lvl2 : des bases au scaling
@nhelleringer
Criteo
Site Reliability Engineering
Manager
@nhelleringer#HAProxy #DevoxxFR
Répartition de charge
Gatling
Apache 2
@nhelleringer#HAProxy #DevoxxFR
HAProxy
• Level 7 load balancing
• 1.5 (server side keepalived / HTTPS offloading)
•9.950 Gbps Jumbo frames
•9.2 Gbps standard frames
•100 k sessions HTTP / sec
@YourTwitterHandle@YourTwitterHandle@nhelleringer#HAProxy #DevoxxFR
Demo
@nhelleringer#HAProxy #DevoxxFR
Haute disponibilité
Gatling
Apache 2
HAProxy
HAProxy
@nhelleringer#HAProxy #DevoxxFR
KeepAlived
•Implémentation libre VRRP (HRSP)
•ARP ‘poisoning’ / gratuitous ARP
•Synchronisation des ‘routeurs’ par multicast
•Configurateur module kernel IPVS (Level 4)
•Les serveurs doivent être dans le même domaine de
broadcast
@YourTwitterHandle@YourTwitterHandle@nhelleringer#HAProxy #DevoxxFR
Demo
@nhelleringer#HAProxy #DevoxxFR
HAProxy @ Criteo
• Benché au réel à 100k QPS (HP DL360 Gen8) en HTTP
• XML/HTTP, RabbitMQ
• 4 paires par DC, plus de 200 machines clientes
• Traffic jusqu’à 2 Gbps (bonding) par noeud
@nhelleringer#HAProxy #DevoxxFR
Limitations
• L3 top of rack vs KeepAlived
• Payload : ok 10 G mais ....
• Nombre de requêtes par secondes / Limites CPU
@nhelleringer#HAProxy #DevoxxFR
Scale Out
• Client side load balancing
• DNS round robin sur paires de HAProxy
• AnyCast : bah oui tant qu’il y a du BGP ...
@YourTwitterHandle@YourTwitterHandle@nhelleringer#HAProxy #DevoxxFR
Summary
@YourTwitterHandle@YourTwitterHandle@nhelleringer#HAProxy #DevoxxFR
Q & A

Contenu connexe

Tendances

Ri import de dump dokelios - 24.01.2013
Ri   import de dump dokelios - 24.01.2013Ri   import de dump dokelios - 24.01.2013
Ri import de dump dokelios - 24.01.2013
Nikolaus_Meury
 

Tendances (20)

Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
Paris Container Day 2016 : Les nouveaux défis du déploiement (Xebia Labs)
 
kubernetes, pourquoi et comment
kubernetes, pourquoi et commentkubernetes, pourquoi et comment
kubernetes, pourquoi et comment
 
Paris Container Day 2016 : Choisissez votre style avec docker & Amazon Web Se...
Paris Container Day 2016 : Choisissez votre style avec docker & Amazon Web Se...Paris Container Day 2016 : Choisissez votre style avec docker & Amazon Web Se...
Paris Container Day 2016 : Choisissez votre style avec docker & Amazon Web Se...
 
Comment gérer des applications nécessitant la persistance des données avec Ku...
Comment gérer des applications nécessitant la persistance des données avec Ku...Comment gérer des applications nécessitant la persistance des données avec Ku...
Comment gérer des applications nécessitant la persistance des données avec Ku...
 
Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais ...
Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais ...Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais ...
Migrer 3 millions de sites sans maitriser leur code source ? Impossible mais ...
 
La montée en charge
La montée en chargeLa montée en charge
La montée en charge
 
XebiCon'17 : Rex Akka dans une architecture microservice - Joachim Rousseau
XebiCon'17 : Rex Akka dans une architecture microservice - Joachim RousseauXebiCon'17 : Rex Akka dans une architecture microservice - Joachim Rousseau
XebiCon'17 : Rex Akka dans une architecture microservice - Joachim Rousseau
 
Vert.x 3
Vert.x 3Vert.x 3
Vert.x 3
 
REX Openshift à la Poste
REX Openshift à la PosteREX Openshift à la Poste
REX Openshift à la Poste
 
Introduction à WordPress sous Nginx
Introduction à WordPress sous NginxIntroduction à WordPress sous Nginx
Introduction à WordPress sous Nginx
 
Ansible et Jenkins
Ansible et JenkinsAnsible et Jenkins
Ansible et Jenkins
 
Kubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8sKubernetes Meetup Paris #5 - Metriques applicatives k8s
Kubernetes Meetup Paris #5 - Metriques applicatives k8s
 
Kubernetes University, Cap sur l’orchestration Docker
Kubernetes University, Cap sur l’orchestration DockerKubernetes University, Cap sur l’orchestration Docker
Kubernetes University, Cap sur l’orchestration Docker
 
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
 
Pm2 pres
Pm2 presPm2 pres
Pm2 pres
 
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
 
Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3
 
Ri import de dump dokelios - 24.01.2013
Ri   import de dump dokelios - 24.01.2013Ri   import de dump dokelios - 24.01.2013
Ri import de dump dokelios - 24.01.2013
 
Gitlab CI : Integration et Déploiement Continue
Gitlab CI : Integration et Déploiement ContinueGitlab CI : Integration et Déploiement Continue
Gitlab CI : Integration et Déploiement Continue
 
Prometheus et kubernetes | AIOS SH
Prometheus et kubernetes | AIOS SHPrometheus et kubernetes | AIOS SH
Prometheus et kubernetes | AIOS SH
 

Similaire à Devoxx fr 2015 HAProxy

JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
qsdqsd4
 
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
EXCELIANCE
 

Similaire à Devoxx fr 2015 HAProxy (20)

XebiCon'16 : Choisissez votre style avec Docker & Amazon Web Services Par Al...
XebiCon'16 : Choisissez votre style avec Docker & Amazon Web Services  Par Al...XebiCon'16 : Choisissez votre style avec Docker & Amazon Web Services  Par Al...
XebiCon'16 : Choisissez votre style avec Docker & Amazon Web Services Par Al...
 
Kubernetes University - Cap sur l'orchestration
Kubernetes University - Cap sur l'orchestrationKubernetes University - Cap sur l'orchestration
Kubernetes University - Cap sur l'orchestration
 
Devoxx France : Kubernetes University, Cap sur l’orchestration Docker !
Devoxx France : Kubernetes University, Cap sur l’orchestration Docker !Devoxx France : Kubernetes University, Cap sur l’orchestration Docker !
Devoxx France : Kubernetes University, Cap sur l’orchestration Docker !
 
Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017
 
OVHcloud Tech Talks Fr S01E05 – L’opérateur Harbor, une nécessité pour certai...
OVHcloud Tech Talks Fr S01E05 – L’opérateur Harbor, une nécessité pour certai...OVHcloud Tech Talks Fr S01E05 – L’opérateur Harbor, une nécessité pour certai...
OVHcloud Tech Talks Fr S01E05 – L’opérateur Harbor, une nécessité pour certai...
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
 
Apache Open SSL
Apache Open SSLApache Open SSL
Apache Open SSL
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
 
AFUP Aix/Marseille - 16 mai 2017 - Open API
AFUP Aix/Marseille - 16 mai 2017 - Open APIAFUP Aix/Marseille - 16 mai 2017 - Open API
AFUP Aix/Marseille - 16 mai 2017 - Open API
 
Migration de Tomcat vers Vert.x
Migration de Tomcat vers Vert.xMigration de Tomcat vers Vert.x
Migration de Tomcat vers Vert.x
 
Glowroot, le petit APM qui vous veut du bien
Glowroot, le petit APM qui vous veut du bienGlowroot, le petit APM qui vous veut du bien
Glowroot, le petit APM qui vous veut du bien
 
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
ALOHA Load Balncer - Appliance Virtuelles 'cloud ready'
 
Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
Support : introduction à docker
Support : introduction à dockerSupport : introduction à docker
Support : introduction à docker
 
Kuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potentialKuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potential
 
Nginx
NginxNginx
Nginx
 

Devoxx fr 2015 HAProxy