Netflix is open sourcing yet another tool to augment the Amazon Web Services infrastructure it relies on to deliver streaming media to myriad devices.
The latest is called Zuul, a nod to the gatekeeper in Ghostbusters and, like its namesake, Netflix Zuul acts as a gatekeeper between the Netflix API (and other Netflix services) and AWS Elastic Load Balancer that routes video to users. (see chart.)
Netflix API lead Daniel Jacobson explains it better than I could: “Zuul is basically a front application for the Netflix streaming application… it does much of the system-level work such as dynamic routing, load shedding, insights, health analysis etc so the other backend applications in the system can maintain focus on their part of the streaming application,” he said via email.
Zuul is applicable for any application that handles external network calls — it could “front” an international web site that needs to route traffic to different data centers or cloud regions based on geo information, Jacobson added. For Netflix, Zuul is used to handle HTTP transactions around metadata, not the streaming video itself. In that way, it just deals with typical web traffic for web sites and apps, he said.
Netflix outlines Zuul further on its blog.
Zuull gives us a lot of insight into our systems, in part by making use of other Netflix OSS components. Hystrix is used to wrap calls to our origins, which allows us to shed and prioritize traffic when issues occur. Ribbon is our client for all outbound requests from Zuul, which provides detailed information into network performance and errors, as well as handles software load balancing for even load distribution. Turbine aggregates finegrained metrics in realtime so that we can quickly observe and react to problems. Archaius handles configuration and gives the ability to dynamically change properties.
When it comes to delivering video — or potentially other services to customers — there are a lot of moving parts. As the Zuul post attests, new AWS regions get deployed, new catalogs are added for new countries, new services come online. To handle those changes, the edge service helps enable faster and more flexible deployments.
Netlix is championing the use of its open source tools and services big time. Last February it hosted an open house at its Los Gatos, Calif. headquarters for open source developers to talk up tools to come including many more monkeys.