O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

NetflixOSS and ZeroToDocker Talk

1.783 visualizações

Publicada em

Talk on NetflixOSS cloud architecture and ZeroToDocker

Publicada em: Tecnologia

NetflixOSS and ZeroToDocker Talk

  1. 1. Andrew Spyker @aspyker Netflix Cloud Platform and OSS, ZeroToDocker, and containers
  2. 2. Introduction The Netflix Cloud Platform Zero to Docker overview Zero to Docker demo A look forward at operationalizing containers Agenda
  3. 3. About me, road to Netflix ● Working for IBM on Java/Middleware performance ○ Cloud & mobile deemed Enterprise Java benchmarks non-interesting ○ Monolithic DB’s, resiliency and code updates not required ● Acme Air (Benchmark) FTW! ○ Showed web/cloud scale ■ 4B+ per day mobile requests end to end, hundreds of nodes ■ But, wasn’t operable ○ Rewrote using NetflixOSS libraries & services ■ Now operable, with same levels of scale ■ Also enabled Microservices and CI/CD ■ Won Netflix Cloud Prize
  4. 4. About me, road to Netflix ● Now that NetflixOSS was understood ○ Ported libraries & services to IBM middleware and cloud ■ POC’s for Open Stack, Docker, Mesos, Kubernetes ○ Started to onboard and operate IBM SaaS businesses ■ Most interestingly … IBM Watson ● 2014 - “Should I work on transforming horses into cloud unicorns or should I build the next cloud unicorn?” ● Joined Netflix in the cloud platform team ○ Focusing on performance/scalability ○ Also helping with architecture, containers, open source @aspyker ispyker. blogspot. com
  5. 5. Elastic, Web and Hyper Scale Doing this Not doing that
  6. 6. … … … … … …
  7. 7. • • • • • • • •
  8. 8.
  9. 9. Testing is only way to prove HA ● Chaos Monkey ○ Kill instances in production - runs regularly ● Chaos Gorilla ○ Kills availability zones (single datacenter) ○ Also testing for split brain important ● Chaos Kong ○ Kill entire region and shift traffic globally ○ Run frequently but with prior scheduling
  10. 10. … …
  11. 11. ➔ ➔ …… … …
  12. 12. Cool, how do I get started? ● Build the github code ● Guess at the configuration ○ Good luck! ○ Most NetflixOSS services designed for scale, not single server ● Read the github wiki ● Ask questions on the Google groups ● Took me weeks the first time “½ of the problem with Netflix Open Source is the packaging” - James Govenor (Remonk)
  13. 13. ZeroToDocker to the Rescue! github.com/Netflix-Skunkworks/ZeroToDocker Zero To Docker is a project to help accelerate the evaluation of NetflixOSS. The Docker images created are not intended to be used in production as is. The Docker images created are to allow for easier evaluation of the various NetflixOSS technologies, similar to many other published open source Docker images. Netflix continues to run our cloud deployments on virtual machines leveraging the deep IaaS support of Amazon EC2.
  14. 14. Demo time - What am I showing? Mac OS X Virtual Box Ubuntu 14.04 single kernel Container#1 Filesystem+ process Eureka Container ZuulContainer Another Container ... ● Docker running instances ○ Single kernel ○ Contained processes ● A Microservices app and surrounding NetflixOSS services (Eureka/Zuul) ● Asgard management console ● Zookeeper and Exhibitor
  15. 15. What is available? From https://hub.docker.com/u/netflixoss/ ● asgard ● eureka ● edda ● sketchy ● security monkey ● exhibitor ● sample karyon application ● zuul ● atlas ● genie
  16. 16. How can I get these images? ● You could build them yourself from github ● Or you could get them pre-built from Dockerhub ○ Trusted builds ○ Built by Docker from NetflixOSS built binaries
  17. 17. What have we learned from Z2D? ● Easy for people to abuse containers ○ Monolithic VM replacements, sometimes worse ● Build ecosystem is immature ○ Dockerhub is a good start ○ Lacks features of full CI/CD system ● Features great for dev, poor for repeated deployment ○ Layers build up, but can be reduced ○ Localized bridge network ● It’s hard to go back to VM’s after using containers ○ Seconds hard to replace with minutes
  18. 18. Why not production ready? ● Demo was on single node (laptop) ● Docker alone does not get you production deployment, doesn’t handle ○ Multi-host Networking ○ Security groups and roles ○ Log aggregation ○ Storage management ○ Job scheduling and auto scaling/recovery ● Many competing ecosystems growing to cover these