infrastructure as a microservice

25
Konrad Hosemann DevOpsDays Berlin 2016-11-16 Infrastructure as a Microservice

Upload: konrad-hosemann

Post on 16-Apr-2017

142 views

Category:

Internet


2 download

TRANSCRIPT

Page 1: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Infrastructure as a Microservice

Page 2: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Lead Software Engineer at ImmobilienScout

[email protected]

www.linkedin.com/in/konrad-hosemann

@k0nr8d

Page 3: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Monolith vs Microservices

Infrastructure Services in the Cloud

Implementation

Learnings

Page 4: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Microservices

Page 5: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

implement a single business function

small

dedicated interface

replaceable

need automation

need scalable infrastructure

Daniel Tenerife - Own work, GFDL, https://commons.wikimedia.org/w/index.php?curid=9478114

Page 6: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Monoliths

Page 7: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

hard to change

lots of implicit dependencies

painful maintenance

hard to take responsibility + ownership for

unique

hard to scale

Daniel Steger (Lausanne, Switzerland) - http://openphoto.net/download/index.html?image_id=6987, CC BY-SA 2.5, https://commons.wikimedia.org/w/index.php?curid=3129314

Page 8: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

State of Infrastructure Services: Monolithic

Page 9: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

1,5 million metric updates / minute 4 * (24 cores, 72 GB RAM, 360 GB HDD)

Page 10: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

150.000 write requests / second 1,5 TB ingestion / day

10 * (1,5 TB SSD, 15 TB HDD, 20 cores, 128 GB RAM)

Page 11: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Page 12: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

built for „measure everything!“ 👍

efficient 👍

clients brake it – single point of failure 👻👺

achieving reliability at scale 😪

responsible usage 🤔

Page 13: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Next Step: ImmobilienScout to the

Cloud

Page 14: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

benefit from external innovation

autonomous teams

no side effects

you build it – you run it

cost transparency + cost awareness

Page 15: Infrastructure as a Microservice
Page 16: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Self-Service Infrastructure

Page 17: Infrastructure as a Microservice

Elasticsearch, Logstash, Kibana, Kinesis

Page 18: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Delivery

Page 19: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

CloudFormation Template

access rights function def event source output stream

Code.zip

Page 20: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

How to Build

Page 21: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Support your users – make it easy to setup

Automate integration testing

Zero bug policy

Design for cost-efficiency

Do Open Source

Page 22: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Challenges

Page 23: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Who owns these infrastructure services?

No unified view

Distributing updates

Avoiding fragmentation

Page 24: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

Inspirations from the Microservices approach

Page 25: Infrastructure as a Microservice

Konrad Hosemann DevOpsDays Berlin 2016-11-16

more engineering

less operations

bounded context

small size

automation

ready to use building blocks

more autonomy

responsibility for the complete stack