Your Goat Anti-Fragiled My Snowflake! Demystifying DevOps Jargon (30 minute version)

Post on 12-Apr-2017

79 views 0 download

Transcript of Your Goat Anti-Fragiled My Snowflake! Demystifying DevOps Jargon (30 minute version)

/

Your Goat Anti-Fragiled My Snowflake!

Clinton WolfeDevOps Practice Lead

Demystifying DevOps Jargon

id clintoncwolfe

• DevOps Practice Lead at omniti.com

• We do web & services ops & development

• Chef architect, Ansible engineer, “devops consultant”

• author of various bits of tooling & glue

• we're hiring!

A Quick Disclaimer

contribute your experiences at

http://devopsdictionary.com

Our perceptions of meaning may differ

via: rivervalleyadventure

A DevOpsBestiary!

A DevOpsBestiary!

Goat

A DevOpsBestiary!

Goat

Chaos Monkey

A DevOpsBestiary!

Goat

Chaos Monkey

Yak

Shaving

A DevOpsBestiary!

Goat

Cattle

Chaos Monkey

Yak

Shaving

A DevOpsBestiary!

Goat

Cattle

Unicorn

Chaos Monkey

Yak

Shaving

A DevOpsBestiary!

Goat

Cattle

Unicorn

Chaos Monkey

Yak

Shaving

Canaries

A DevOpsBestiary!

Goat

Cattle

Unicorn ELK

Chaos Monkey

Yak

Shaving

Canaries

A DevOpsBestiary!

Goat

Pets

Cattle

Unicorn ELK

Chaos Monkey

Yak

Shaving

Canaries

Goat• flim_flammer via imgur

GoatA highly capable individual who tends to ignore

the silo boundaries of an organization

Coined By: Michael Ducy

Pets vs Cattle

• HauntedSpit via imgur • SpilledPorpoise via imgur

PetsNodes / servers / instances that are lovingly

hand-maintained, with long lives

CattleNodes / servers / instances that are easily

replaced; created and destroyed via automation

Pets vs Cattle“We’ve automated everything but the database

servers; the DBAs treat them as Pets.”

Coinage:

Originally from Bill Baker of Microsoft,

popularized by Gavin McCance of CERN

Unicorn

•via Amazon

Unicorn(1) – a startup that reached $1Bn in value

Unicorn(1) – a startup that reached $1Bn in value

(2) - a company where DevOps “just works”

Unicorn(1) – a startup that reached $1Bn in value

(2) - a company where DevOps “just works”

(3) - an impossible-to-satisfy job description

Canaries• via Don Blake

CanariesDuring deployment, a small group of nodes that

receive the update first, and are watched closely

before rolling out to all nodes

CanariesDuring deployment, a small group of nodes that

receive the update first, and are watched closely

academia.dk

CanariesDuring deployment, a small group of nodes that

receive the update first, and are watched closely

Yak Shaving•via Daniel Bogan

Yak ShavingStarting to solve a problem, only to find another

problem that must be solved, recursing forever.

May or may not have been neccesary.

Chaos Monkey•via picpost

Chaos MonkeySoftware that randomly kills running instances

as part of resiliency testing

Elk•photo: Linda Tanner

ELKElasticsearch + Logstash + Kibana - an open-

source log aggregator / visualizer stack

•via segway NZ

ABBRVs(abbreviations)

CAMS

ABBRVs(abbreviations)

TLA

CAMS

ABBRVs(abbreviations)

TLA

CAMS

CI

ABBRVs(abbreviations)

TLA

CAMSCM

CI

ABBRVs(abbreviations)

TLA

DSL CAMSCM

CI

ABBRVs(abbreviations)

TLA

DSL CAMSCM

CI

CD

ABBRVs(abbreviations)

CAMSvia junauto

CAMSa statement of the components of DevOps:

• Culture

• Automation

• Measurement

• Sharing

DSLvia wikimedia commons

DSLDomain Specific Language

a syntax and command set designed so that

users can write in their conceptual model

directory '/opt/my-app'

template '/opt/my-app/cfg.yaml' do source 'alternate-cfg.yaml'end

TLA

•via summitaudio

TLAThree Letter Acronym

Any acronym with 3 letters

CMvia John Kane and Pilobolus

CMConfiguration Management:

the class of tools including Chef, Puppet, Ansible, SaltStack,

cfengine2, etc

CIvia John Kane and Pilobolus

CI1. Continuous Integration – running

tests whenever a commit occurs

CI1. Continuous Integration –running

tests whenever a commit occurs2. Continuous Improvement – a

culture of looking for ways to improve processes over time

CDvia John Kane and Pilobolus

CD1. Continuous Delivery – building

software packages whenever a commit occurs

CD1. Continuous Delivery – building

software packages whenever a commit occurs

2. Continuous Deployment – installing the software to production whenever a commit occurs

•photo: coolest-toys

Potpourri!

Potpourri!

Bikeshedding

Potpourri!

Anti-Fragile

Bikeshedding

Potpourri!

Anti-Fragile

Bikeshedding

Idempotency

Potpourri!

Anti-Fragile

Bikeshedding

Idempotency

Red/Green/Refactor

Potpourri!

Anti-Fragile

Snowflake Bikeshedding

Red/Green/Refactor

Idempotency

Red / Green / Refactor

via: cbc.ca

Red / Green / Refactorworkflow rhythm when developing under TDD

1. Write failing tests (red terminal output)

2. Write the least code possible to make the

code pass (green terminal output)

3. Clean up the code internally, while ensuring

the tests still pass (refactor)

Snowflake•via: evolvemovement

Snowflakea node that has had manual changes applied

outside of automation

Martin Fowler, 2012

Bikeshedding

via time-to-craft.co.uk

Bikesheddingto argue at length over a decision that is, in the

end, arbitrary

Coinage:

From the BSD community (mid 90's?): arguing

over what color to paint the bikeshed while the

house is not yet finished

(Computer Jargon File)

Anti-Fragilevia dontthrowmypackage

Anti-Fragilethe property of a system designed such that

resiliency increases with damage

From Nassim Taleb and Jez Humble

Idempotency

0 x 0 = 01 x 0 = 0

Idempotency when a tool will only make a change if it

needs to.

From Abstract Algebra

(a kind of Mathematics)

•photo: Howard Ignatius

* Ops

* Ops

CoffeeOps

* Ops

HugOps

CoffeeOps

* Ops

ChatOps

HugOps

CoffeeOps

* Ops

DevOps

ChatOps

HugOps

CoffeeOps

CoffeeOps•via goodneighbors

CoffeeOpsa series of informal meetups at coffeeshops, etc

to talk DevOps

CoffeeOpsa series of informal meetups at coffeeshops, etc

to talk DevOps

Started by Jennifer Davis in 2013coffeeops.org

Start one in your area!

HugOps•via starwarsdaily

HugOpsa meme reflecting empathy among engineers,

especially after an incident, disagreement, or

personal tragedy

Example Usage:

@clintoncwolfe sorry to hear about your talk

going so badly #hugops

ChatOps•via wikimedia commons

ChatOpsusing your text chat tool as an interface to your

tooling, as well as a log of work

Appears to have emerged from GitHub in 2013,

Jesse Newland - ChatOps at GitHub

DevOps•via wikimedia commons

DevOpsthe DevOps that can be spoken of

is not the true DevOps

Patrick DeBois, 2009 DevOps Days Ghent

contribute at

http://devopsdictionary.com

Ask Me Anything

Win a Goat!

http://devopsdictionary.coma wiki for these words

@clintoncwolfe