Modern HTTP Routing

Wednesday, October 31, 2018 - 2:00 pm2:30 pm

Sandor Szücs, Zalando SE

Abstract: 

Modern HTTP routing should support traffic switching, provide fine granular visibility, add resiliency patterns, be extensible, and should be easily configured by development teams. At Zalando SE, we run more than 80 Kubernetes clusters and developed open source tools to support the mentioned features. One core component, skipper, we internally call the swiss army knife of HTTP. It provides filters to modify HTTP data, headers, and body. It allows us to specify route matching with predicates. Using these principles we can support deployment patterns like blue-green, shadow traffic, or A/B tests.

Shadow traffic is one less known feature that enables users to test new architecture with production traffic, without disrupting production.

Modern l7 software load balancers have to be simple to scale, provide visibility in depth, and enhance resiliency. Retries, circuit breaker, or rate limits are interesting cases that can support your applications being more resilient to failure. How to do rate limits in a growing and shrinking cluster, that means changing number of replicas in the backend and also load balancer instances?

The talk will show a modern HTTP router and it's features and show some practical use cases from our production setup that can be reused by the audience.

Sandor Szücs, Zalando SE

Sandor Szücs builds infrastructure software with Kubernetes, that enable feature teams to be productive. He strongly believes in devops and open source. He likes to code Go and focus on the Ingress part of Kubernetes. Sandor was formerly a System Engineer managing production systems in baremetal datacenters with LXC, Puppet, hardware load balancers and storage systems.

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

BibTeX
@conference {221880,
author = {Sandor Sz{\"u}cs},
title = {Modern {HTTP} Routing},
year = {2018},
address = {Nashville, TN},
publisher = {USENIX Association},
month = oct
}

Presentation Video 

Presentation Audio