Top Banner
IT AUTOMATION : MAKE THE SERVER GREAT AGAIN @ WAXZCE QUENTIN ADAM AT TOULOUSE DEVOPS
95

IT automation: Make the server great again - toulouse devops fev 2017

Jan 22, 2018

Download

Software

Quentin Adam
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: IT automation: Make the server great again  - toulouse devops fev 2017

IT AUTOMATION :

MAKE THE SERVER

GREAT AGAIN

@WAXZCE

QUENTIN ADAM AT TOULOUSE DEVOPS

Page 2: IT automation: Make the server great again  - toulouse devops fev 2017

Quentin ADAM from the Clever Cloud

@waxzce on twitter – github- soundcloud – instagram ….

WHO AM I ?

Page 3: IT automation: Make the server great again  - toulouse devops fev 2017

MY DAY TO DAY WORK :

CLEVER CLOUD,

THE IT AUTOMATION COMPANY

Page 4: IT automation: Make the server great again  - toulouse devops fev 2017

KEEP YOUR APPS ONLINE. MADE WITH

NODE.JS, SCALA, JAVA, RUBY, PHP,

PYTHON, GO…

Cloud & on premise ;-)

Page 5: IT automation: Make the server great again  - toulouse devops fev 2017

AND LEARN A LOT OF THINGS ABOUT

YOUR CODE, APPS, AND GOOD/BAD

DESIGN…

Page 6: IT automation: Make the server great again  - toulouse devops fev 2017

GIVE BACK TO THE COMMUNITY

NEVER

GONNA

LET YOU

DOWN

clever-cloud.com

Page 7: IT automation: Make the server great again  - toulouse devops fev 2017

LET’S TALK ABOUT

INFRASTRUCTURE

Page 8: IT automation: Make the server great again  - toulouse devops fev 2017

40 times in 5 years price drop of AWS

SERVERS COSTS ARE GOING DOWN

Page 9: IT automation: Make the server great again  - toulouse devops fev 2017

Google I/O 2015

“RACE TO ZERO”

I.E THE SERVER IS FREE

Page 10: IT automation: Make the server great again  - toulouse devops fev 2017

In fact, all you have is…

COOL.

YOU HAVE A SERVER.

Page 11: IT automation: Make the server great again  - toulouse devops fev 2017

HOSTING

Backup Updates Certification

Agreement Process Provisioning

SecurityHardware

maintenance

Page 12: IT automation: Make the server great again  - toulouse devops fev 2017

VALUE

= SERVER

MANAGEMENT

Page 13: IT automation: Make the server great again  - toulouse devops fev 2017

ONCE UPON A TIME, MY BELOVED

SERVERS

Page 14: IT automation: Make the server great again  - toulouse devops fev 2017

THEN, VIRTUALIZED ONES

Page 15: IT automation: Make the server great again  - toulouse devops fev 2017

CREATE HISTORY

Page 16: IT automation: Make the server great again  - toulouse devops fev 2017

DOCUMENTATION

Page 17: IT automation: Make the server great again  - toulouse devops fev 2017

SPECIFIC

Page 18: IT automation: Make the server great again  - toulouse devops fev 2017

TAYLOR MADE

Page 19: IT automation: Make the server great again  - toulouse devops fev 2017

NOT ABLE TO SCALE

Page 20: IT automation: Make the server great again  - toulouse devops fev 2017

KNOWLEDGE

!=

AUTOMATION

Page 21: IT automation: Make the server great again  - toulouse devops fev 2017

Automate

SPLIT COMPLEX PROBLEMS INTO A

COLLECTION OF SMALL ONES

Page 22: IT automation: Make the server great again  - toulouse devops fev 2017

POSSIBLE SERVERS

STATES

Updated to V43

New configuration

files

Install new service

History …

Page 23: IT automation: Make the server great again  - toulouse devops fev 2017

AVOID HISTORY

Page 24: IT automation: Make the server great again  - toulouse devops fev 2017

FIX STATE OF

THE DATA TO

ENSURE

ACCESSIBILITY

Page 25: IT automation: Make the server great again  - toulouse devops fev 2017

POSSIBLE STATE IN

AN IMMUTABLE STATE

working

Not working

Very simple to predicate

Page 26: IT automation: Make the server great again  - toulouse devops fev 2017

FIX THE

HISTORY IN A

IMMUTABLE

STATE

Page 27: IT automation: Make the server great again  - toulouse devops fev 2017

BTW,

REAL WORLD

INSIGHT

“WE LIVE IN A MUTABLE WORLD, DEAL WITH IT”

Page 28: IT automation: Make the server great again  - toulouse devops fev 2017

WORLD IS

SUCCESSION

OF

IMMUTABLE

INSTANT

Page 29: IT automation: Make the server great again  - toulouse devops fev 2017

EPHEMERAL

IMMUTABLE

INSTANCES

Page 30: IT automation: Make the server great again  - toulouse devops fev 2017

PET

!=

CATTLE

Page 31: IT automation: Make the server great again  - toulouse devops fev 2017

SERVICE

UPTIME

!=

SERVER

UPTIME

Page 32: IT automation: Make the server great again  - toulouse devops fev 2017

NO MORE OLYMPIC CONTEST ON

UPTIME

Page 33: IT automation: Make the server great again  - toulouse devops fev 2017

And why it’s a problem to manage technical product and decision with book keepers point of view https://www.youtube.com/watch?v=0ip1FoBsLB4

(AWS PRICING HYPOCRISY LEAD TO

BAD PRACTICE)

Summon Yog-Sothoth

Page 34: IT automation: Make the server great again  - toulouse devops fev 2017

HUMANLESS

POWERTOOLS

Page 35: IT automation: Make the server great again  - toulouse devops fev 2017

PRODUCTION HAS TO BE PERFECT

Page 36: IT automation: Make the server great again  - toulouse devops fev 2017

PEOPLE ARE NOT PERFECT

Page 37: IT automation: Make the server great again  - toulouse devops fev 2017

PEOPLE HAVE NOTHING TO DO ON

PRODUCTION STUFF

Page 38: IT automation: Make the server great again  - toulouse devops fev 2017

AT CLEVER CLOUD SSH CONNECTION

IS A RED ALERT

Page 39: IT automation: Make the server great again  - toulouse devops fev 2017

CAPACITY PLANNING

Page 40: IT automation: Make the server great again  - toulouse devops fev 2017

SPLIT PROCESS AND

STORAGE

Storage

• Databases

• Files

• Sessions

• Events

• …

Code

• Can be replicated

• Stateless

• Process

Page 41: IT automation: Make the server great again  - toulouse devops fev 2017

RUNTIME INSTANCES

Page 42: IT automation: Make the server great again  - toulouse devops fev 2017

VM, docker, kubernetes, puppet, ansible, vmware… This is not the problem

TECHNOLOGIES?

Page 43: IT automation: Make the server great again  - toulouse devops fev 2017

Search youtube quentin adam docker

DOCKER

Page 44: IT automation: Make the server great again  - toulouse devops fev 2017

THERE IS ONE PROCESS:

BUILD

Page 45: IT automation: Make the server great again  - toulouse devops fev 2017

THEN, REGISTER

Page 46: IT automation: Make the server great again  - toulouse devops fev 2017

AND LIVE WITHOUT DATA

Page 47: IT automation: Make the server great again  - toulouse devops fev 2017

AND DIE WHEN MORE

UPDATED VERSION IS THERE

Page 48: IT automation: Make the server great again  - toulouse devops fev 2017

TRASH OLD VERSION

Page 49: IT automation: Make the server great again  - toulouse devops fev 2017

FULLY AUTOMATED HOSTING FACTORY

Page 50: IT automation: Make the server great again  - toulouse devops fev 2017

AN INSTANCE IS DEAD OR ALIVE AND

THAT’S ALL

Page 51: IT automation: Make the server great again  - toulouse devops fev 2017

APP FAIL?

REDEPLOY

NEW

INSTANCE

Page 52: IT automation: Make the server great again  - toulouse devops fev 2017

OPERATION

SYSTEM

UPDATE ?

REDEPLOY

NEW

INSTANCE

Page 53: IT automation: Make the server great again  - toulouse devops fev 2017

REBALANCE

HARDWARE

ALLOCATION?

REDEPLOY

NEW

INSTANCE

Page 54: IT automation: Make the server great again  - toulouse devops fev 2017

PREDICABLE

FAIL OF THE

APPLICATION?

REDEPLOY

NEW

INSTANCE

Page 55: IT automation: Make the server great again  - toulouse devops fev 2017

Picking one instance or another doesn’t matter

STATELESSNESS IS THE KEY

Page 56: IT automation: Make the server great again  - toulouse devops fev 2017

BECAUSE YOU WILL NOT RELY

ON A SERVER ANYMORE

Page 57: IT automation: Make the server great again  - toulouse devops fev 2017

CREATE A FACTORY OF INSTANCE

Page 58: IT automation: Make the server great again  - toulouse devops fev 2017

PROXY

AND

ROUTING

Page 59: IT automation: Make the server great again  - toulouse devops fev 2017

Consul, etcd, Clever Cloud service dependencies

SERVICE DISCOVERY

Page 60: IT automation: Make the server great again  - toulouse devops fev 2017

CONFIGURATION

=> ENVIRONMENT VARIABLE

Page 61: IT automation: Make the server great again  - toulouse devops fev 2017

HOW TO MANAGE DATA?

Page 62: IT automation: Make the server great again  - toulouse devops fev 2017

SPLIT DATA AND PROCESS:

FS COMPOSITION

Runtime

• local

• replicable

• updated

Data

• file system

• block storage

• replicated

• copy on write?

Page 63: IT automation: Make the server great again  - toulouse devops fev 2017

DATA

STORAGE

WAYS

Page 64: IT automation: Make the server great again  - toulouse devops fev 2017

Not part of this list

DATABASE (ACID OR NOT, SQL OR NOT)

Page 65: IT automation: Make the server great again  - toulouse devops fev 2017

FILE SYSTEM

Page 66: IT automation: Make the server great again  - toulouse devops fev 2017

BLOC STORAGE

Page 67: IT automation: Make the server great again  - toulouse devops fev 2017

OBJECT STORAGE

Page 68: IT automation: Make the server great again  - toulouse devops fev 2017

(COPY ON WRITE)

Page 69: IT automation: Make the server great again  - toulouse devops fev 2017

(COPY ON WRITE)

Page 70: IT automation: Make the server great again  - toulouse devops fev 2017

DATA MANAGEMENT IS BIND

TO DB NEEDS

Page 71: IT automation: Make the server great again  - toulouse devops fev 2017

ACID :

DUPLICATE & DATA EVOLUTION

Page 72: IT automation: Make the server great again  - toulouse devops fev 2017

INSTANCE FOR ONE

ORGANIZATION

ACID

• Atomicity

• Consistency

• Isolation

• Durability

Powerful data

management

• Transaction

• User management

• One above one

Take advantage of ACID

database

Page 73: IT automation: Make the server great again  - toulouse devops fev 2017

BUT IT DESIGNS A

BOTTLENECK

Page 74: IT automation: Make the server great again  - toulouse devops fev 2017

EXAMPLE : E-SHOP ON

CLASSIC MODE

Page 75: IT automation: Make the server great again  - toulouse devops fev 2017

EXAMPLE : E-SHOP ON

CLASSIC MODE

User A buy a

hdd

Database Transaction :

• Stock management

• Order management

• Invoice generation

• Customer Account reward

• …

Transaction

user A is

processed

Stock &

Order are just

perfectly

synchronize

Page 76: IT automation: Make the server great again  - toulouse devops fev 2017

EXAMPLE : E-SHOP ON

CLASSIC MODE

User A buy a

hdd

Database Transaction :

• Stock management

• Order management

• Invoice generation

• Customer Account reward

• …

Transaction

user A is

processed

Stock &

Order are just

perfectly

synchronize

User B buy a

hdd Transaction

user B is

processed

then

Page 77: IT automation: Make the server great again  - toulouse devops fev 2017

EXAMPLE : E-SHOP ON

MULTI-TENANT MODE

i.e. : Multiple shop of various sellers on the same instance

Page 78: IT automation: Make the server great again  - toulouse devops fev 2017

EXAMPLE : E-SHOP ON

MULTI-TENANT MODE

User A buy a

hdd on seller A

Database Transaction :

• Stock management

• Order management

• Invoice generation

• Customer Account reward

• …

Transaction

user A is

processed

Stock &

Order are just

perfectly

synchronize

User B buy a

book on seller B Transaction

user B is

processed

then

Page 79: IT automation: Make the server great again  - toulouse devops fev 2017

HIGH AVAILABILITY:

DISTRIBUTED SYSTEM

Page 80: IT automation: Make the server great again  - toulouse devops fev 2017

DISTRIBUTED

DB AND

HARDWARE

DAFUCKNESS

Page 81: IT automation: Make the server great again  - toulouse devops fev 2017

FORGET THE SAN, GO FULL

DISTRIBUTED

Page 82: IT automation: Make the server great again  - toulouse devops fev 2017

NO SILVER

BULLET

STORAGE

Page 83: IT automation: Make the server great again  - toulouse devops fev 2017

BE CONSISTENT AND PREDICTABLE

Page 84: IT automation: Make the server great again  - toulouse devops fev 2017

MONITORING

IS

MANDATORY

Page 85: IT automation: Make the server great again  - toulouse devops fev 2017

EXPOSE METRICS

Page 86: IT automation: Make the server great again  - toulouse devops fev 2017

IMMUTABILITY

AS A PATTERN

ANOTHER TALK FROM ME ;-)

FR version : https://www.youtube.com/watch?v=y1BR7Rh7FSY&t=15s

Page 87: IT automation: Make the server great again  - toulouse devops fev 2017

SECURITY

VOODOO

LIKE

Page 88: IT automation: Make the server great again  - toulouse devops fev 2017

SECURITY IS EVOLVING

Page 90: IT automation: Make the server great again  - toulouse devops fev 2017
Page 92: IT automation: Make the server great again  - toulouse devops fev 2017

FROM SERVER TO

SERVERLESS:

CODE

LOCKED?

Page 93: IT automation: Make the server great again  - toulouse devops fev 2017

F*CK 12

FACTORS?

Page 94: IT automation: Make the server great again  - toulouse devops fev 2017

GO BACK ON

APPLICATION

SERVER?