netflix oss season 1 episode 3

54
NetflixOSS Season 1, Episode 3

Upload: ruslan-meshenberg

Post on 06-May-2015

98.938 views

Category:

Technology


5 download

DESCRIPTION

lightning talks, overview and cloud prize update

TRANSCRIPT

Page 1: Netflix oss season 1 episode 3

NetflixOSSSeason 1, Episode 3

Page 2: Netflix oss season 1 episode 3

Lightning talks

Page 3: Netflix oss season 1 episode 3

Pytheas

● Web based resource and rich UI framework

● Dashboards

● Web console

● Exploring / visualizing structured + unstructured data

Page 4: Netflix oss season 1 episode 3

Pytheas - based on OSS frameworks

● Guice● Jersey● FreeMarker● JQuery● DataTables● D3● JQuery-UI● Bootstrap

Page 5: Netflix oss season 1 episode 3
Page 6: Netflix oss season 1 episode 3

Pytheas - Modular Design

● Single jar per module● Bundles

○ Guice Module○ Jersey Resources○ FreeMarker Templates○ CSS + Img + JS code○ Properties configuration○ Pytheas Module class

● Minimal bootstrap code to wire modules together into a dashboard

Page 7: Netflix oss season 1 episode 3

Pytheas

What's next - Angular JS - css/js preprocessing - Scaffold generation

https://github.com/Netflix/pytheas

Page 8: Netflix oss season 1 episode 3

Conformity Monkey

Help keep your instancesand clusters followingbest practices

Page 9: Netflix oss season 1 episode 3

Conformity Monkey

● Mark and Notify approach● Customize rules● Customize rule set● Add new rules● Customize execution time and frequency● Can migrate to other cloud platforms

Page 10: Netflix oss season 1 episode 3

Sample Conformity Rules

● Security Groups● Instance Configuration In Eureka● ELB and ASG mismatch● Cluster Naming Conventions

Page 11: Netflix oss season 1 episode 3

Conformity Monkey

https://github.com/ Netflix/SimianArmy

Page 12: Netflix oss season 1 episode 3

Zuul

● Netflix's edge tier○ In place of Nginx, Apache Http or Traffic Server

● Dynamic filters that act on HTTP requests● Filters written in Groovy / Dynamically

updated○ Any JVM language Supported

Page 13: Netflix oss season 1 episode 3

Zuul within Netflix

ELB

Zuul

API Service

Netflix Services

ELB

Zuul

Streaming Service

ELB

Zuul

Website Service

Page 14: Netflix oss season 1 episode 3

Request Lifecycle

HTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 15: Netflix oss season 1 episode 3

How we Use Zuul

● Authentication● Insights● Stress Testing● Canary Testing● Dynamic Routing● Load Shedding● Security● Static Response handling● Isthmus

Page 16: Netflix oss season 1 episode 3

Zuul Components

Page 18: Netflix oss season 1 episode 3

ICE: AWS Usage Tool

● Background

● Design

● Usage

● Next Steps

Page 19: Netflix oss season 1 episode 3

Background

● There is increased resource usage in the cloud

● That is very decentralized

● But lacks broad and deep insights about resource usage

Page 20: Netflix oss season 1 episode 3

ICE Design Approach

● Cloud resource usage has many dimensions: account,

region, zone, product, usage type, user-defined tags

● ICE writer tags each line item in billing file with different

tags

● ICE UI provides a way for users to query cloud resource

usage freely in arbitrary dimensions

Page 21: Netflix oss season 1 episode 3
Page 22: Netflix oss season 1 episode 3

ICE Usage

● ICE provides a birds-eye view of large and complex

cloud landscape from a usage and cost perspective.

● ICE UI is easy and intended to be used by:

● Managers

● Reservation Planners

● Engineers

● ICE OSS at https://github.com/Netflix/ice

Page 23: Netflix oss season 1 episode 3

ICE Next Steps

● Accessing billing files though IAM role and allow

multiple payer accounts

● Create Wiki page and Google Group

● Configurable cost alerts

Page 24: Netflix oss season 1 episode 3

Genie - Motivation

Page 25: Netflix oss season 1 episode 3

Genie - Configuration Service

● Abstraction of physical details of back-end Hadoop clusters in the cloud○ Status: up, out of service, or

terminated○ Cluster naming/tagging for job

submissions○ Site-specific Hadoop, Hive and

Pig configurations

Page 26: Netflix oss season 1 episode 3

Genie - Job Execution Service

● Simple API to run Hadoop, Hive and Pig jobs○ Auto-magic submission of jobs to

the right Hadoop cluster○ Abstracting away cluster details

from clients

Page 27: Netflix oss season 1 episode 3

Genie - Use Cases Enabled at Netflix

● Running 100% of all SLA jobs, and a high percentage of ad-hoc jobs

● Running nightly short-lived “bonus” clusters to augment ETL processing

● Re-routing traffic between clusters● “Red/black” pushes for clusters● Attaching stand-alone gateways to clusters

Page 28: Netflix oss season 1 episode 3

http://techblog.netflix.com/2013/06/genie-is-out-of-bottle.html

https://github.com/Netflix/genie

Page 29: Netflix oss season 1 episode 3

Lipstick

Visualization of Pig workflows at a logical level.● quickly spot common errors / inefficiencies● visually monitor execution● empowers users to support themselves● facilitates communication between

infrastructure team and users

Page 30: Netflix oss season 1 episode 3

Lipstick

Page 31: Netflix oss season 1 episode 3

Lipstick in our Architecture

Page 32: Netflix oss season 1 episode 3

Lipstick UI

Page 33: Netflix oss season 1 episode 3

Lipstick UI - Pig Workflow Closeup

Page 34: Netflix oss season 1 episode 3

https://github.com/Netflix/Lipstick

http://techblog.netflix.com/2013/06/introducing-lipstick-on-apache-pig.html

Page 35: Netflix oss season 1 episode 3

Overview and Roadmap

Page 36: Netflix oss season 1 episode 3

34 Projects and counting...

Page 37: Netflix oss season 1 episode 3

Excellent mindshare and vendor adoptionToo hard to get started for individual users

State of NetflixOSS

Page 38: Netflix oss season 1 episode 3

Where to Start?

● Recipe app(s)● AMI's - Asgard available, more coming!● Hangouts● Workshop(s)● One button install.... not there yet.

Page 39: Netflix oss season 1 episode 3

Build, Deploy, Tools

Libraries Libraries, Cont-d.

Services ZK / C* Big Data Recipe Apps

Aminator Archaius Karyon Eureka Curator Genie Recipes-RSS

Asgard Blitz4J Netflix Graph

Edda Exhibitor Lipstick Flux Capacitor

GCViz Denominator Ribbon EvCache Astyanax ACME Air

Ice EvCache RxJava Turbine Priam

Simian Army

Feign Servo Zuul CassJMeter

Pytheas Governator Hystrix

Categories

Page 40: Netflix oss season 1 episode 3

3rd Party demos

Page 41: Netflix oss season 1 episode 3

Acme Air OSS Sample and Benchmark

● Fictitious airline sample application● Mobile app (iOS/Android) and desktop browser versions

● NodeJS and Java versions with multiple NoSQL data tier impls● Benchmarking framework that allows “Web Scale” runs● Previously run at 4.3 Billion customer facing REST calls per

second (50,000 req/sec) using IBM middleware and cloud

● Re-implemented using Netflix OSS● Microservices architecture● Eureka, Hystrix, Karyon, Ribbon● Asgard

● Run at (peak) ~ 13,000 req/sec – 1.1 Billion per day● Replicate this yourself in ~ 4 hours with the OSS

Learn more at http://bit.ly/acmeairblog and from @aspyker

Page 42: Netflix oss season 1 episode 3

Eucalyptus, AWS, and NetflixOSS

More details: https://github.com/eucalyptus/eucalyptus/wiki/Netflix-OSS-Tools

Asgard manages autoscaling across both clouds.Eucalyptus/AWS compatibility makes it possible!

SomeNetflixOSS

servicescan run in

either cloud

Simian Army

Edda

Aminator

Priam

Servo30+ NetflixOSS services

...and more on the way!

Page 43: Netflix oss season 1 episode 3

Confidential and Proprietary

● Multi Data Center Support● Single Dashboard to manage OpenStack & AWS ● Access multiple Tenants in Single Login● One-Stop-Shop to manage

● Compute, Storage, Network● Security● Cloud Templates

● Asgard Framework and Architecture● Why Asgard?● Janitor Monkey for OpenStack● Future Plans● Demo

HIGHLIGHTS

Page 44: Netflix oss season 1 episode 3

Riot Games rCloud●Aminator +chef-solo provisioner●Asgard●Edda +Security Audits●Simian Army●Ice●Eureka●Archaius + Configuration Service●Ribbon, Karyon, Hystrix●And more

Page 45: Netflix oss season 1 episode 3

Progress and Updates

NetflixOSS Cloud Prize

Page 46: Netflix oss season 1 episode 3

State of the Cloud Prize

Forks of github.com/netflix/cloud-prize ~700 Mailchimp signup form complete ~120Public active submissions ~20

Two more months for procrastination!Stickers in return for Mailchimp signup...

Page 47: Netflix oss season 1 episode 3

Bootcamp/WorkshopsAMIs, Charms, Cookbooks, Ansible Models

More incentives and joint prizes

Make it easier to get started

Page 48: Netflix oss season 1 episode 3

Juju Charm Championshiphttps://juju.ubuntu.com/charm-championship/Helping solve ease-of-deploy for NetflixOSS

Mark Shuttleworth joins Netflix Cloud Prize judgesAdrian Cockcroft joins Charm Championship judges

Ubuntu Juju

Page 49: Netflix oss season 1 episode 3

Citrix are offering $10K prize for best integration with NetflixOSS

Apache Cloudstack

Page 50: Netflix oss season 1 episode 3

First prototype!

Cloud Prize Trophy

Page 51: Netflix oss season 1 episode 3

Inspiration

Page 52: Netflix oss season 1 episode 3

Cloudified

Page 53: Netflix oss season 1 episode 3

Cloud Monkey

It Bleeps!

Designed by bleeplabs.com

Page 54: Netflix oss season 1 episode 3

Q+A and Demos

Food and Drink in Building B