devops, platforms and devops platforms

Post on 09-Apr-2017

4.299 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

devops, platforms, and devops platforms

Andrew Clay Shafer Senior Director of Technology

Andrew Clay Shafer

Andrew Clay Shafer

@littleidea

EMC Federation Rules Everything

Around me

devops, platforms,

and devops platforms

wat

start with definitions?

everyone has a platform

just kidding

we’ll come back to that

start with a story

start with my story

how did that happen?

Previously…

The power of automation!!!

automation at scale

turning the pages

I’m sure some of you have lived this too

maybe you didn’t(maybe you are about to)

this scenario played out over and over

everyone trying to solve similar problems

everyone making similar mistakes

what you automate is just as important as the fact you do

technology can resist automation

day 2 matters

the architecture matters

please quit building installers

please quit building brittle clever solutions

please quit building stuff that will predictably explode

Typical Day at Work

maybe you like being a hero?

maybe your co-worker does?

Operations is the secret sauce configuration

paying interest on technical debt

paying interest on automation debtarchitecture debt

process debt

everyoneover

and over

and over

WHERE IS YOUR DEVOPS NOW?

there has to be a better way

let’s rewind to definitions

What is devops?

I wrote a blog post.March 2010

devops• developers and operations can

and should work together

• system administration evolving to look more like software development

• evolving together as global community sharing solutions

devops - calms• culture

• automation

• lean

• metrics

• sharing

What is a platform?

Everyone has a platform…

might be the one guy who runs scripts

might be a bunch of configuration management

might be a public PaaS

if you can deploy and operate code in any capacity, you have a platform

maybe not be very good one

who cares about the word…

what about success?

‘devops actualized’ represent patterns that emerged in high performing

organizations that deliver highly available applications continuously at scale

devops, platforms, continuous delivery, microservices…

These things are all one…

faster and safer

BLAH BLAH BLAH BLAH

OODA LOOP

SMALL BATCHES

from now on, I’m going to call all that together… ‘Cloud Native’

what would cloud natives do?

wwcnd

Amazon, a bookstore in Seattle, deploys code to production every 11 seconds…

1 second

–Werner Vogels, CTO Amazon

“The traditional model is that you take your software to the wall that separates development and operations, and throw it over

and then forget about it. Not at Amazon. You build it, you run it. This brings developers into contact with the day-to-day

operation of their software. It also brings them into day-to-day contact with the customer. This customer feedback loop is

essential for improving the quality of the service.”

Adrian Cockroft - ex-Netflix

What I learned from my time at Netflix.

Netflix Lessons

• Speed wins in the marketplace

• Remove friction from product development

• High trust, low process, no hand-offs between teams

• Freedom and responsibility culture

• Don’t do your own undifferentiated heavy lifting

• use simple patterns automated by tooling

• self service cloud makes impossible things instant

Principles > Practices >Tools

why > what

Netflix Lessons

• Speed wins in the marketplace

• Remove friction from product development

• High trust, low process, no hand-offs between teams

• Freedom and responsibility culture

• Don’t do your own undifferentiated heavy lifting

• use simple patterns automated by tooling

• self service cloud makes impossible things instant

Netflix built a platform to enable self service deployment

Netflix built a platform to deploy and operate microservices

Netflix built a platform to continuously deliver software

Netflix built a platform that could protect itself from failure

What Netflix did not do is build a platform for general ad-hoc automation…

Constraints are the contract that allows a platform to keep promises.

Everyone has a platform.

What promises can your platform keep?

SLAswe promise

Pivotal Cloud Foundry promises starts at the API

•current_vm_id

•create_stemcell

•delete_stemcell

•create_vm

•delete_vm

•has_vm?

•reboot_vm

•set_vm_metadata

•configure_networks

•create_disk

•delete_disk

•attach_disk

•snapshot_disk

•delete_snapshot

•detach_disk

•get_disks

Cloud Provider Interface

Cloud Native Infrastructure Automation

CPI

need to manage a large distributed system• deployment • configuration changes • updates/upgrades - minimal downtime • health checks and remediation • scale out/scale in • across multiple IaaS

Everything as a Service

Now that we have a tool chain for release engineering, deployment,

and lifecycle management of large-scale distributed services…

What should we do with it?

deploy a self-service self-healing container scheduler, of course!

routers

LinuxLinuxLinux Containers

message bus

cloud controller

loggregators

controller DB

etcd

hm9000

metrics firehose

UAA

login

Cloud Foundry Elastic Runtime

service brokers

object store

stagers

Cloud Native Runtime Platform

Cloud Native Infrastructure Automation

CPI

BOSH release

• role based access to resources

• run code on demand

• coordinate cross service configurations

• route public requests

• read and write persistent data

• add and remove resources

• record internal and external events

• isolate resources and failures

• measure performance/health

• detect and determine failure (plan & provoke failure)

• recover failures

• work tomorrow

What problems does it solve?

12 Factor Ops

your pipeline to continuously deliver microservices is ready

(and win buzzword bingo)

ask me about distributed runtime configuration, service discovery, and circuit breakers

the patterns proven successful building and operating highly

available systems with predictable scaling and failure characteristics

Cloud Native Runtime Platform

Cloud Native Infrastructure Automation

Cloud Native Application Framework

CPI

BOSH release

12 Factor

Cloud Native Contracts

structured contracts determine the promises a

platform can keep

simple patterns automated by tooling

simple patterns automated by tooling

simple patterns automated by tooling

This is the cloud native advantage

This is what helps organizations move

quickly at scale

Conway’s Law Rules Everything Around You

Motivated to change the relationship between people and the computers

I never set out to DO devops.

actually, needed to change the relationship between people and people

no one originally set out to do devops, continuous delivery, microservices, or platforms these were natural consequences

don’t fixate on the words, fixate on the outcomes

if you want to align people in your organization, think about the

interfaces, look at the promises they make and keep with each other.

Use tools and simple patterns to make doing the right thing the easy thing

can you keep promises?

DO YOU KEEP PROMISES

DOES YOUR PLATFORM HELP YOU KEEP PROMISES?

Thank You

@littleidea

We are uncovering better ways of developing software, by doing it and helping others do it

top related