GlueCon 2013 Notes: Cloud Native Applications: What Changed – Adrian Cockcroft, Cloud Architect at Netflix

Keynote: Cloud Native Applications: What Changed – Adrian Cockcroft, Cloud Architect at Netflix (@adrianco and @NetflixOSS) We are engineers and strive for perfection, fixing things when they break Perfection takes too long, so we compromise (time to market vs. quality) Time to market wins big (making a land grab, OODA loop) Code features in days instead of months, hardware in minutes instead of weeks, incident response in seconds instead of hours A new engineering challenge: construct a highly agile and highly avail service from ephemeral and often broken components Continuous integration still breaks things, but more often, in smaller increments, and with a faster ability to land grab Recommended books: Release It! (Nygard) Thinking in Systems (Meadows) Antifragile (Taleb) Drift into Failure (Dekker) Everything is Obvious (Watts) The REST API Design Handbook (Reese) Developers are now the bottleneck, platform manages service delivery, agility and impl speed wins Examples of cloud native apps: everything Google/Amazon, startup web services, Netflix Case study: Netflix Streaming Cloud native application based on an open platform Use AWS to encode movies, other tasks, but video bits stream from CDN They use AWS, even though Amazon Prime is a competitor – other competitors use AWS also, removes Amazon’s use of AWS as a competitive adv, Prime isn’t impacting their business They aren’t using Google Cloud, yet Huge scale with exposed internal services (didn’t need to build) that have a nice API model and forcing a price war, faster start and per-minute billing But, unproven and only recently out of beta, missing some billing options, and no SSD or huge instances, zone maint windows force zone migrations Price war between AWS and Google help customers of AWS with no vendor change Private cloud prices are increasing Public vs. private cloud Facebook is too big to go public, startups are too small to go private, Netflix is in the grey area and currently fits into AWS The size of the public cloud is doubling every year, doubling the size of the cloud that can be run by AWS customers The choice: build a new datacenter or build the business in some way (new series, new countries) Multiple vendors for CDN (CloudFront is good for gigabits -> Akamai/Limelight terabits -> Netflix Openconnect) Opted to ship hardware CDN equip to ISPs – easy and helps out ISPs by localizing conent Multiple vendors for DNS (Route 53 isn’t robust enough) Built OSS project called Denominator Use regional load balancers and DNS providers to overcome outages Netflix has changed from cost reduction focus to process reduction to speed up developers, become more competitive, generate higher margins Best of breed, by the hour chosen by scale Master copies of data are cloud resident Dynamically provisioned micro-services Services are distributed and ephemeral How to get to cloud native? Freedom and responsibility for developers Decentralize and automate ops activities Integrate DevOps into the business organization (Biz DevOps) DevOps requires a reorg, as does being cloud native Netflix OSS: A cloud native OSS platform Netflix OSS Cloud Prize  

Keynote: Cloud Native Applications: What Changed – Adrian Cockcroft, Cloud Architect at Netflix (@adrianco and @NetflixOSS)

  • We are engineers and strive for perfection, fixing things when they break
  • Perfection takes too long, so we compromise (time to market vs. quality)
  • Time to market wins big (making a land grab, OODA loop)
  • Code features in days instead of months, hardware in minutes instead of weeks, incident response in seconds instead of hours
  • A new engineering challenge: construct a highly agile and highly avail service from ephemeral and often broken components
  • Continuous integration still breaks things, but more often, in smaller increments, and with a faster ability to land grab
  • Recommended books:
  • Developers are now the bottleneck, platform manages service delivery, agility and impl speed wins
  • Examples of cloud native apps: everything Google/Amazon, startup web services, Netflix
  • Case study: Netflix Streaming
    • Cloud native application based on an open platform
    • Use AWS to encode movies, other tasks, but video bits stream from CDN
    • They use AWS, even though Amazon Prime is a competitor – other competitors use AWS also, removes Amazon’s use of AWS as a competitive adv, Prime isn’t impacting their business
    • They aren’t using Google Cloud, yet
      • Huge scale with exposed internal services (didn’t need to build) that have a nice API model and forcing a price war, faster start and per-minute billing
      • But, unproven and only recently out of beta, missing some billing options, and no SSD or huge instances, zone maint windows force zone migrations
      • Price war between AWS and Google help customers of AWS with no vendor change
      • Private cloud prices are increasing
    • Public vs. private cloud
      • Facebook is too big to go public, startups are too small to go private, Netflix is in the grey area and currently fits into AWS
    • The size of the public cloud is doubling every year, doubling the size of the cloud that can be run by AWS customers
    • The choice: build a new datacenter or build the business in some way (new series, new countries)
    • Multiple vendors for CDN (CloudFront is good for gigabits -> Akamai/Limelight terabits -> Netflix Openconnect)
      • Opted to ship hardware CDN equip to ISPs – easy and helps out ISPs by localizing conent
    • Multiple vendors for DNS (Route 53 isn’t robust enough)
      • Built OSS project called Denominator
      • Use regional load balancers and DNS providers to overcome outages
    • Netflix has changed from cost reduction focus to process reduction to speed up developers, become more competitive, generate higher margins
    • Best of breed, by the hour chosen by scale
    • Master copies of data are cloud resident
    • Dynamically provisioned micro-services
    • Services are distributed and ephemeral
    • How to get to cloud native?
      • Freedom and responsibility for developers
      • Decentralize and automate ops activities
      • Integrate DevOps into the business organization (Biz DevOps)
      • DevOps requires a reorg, as does being cloud native
    • Netflix OSS: A cloud native OSS platform
  • Netflix OSS Cloud Prize

 

James Higginbotham

Founder of LaunchAny and author of Principles of Web API Design. James helps enterprises build API platforms and get them ready for AI.