Top Banner
Spinnaker Bay Area AWS User Group July 26th, 2016 Shifting the Curve Towards Reliable and Cost Effective Cloud Operations
46

Spinnaker - Bay Area AWS Meetup - 20160726

Apr 16, 2017

Download

Technology

Adam Jordens
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Spinnaker - Bay Area AWS Meetup - 20160726

Spinnaker

Bay Area AWS User GroupJuly 26th, 2016

Shifting the Curve Towards Reliable and Cost Effective Cloud Operations

Page 2: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 3: Spinnaker - Bay Area AWS Meetup - 20160726

How many teams deploy more than once per day?

Page 4: Spinnaker - Bay Area AWS Meetup - 20160726

How many teams deploy more than twice per day?

Page 5: Spinnaker - Bay Area AWS Meetup - 20160726

How many teams deploy more than ten times per day?

Page 6: Spinnaker - Bay Area AWS Meetup - 20160726

How many teams deploy more than fifty times per day?

Page 7: Spinnaker - Bay Area AWS Meetup - 20160726

Deployments (by day)

1000

2000

3000

4000

May June July

Page 8: Spinnaker - Bay Area AWS Meetup - 20160726
Page 9: Spinnaker - Bay Area AWS Meetup - 20160726

This all sounds great ... but HOW?

Page 10: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 11: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools

Page 12: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools

Culture

Page 13: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard

Culture

Page 14: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir

Culture

Page 15: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins

Culture

Page 16: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins* Spinnaker

Culture

Page 17: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins* Spinnaker

Culture* Freedom and Responsibility

Page 18: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins* Spinnaker

Culture* Freedom and Responsibility* Context over Control

Page 19: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins* Spinnaker

Culture* Freedom and Responsibility* Context over Control* Microservices

Page 20: Spinnaker - Bay Area AWS Meetup - 20160726

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

Tools* Asgard* Mimir* Jenkins* Spinnaker

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

Page 21: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 22: Spinnaker - Bay Area AWS Meetup - 20160726

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.)

Page 23: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 24: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 25: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 26: Spinnaker - Bay Area AWS Meetup - 20160726

What does a Netflix engineer really care about?

Page 27: Spinnaker - Bay Area AWS Meetup - 20160726

Application

Page 28: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

Page 29: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Page 30: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Page 31: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Discovery

Page 32: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Discovery

ELB

Page 33: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Discovery

ELB

* 500+

Page 34: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Discovery

ELB

Control Plane

* 500+

Page 35: Spinnaker - Bay Area AWS Meetup - 20160726

Application

MultipleAccounts

MultipleRegions

Scaling Policies

Discovery

ELB

Control Plane

* 500+

Pager Duty ChaosMonkey

AtlasEdda Discovery / Eureka

Inte

grat

ions

Jenkins

Page 36: Spinnaker - Bay Area AWS Meetup - 20160726

Lessons Learned

Page 37: Spinnaker - Bay Area AWS Meetup - 20160726

Lessons Learned

* Adoption does not come for free!

Page 38: Spinnaker - Bay Area AWS Meetup - 20160726

Lessons Learned

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

Page 39: Spinnaker - Bay Area AWS Meetup - 20160726

Lessons Learned

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

Page 40: Spinnaker - Bay Area AWS Meetup - 20160726

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?

Page 41: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 42: Spinnaker - Bay Area AWS Meetup - 20160726

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

Page 43: Spinnaker - Bay Area AWS Meetup - 20160726

Spinnaker in Action (Demo)

Page 44: Spinnaker - Bay Area AWS Meetup - 20160726

Adam Jordens@ajordens

Tomas Lin@tomaslin

Page 45: Spinnaker - Bay Area AWS Meetup - 20160726

We're Hiring.and accepting pull requests!

Page 46: Spinnaker - Bay Area AWS Meetup - 20160726

Further Reading

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