spinnaker - bay area aws meetup - 20160726

Download Spinnaker - Bay Area AWS Meetup - 20160726

Post on 16-Apr-2017

166 views

Category:

Technology

1 download

Embed Size (px)

TRANSCRIPT

  • Spinnaker

    Bay Area AWS User GroupJuly 26th, 2016

    Shifting the Curve Towards Reliable and Cost Effective Cloud Operations

  • Assumed Knowledge

    * Cloud Deployment (doesn't have to be AWS)* Continuous Delivery and the value of repeatable deployment pipelines* Immutable Infrastructure* Red/Black (or Blue/Green) Deployments

  • How many teams deploy more than once per day?

  • How many teams deploy more than twice per day?

  • How many teams deploy more than ten times per day?

  • How many teams deploy more than fifty times per day?

  • Deployments (by day)

    1000

    2000

    3000

    4000

    May June July

  • This all sounds great ... but HOW?

  • https://flic.kr/p/56suBd

  • https://flic.kr/p/56suBd

    Tools

  • https://flic.kr/p/56suBd

    Tools

    Culture

  • https://flic.kr/p/56suBd

    Tools* Asgard

    Culture

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir

    Culture

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins

    Culture

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility* Context over Control

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility* Context over Control* Microservices

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility* Context over Control* Microservices* Run what you build

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility* Context over Control* Microservices* Run what you build* No dedicated DevOps

  • https://flic.kr/p/56suBd

    Tools* Asgard* Mimir* Jenkins* Spinnaker

    Culture* Freedom and Responsibility* Context over Control* Microservices* Run what you build* No dedicated DevOps

    Contributors* 8 engineers from Netflix (Delivery Engineering)* 6 engineers from Google* 3 engineers from Microsoft* 1 engineer from Pivotal+ numerous open-source committers (Target, Veritas, Full Contact, Stitch Fix etc.)

  • Running @ Netflix* Layer custom components and configuration over open source JARs (Bintray)* No forking* Dedicated cluster for every Spinnaker service* Dedicated datastore for every Spinnaker service* Authentication via SAML or x509

    https://flic.kr/p/cpijTm

    https://flic.kr/p/cpijTm

  • Running @ Netflix* Layer custom components and configuration over open source JARs (Bintray)* No forking* Dedicated cluster for every Spinnaker service* Dedicated datastore for every Spinnaker service* Authentication via SAML or x509

    Supporting Systems* Atlas* Eureka (aka Discovery)* Automated Canary Analysis (aka ACA)* Chronos (event tracking)* Lemur (x509 Certificate Manager)

    https://flic.kr/p/cpijTm

    https://flic.kr/p/cpijTm

  • Running @ Netflix* Layer custom components and configuration over open source JARs (Bintray)* No forking* Dedicated cluster for every Spinnaker service* Dedicated datastore for every Spinnaker service* Authentication via SAML or x509

    Supporting Systems* Atlas* Eureka (aka Discovery)* Automated Canary Analysis (aka ACA)* Chronos (event tracking)* Lemur (x509 Certificate Manager)

    Extensions* Additional Cloud Provider (Titus)* Internal Spot Market (Reservation Reports)* Canaries* Fast/Dynamic Properties* Application-specific IAM roles* Service Migration (EC2 Classic -> VPC)

    https://flic.kr/p/cpijTm

    https://flic.kr/p/cpijTm

  • What does a Netflix engineer really care about?

  • Application

  • Application

    MultipleAccounts

  • Application

    MultipleAccounts

    MultipleRegions

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

    Discovery

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

    Discovery

    ELB

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

    Discovery

    ELB

    * 500+

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

    Discovery

    ELB

    Control Plane

    * 500+

  • Application

    MultipleAccounts

    MultipleRegions

    Scaling Policies

    Discovery

    ELB

    Control Plane

    * 500+

    Pager Duty ChaosMonkey

    AtlasEdda Discovery / Eureka

    Inte

    grat

    ions

    Jenkins

  • Lessons Learned

  • Lessons Learned

    * Adoption does not come for free!

  • Lessons Learned

    * Adoption does not come for free!* Spinnaker Office Hours

  • Lessons Learned

    * Adoption does not come for free!* Spinnaker Office Hours* Operational Metrics and Dashboards

  • Lessons Learned

    * Adoption does not come for free!* Spinnaker Office Hours* Operational Metrics and Dashboards* Ask yourself ... What could Spinnaker have done to prevent this

    outage?

  • Lessons Learned

    * Adoption does not come for free!* Spinnaker Office Hours* Operational Metrics and Dashboards* Ask yourself ... What could Spinnaker have done to prevent this

    outage?* Deploy Spinnaker with Spinnaker

  • Lessons Learned

    * Adoption does not come for free!* Spinnaker Office Hours* Operational Metrics and Dashboards* Ask yourself ... What could Spinnaker have done to prevent this

    outage?* Deploy Spinnaker with Spinnaker* Teams with embedded QA have much tighter integrations with

    Spinnaker

  • Spinnaker in Action (Demo)

  • Adam Jordens@ajordens

    Tomas Lin@tomaslin

  • We're Hiring.and accepting pull requests!

  • Further Reading

    http://spinnaker.iohttp://join.spinnaker.io (Slack)http://techblog.netflix.comhttps://continuousdelivery.com/implementing/patterns

    http://spinnaker.iohttp://join.spinnaker.iohttp://techblog.netflix.comhttps://continuousdelivery.com/implementing/patterns