Slide 1

Slide 1 text

Getting to the post-industrial age of DevOps

Slide 2

Slide 2 text

Nick Bruun github.com/nickbruun @nickbruun bruun.co CTO @ Iconfinder Fairly carnivorous

Slide 3

Slide 3 text

1. The good old days 2. The renaissance man’s DevOps 3. The industrial revolution of DevOps 4. Trouble in DevOps paradise 5. The post-industrial age of DevOps

Slide 4

Slide 4 text

The good old days

Slide 5

Slide 5 text

Database Application Web server Files Ops Dev

Slide 6

Slide 6 text

… but, then something happened

Slide 7

Slide 7 text

Scale

Slide 8

Slide 8 text

Scale

Slide 9

Slide 9 text

“Agile”

Slide 10

Slide 10 text

Complex stack Web server Database memcached Redis ElasticSearch RabbitMQ

Slide 11

Slide 11 text

Leaky abstractions Mandatory Spolsky-ism

Slide 12

Slide 12 text

The renaissance man’s DevOps

Slide 13

Slide 13 text

Dev Ops

Slide 14

Slide 14 text

DevOps

Slide 15

Slide 15 text

“Let’s work together”

Slide 16

Slide 16 text

(very often) became

Slide 17

Slide 17 text

“We all do everything”

Slide 18

Slide 18 text

Architecture Development QA/testing Operations System administration Database administration Full-stack developer h4x0r ninja!11

Slide 19

Slide 19 text

Inefficient

Slide 20

Slide 20 text

Jack of all trades, master of…

Slide 21

Slide 21 text

The industrial revolution of DevOps

Slide 22

Slide 22 text

Automation

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

Tooling

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

Trouble in DevOps paradise

Slide 29

Slide 29 text

“So… what do you do for a living?”

Slide 30

Slide 30 text

Servers are still servers Databases are still databases Infrastructure is still infrastructure

Slide 31

Slide 31 text

Servers are still complicated Databases are still complicated Infrastructure is still complicated

Slide 32

Slide 32 text

“I need a PostgreSQL database” Let’s pretend…

Slide 33

Slide 33 text

An Ops person would: 1. Be grumpy, ask questions 2. Provision server(s) 3. $ sudo apt-get install postgresql-server 4. Set up replication, monitoring, logging and backups 5. Hand over an IP and a port to the Dev The Good Old Days

Slide 34

Slide 34 text

Some random person would: 1. Provision server(s) 2. Pour over the manuals 3. $ sudo apt-get install postgresql-server 4. Set up replication, monitoring, logging and backups 5. Yay, database! The renaissance man’s DevOps

Slide 35

Slide 35 text

Some random person will: 1. Provision server(s) 2. Find a Chef cookbook or Puppet module for PostgreSQL and hopefully monitoring/backup/replication 3. Run configuration management 4. Debug why things aren’t working (read the manual) 5. Yay, database! The industrial age of DevOps

Slide 36

Slide 36 text

But, what if… “The primary went down”

Slide 37

Slide 37 text

But, what if… “We need a bigger server!”

Slide 38

Slide 38 text

Oh dear God…

Slide 39

Slide 39 text

The Post-Industrial Age of DevOps? How do we get to the

Slide 40

Slide 40 text

How do we get to do, what we do best? … or,

Slide 41

Slide 41 text

As a developer, I will: 1. Click a button or run a command to get a PostgreSQL server 2. Get back to work The Awesome Way™

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

Service-ification noun the encapsulation of everything as services

Slide 45

Slide 45 text

Service-ification noun the encapsulation of everything as services ≠ Service oriented Architecture

Slide 46

Slide 46 text

Services and service providers

Slide 47

Slide 47 text

Redis as a Service PostgreSQL as a Service ElasticSearch as a Service Load balancer as a service Application #1 Application #2 Application #n ..

Slide 48

Slide 48 text

Application runtime as a Service Redis as a Service PostgreSQL as a Service ElasticSearch as a Service Load balancer as a service Application #1 Application #2 Application #n ..

Slide 49

Slide 49 text

Are we there yet?

Slide 50

Slide 50 text

Is running infrastructure our core business? Let’s ask ourselves…

Slide 51

Slide 51 text

No content

Slide 52

Slide 52 text

“But… X as a service is expensive!”

Slide 53

Slide 53 text

“But… I don’t trust them!”

Slide 54

Slide 54 text

Platforms are hard

Slide 55

Slide 55 text

Encapsulation/isolation

Slide 56

Slide 56 text

No content

Slide 57

Slide 57 text

No content

Slide 58

Slide 58 text

Resource management

Slide 59

Slide 59 text

No content

Slide 60

Slide 60 text

Orchestration

Slide 61

Slide 61 text

Kubernetes

Slide 62

Slide 62 text

Resource management Encapsulation/ isolation Orchestration

Slide 63

Slide 63 text

No content

Slide 64

Slide 64 text

No content

Slide 65

Slide 65 text

Flynn

Slide 66

Slide 66 text

No content

Slide 67

Slide 67 text

Metal

Slide 68

Slide 68 text

We have a long way to go In other words…

Slide 69

Slide 69 text

So, why not go back to the good old way?

Slide 70

Slide 70 text

Focus

Slide 71

Slide 71 text

Security

Slide 72

Slide 72 text

Resource utilisation $

Slide 73

Slide 73 text

Uniformity

Slide 74

Slide 74 text

Peace of mind

Slide 75

Slide 75 text

Let’s get cracking!

Slide 76

Slide 76 text

thx