4 Comments

Summary:

On Tuesday, Netflix put source code for its Eureka mid-tier load balancing technology onto Github so that other Amazon Web Services users can tweak it for their own use. This isn’t the first time Netflix has filled voids in the AWS stack.

cloud hole
photo: Flickr/Sam Bald

Pretty soon we’re going to need a score card to track the increasingly complex Amazon-Netflix relationship. As Amazon dives deeper into streamed video on its own, Netflix, which runs its video streaming business on Amazon Web Services, is getting more proficient at plugging gaps in Amazon’s cloud platform.

On Tuesday, Netflix posted code for its Eureka service, which provides mid-tier load balancing that Amazon itself does not offer, to the Github repository so that other AWS customers can tweak it for their own needs.

According to a post to the Netflix tech blog, Eureka is a REST-based service that makes it easier to balance loads and ease failover in mid-tier servers.  Eureka, once known as Netflix discovery services, consists of a services registry and a Java client that makes interacting with those services easier.  The client provides base-level round-robin load balancing, but the broader service offers a more sophisticated load balancer that weighs resource usage, error conditions, and other factors for improved resiliency.

According to the blog:

In AWS cloud, because of its inherent nature, servers come and go. Unlike the traditional load balancers which work with servers with well known IP addresses and host names, in AWS load balancing requires much more sophistication in registering and de-registering servers with the load balancer on the fly. Since AWS does not yet provide a middle tier load balancer, Eureka fills a big gap in that area.


This is not the first time Netflix has stepped in to fill a void in Amazon’s platform and open-sourced the result.  In June, the company put the source code to the Asgard technology it uses to deploy code changes fast (and to retract those changes just as fast if needed) to Github. Netflix  said it is also working to integrate Asgard with Eureka.

The whole Netflix-Amazon relationship is getting complicated. Amazon Web Services proudly points to Netflix as one of its biggest and best customers but Amazon the retailer is encroaching on Netflix’ turf with its own streaming video business. And Netflix was badly dinged by an AWS outage earlier this year. Eureka could mitigate such disruptions in the future, but you have to wonder what Netflix will do if and when a massively scalable cloud platform from another provider becomes available.

In other words, stay tuned.

 

  1. “Runs its video streaming business on Amazon Web Services” doesn’t tell the story.

    Almost all of Netflix’s compute functions are run on AWS. Delivery of streaming bits happens through three CDNs: Akamai, Limelight and Level3. (Netflix is in the process of phasing out these CDNs and transitioning to its own CDN.)

    In other words, there’s no special connection between Netflix’s streaming business and AWS. All of Netflix runs on AWS. Furthermore, streaming delivery does not happen on AWS.

    Share
    1. Thanks for clarifying as this statement can be perceived incorrectly by readers. Time to fact check Barb.

      Share
    2. @craig story tweaked/updated to clear up my bad wording. thanks.

      Share
  2. Perhaps the most interesting project from Netflix is the Chaos Monkey which randomly kills services, simulating failure so you can ensure you’re prepared and have engineered around it correctly. http://techblog.netflix.com/2012/07/chaos-monkey-released-into-wild.html

    Share

Comments have been disabled for this post