Build a reverse proxy for modern immutable
infrastructure
Quentin ADAM - @waxzce
Who am I ?Quentin ADAM from the Clever Cloud
@waxzce on twitter – github- soundcloud – instagram ….
My day to day work : , the IT automation company
Keep your apps online. made with node.js,scala, java, ruby, php, python, go…
Cloud & on premise
And learn a lot of things about your code, apps, and good/bad design…
Give back to the community
NEVER GONNA LET YOU DOWN
clever-cloud.com
Automate infrastructure
Immutable infrastructureFR : https://www.youtube.com/watch?v=WrZCbgQsPVU
EN : https://www.infoq.com/presentations/server-cloud
Ephemeral instances
Proxy needs
Canary
• Using a sticky session mechanism
Whatever routing
Blue green
Change configuration while running
There is a problem
Enter sozu
https://www.sozu.io/
Rust
Process architecture
Sozu http
Proxy controller
(optionnal sozutcp)
WAN
Backends
Zero copy
Predictable performances
Change configuration at runtime
Hot reloading VS hot conf change
Zoom in
haproxy
Let’s go to the code & demo
https://github.com/waxzce/code-sample-talk-sozu
haproxy
Let’s go to the code & demo
https://github.com/waxzce/code-sample-talk-sozu
Traefik
https://github.com/waxzce/code-sample-talk-sozu
Traefik
https://github.com/waxzce/code-sample-talk-sozu
Envoy…
No packet loss
Using sozuSeveral managers :
- CLI sozu controller
- From file
- Tube cheese: get the configuration from traefic
https://www.clever-cloud.com/blog/engineering/2017/07/24/hot-reloading-configuration-why-and-how/
Thinking about http/2
Next steps – more talksTechniques modernes pour l'écriture de serveurs performants (Geoffroy Couprie) 🇫🇷
https://www.youtube.com/watch?v=Cl_fqWZTYUA
Geoffroy Couprie - Sōzu, a hot reconfigurable reverse HTTP proxy 🇬🇧
https://www.youtube.com/watch?v=y4NdVW9sHtU
Play with ithttps://www.sozu.io/
https://github.com/sozu-proxy
Thank you
find me on twitter
@waxzce
Gift coupon for clever-cloud.com:
sgbbl2017