+ All Categories
Home > Technology > Docker enables agile_devops

Docker enables agile_devops

Date post: 19-Aug-2015
Category:
Upload: boyd-hemphill
View: 217 times
Download: 0 times
Share this document with a friend
100
DOCKER ENABLES AGILE DEVOPS Keep C.A.L.M.S and Docker On Boyd Hemphill Evangelist @behemphi
Transcript

DOCKER ENABLES AGILE DEVOPS

Keep C.A.L.M.S and Docker On Boyd Hemphill Evangelist @behemphi

WHO AM I

Technologist

WHO AM I

Technologist

Community Builder

WHO AM I

Technologist

Community Builder

Extroverted Nerd

IS DEVOPS AGILE REBRANDED?Controversial, Consideration, Conster…

WHO ARE YOU

Have heard of Docker?

WHO ARE YOU

Have heard of Docker?

Using Docker in Dev/QA

WHO ARE YOU

Have heard of Docker?

Using Docker in Dev/QA

Production Docker use?

WHAT IS DEVOPS

Culture

WHAT IS DEVOPS

Culture

Automation

WHAT IS DEVOPS

Culture

Automation

Lean

WHAT IS DEVOPS

Culture

Automation

Lean

Measure

WHAT IS DEVOPS

Culture

Automation

Lean

Measure

Share

“DevOps is the way in which a technology organization

embeds itself in a business to the benefit of that

business.”

DEVOPS

What is The Goal of your company?

DEVOPS

What is The Goal of your company?

Make Money

DEVOPS

What is The Goal of your company?

Make Money

Value is what the market will pay, not the amount of work

WHAT IS AGILE

RTFM (where M = manifesto)

WHAT IS AGILE

RTFM (where M = manifesto)

Dogma is not agile

WHAT IS AGILE

RTFM (where M = manifesto)

Dogma is not agile

Agile _is_ agile

“Agile is the philosophy defined by the Agile Manifesto. It

takes form in the ways organizations respond to change.”

FRAMEWORK FOR REASONING

Philosophy

FRAMEWORK FOR REASONING

Philosophy

Model

FRAMEWORK FOR REASONING

Philosophy

Model

Implementation

FRAMEWORK FOR REASONING

Philosophy

Model

Implementation

Tools

“Don’t be a Tools”

ECONOMICS 101

P = R - C

ECONOMICS 101

P = R - C

C = 0 => out of business

ECONOMICS 101

P = R - C

C = 0 => out of business

R has no limit!

ECONOMICS 101

P = R - C

C = 0 => :-(

R has no limit!

Does Docker impact R?

CONTAINERS 101 - VMS VS. OS VIRTUALIZATION

A VM is a full copy of an entire computer running as software on a hypervisor

CONTAINERS 101 - VMS VS. OS VIRTUALIZATION

A VM is a full copy of an entire computer running as software on a hypervisor

A container is a slice of a kernel

CONTAINERS 101 - VMS VS. OS VIRTUALIZATION

A VM is a full copy of an entire computer running as software on a hypervisor

A container is a slice of a kernel

Exec Summary: The lack of extra layers means big efficiencies

CONTAINERS 101 - HISTORY

BSD Jails (2000)

CONTAINERS 101 - HISTORY

BSD Jails (2000)

Solaris Zones (2004)

CONTAINERS 101 - HISTORY

BSD Jails (2000)

Solaris Zones (2004)

OpenVZ (2005)

CONTAINERS 101 - HISTORY

BSD Jails (2000)

Solaris Zones (2004)

OpenVZ (2005)

LXC (2008)

CONTAINERS 101 - HISTORY

BSD Jails (2000)

Solaris Zones (2004)

OpenVZ (2005)

LXC (2008)

SILENCE

CONTAINERS 101 - HISTORY

BSD Jails (2000)

Solaris Zones (2004)

OpenVZ (2005)

LXC (2008)

SILENCE

Docker (2013)

INFORMATION ARCHITECTURE

Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations

INFORMATION ARCHITECTURE

Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations

Look at traditional forward thinking and edgy DevOps thinking

INFORMATION ARCHITECTURE

Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations

Look at traditional forward thinking and edgy DevOps thinking

Apply the Agile Test

INFORMATION ARCHITECTURE

Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations

Look at traditional forward thinking and edgy DevOps thinking

Apply the Agile Test

Highlight DevOps Thinking

DEVELOPER ACCELERATION

Traditional - Better modeling of the production topology

DEVELOPER ACCELERATION

Traditional - Better modeling of the production topology

Forward - Disposable Development environments

Docker: http://goo.gl/TbacWI

Vagrant: http://goo.gl/K5FnCG

DEVELOPER ACCELERATION

Traditional - Better modeling of the production topology

Forward - Disposable Development environments

Docker: http://goo.gl/TbacWI

Vagrant: http://goo.gl/K5FnCG

Bleeding Edge - Produce container images as black boxes

THE AGILE TEST

INDIVIDUALS AND INTERACTIONS OVER

PROCESSES AND TOOLSDevelopers can take risks such as

upgrading PHP knowing they can get back to a working state in seconds

instead of days. Enabling innovation means better velocity.

[DevOps: Velocity = Revenue]

WORKING SOFTWARE OVER COMPREHENSIVE

DOCUMENTATIONThe Dockerfile (code) that describes the run time environment is what ensures

a working environment, not a huge wiki that is chronically out of date.

[DevOps: Infrastructure as Code]

CUSTOMER COLLABORATION OVER

CONTRACT NEGOTIATIONA developer can change the function of a

service in a container and show it to a customer (B2B) asking, "like this?”

Developers can kick out new features that can be A/B tested on a SaaS offering (B2C)

[DevOps - Shorten Feedback Loops]

RESPONDING TO CHANGE OVER

FOLLOWING A PLANBlack box thinking means the role of ops

changes to expressing operational measures (security, performance, scale) in terms of automated testing. Innovation increases

because feedback comes sooner.

[DevOps - Innovation means competitive advantage]

BUILD AND TEST AGILITY

Traditional - Better modeling of the production environment in testing

BUILD AND TEST AGILITY

Traditional - Better modeling of the production environment in testing

Forward Thinking - Better parallelism in software build and test.

BUILD AND TEST AGILITY

Traditional - Better modeling of the production environment in testing

Forward Thinking - Better parallelism in software build and test.

Bleeding Edge - Build systems produce container images as artifacts

THE AGILE TEST

INDIVIDUALS AND INTERACTIONS OVER

PROCESSES AND TOOLSAt the bleeding edge, collaboration across

function becomes about producing tests rather than processes for inhibiting

innovation. Code becomes the documentation and collaboration happens at the engineering

level rather than the process control level.

[DevOps: Test all the things]

WORKING SOFTWARE OVER COMPREHENSIVE

DOCUMENTATIONBetter modeling of the production

environment, especially in a disposable way, deploys are seamless in all

environments

[DevOps: Continuous Delivery]

CUSTOMER COLLABORATION OVER

CONTRACT NEGOTIATIONA/B testing is a form of collaboration,

though generally an individual customer is unaware they are a test

subject.

[DevOps - Short Feedback Loops]

RESPONDING TO CHANGE OVER

FOLLOWING A PLANResponding to change is the definition of both build and quality engineering.

Docker adoption has no effect.

PROJECT MANAGEMENT

Traditional - None

PROJECT MANAGEMENT

Traditional - None

Forward Thinking - Coordination between Dev, QA and Ops is eased

PROJECT MANAGEMENT

Traditional - None

Forward Thinking - Coordination between Dev, QA and Ops is eased

Bleeding Edge - Problems of The Mythical Man Month are eased by micro teams

THE AGILE TEST

INDIVIDUALS AND INTERACTIONS OVER

PROCESSES AND TOOLSOn the bleeding edge change becomes about how to

ensure behavior of software rather than people. Software problems are easier than people problems.

I believe the manifesto needs an update here to value the _quality_ of interaction.

[DevOps - Reduce need for human intervention]

WORKING SOFTWARE OVER COMPREHENSIVE

DOCUMENTATIONAutomated coordination between environments means less deploy

friction for PM’s to manage.

[DevOps: Continuous Delivery]

CUSTOMER COLLABORATION OVER

CONTRACT NEGOTIATIONUse of disposable environments could

lead to PMs doing check-ins with customers that ask, "Like this?"

[DevOps - Short Feedback Loops]

RESPONDING TO CHANGE OVER

FOLLOWING A PLANMicro teams move at their own pace. The response to change is much more rapid.

There is little inter-team communication required so the quality of intra-team

communication can be improved.

[DevOps - Increase efficiency holistically]

OPERATIONS

Traditional - Gnashing of teeth, stress and obstinance

OPERATIONS

Traditional - Gnashing of teeth, stress and obstinance

Forward Thinking - Working with DevOps thought leaders to identify an appropriate sandbox to do real world R&D.

OPERATIONS

Traditional - Gnashing of teeth, stress and obstinance

Forward Thinking - Working with DevOps thought leaders to identify an appropriate sandbox to do real world R&D.

Bleeding Edge - Micro services teams (Netflix), Single tenant systems (Pantheon), Bleeding edge shops (offers.com)

THE AGILE TEST

INDIVIDUALS AND INTERACTIONS OVER

PROCESSES AND TOOLSAt the operational level, Docker is a

technology.

Again, I believe the manifesto needs and update to value the _quality_ of

interaction.

WORKING SOFTWARE OVER COMPREHENSIVE

DOCUMENTATIONContainers are portable, so "works on

my machine" is not a consideration in a Docker shop. When software gets to Ops,

it works.

Testing will need to focus on security and performance.

CUSTOMER COLLABORATION OVER

CONTRACT NEGOTIATIONAt Pantheon, for example, this is a crucial

point. Customers use the fully featured system indefinitely for free. They purchase value

added services like performance, back up and the like.

[DevOps - Value is in what the market will pay for.]

RESPONDING TO CHANGE OVER

FOLLOWING A PLANOps, in terms of DevOps thinking, is about eliminating the need for reaction in the production environment.

An argument can be made that Docker allows for automated response to change (scaling and disasters

for example)

[DevOps - Reduce need for human intervention]

SUMMARY - DEVOPS

Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization

SUMMARY - DEVOPS

Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization

Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days.

SUMMARY - DEVOPS

Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization

Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days.

Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level.

SUMMARY - DEVOPS

Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization

Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days.

Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level.

Measurement - Empiricism is required if we are to meet our Measurement obligation. Blackbox thinking could revolutionize compliance.

SUMMARY - DEVOPS

Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization

Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days.

Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level.

Measurement - Empiricism is required if we are to meet our Measurement obligation. Blackbox thinking could revolutionize compliance.

Sharing - DevOps thought leaders should be working with peers and collaborators in their company to determine if they can derive the proposed business benefits.

SUMMARY - AGILE

Individuals over Process - Agile thought leaders must help Ops find ways to accept developers’ control of dependencies

SUMMARY - AGILE

Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies

Working Software over Docs - Agilistas must help the business identify safe places for change.

SUMMARY - AGILE

Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies

Working Software over Docs - Agilistas must help the business identify safe places for change.

Collaboration over Contract - The Agile approach should be applied to the learning of how to use Docker in production.

SUMMARY - AGILE

Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies

Working Software over Docs - Agilistas must help the business identify safe places for change.

Collaboration over Contract - The Agile approach should be applied to the learning of how to use Docker in production.

Change Response over Planning - New ways to apply the notion of velocity must be developed to measure the success of a Docker adoption.

“Docker enables new agile practices, but is it the right

technology choice for your organization?”

COLOPHON AUDIBLE.COM = BEST DEVOPS

TOOL EVER!

The Lean Startup - Reis (tech)

The Goal - Goldratt (Theory of Constraints)

It’s not Luck - Goldratt (Theory of Constraints)

The Mythical Man Month - Brooks (Team structure)

Great by Choice - Collins (Culture)

The Phoenix Project - Kim (*) (tech)

Continuous Delivery - Humble (*) (hardcore tech)

The Lean Enterprise - Humble (*) (tech)


Recommended