Slide 1

Slide 1 text

© 2015 Cassini Consulting Dustin Huptas Andreas Schmidt Microservices, Micro Operations? Challenges of Microservice models at the operations level

Slide 2

Slide 2 text

12th Feb. 2015 Micro Services, Micro Operations? 2

Slide 3

Slide 3 text

12.02.15 Cassini Consulting 3

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

5 12.02.15 Cassini Consulting Cassini consulting #devops #linux #configmgt #virtualization #Containers #networking #ipv6 #security #deploy #run

Slide 6

Slide 6 text

6 12.02.15 Cassini Consulting Cassini consulting #devops #linux #configmgt #security #virtualization #Containers #networking #ipv6 Dustin @dhpts System Architecture, Networking, Dev‘ing the Ops

Slide 7

Slide 7 text

7 12.02.15 Cassini Consulting Cassini consulting #devops #linux #configmgt #security #virtualization #Containers #networking #ipv6 Andreas @aschmidt75 Infra-coding, #serverspec, #containers & security, #networking

Slide 8

Slide 8 text

8 12th Feb. 2015 Micro Services, Micro Operations? Physical Servers Virtual Servers Containers Dynamic Workloads Years Days to Months Hours to Days Msecs to Seconds

Slide 9

Slide 9 text

12th Feb. 2015 Micro Services, Micro Operations? 9 Usually local development/ test environment Single host, single network Mocked services

Slide 10

Slide 10 text

12th Feb. 2015 Micro Services, Micro Operations? 10 Usually local development/ test environment Single host, single network Mocked services Scaling of instances (failover+performance) Services instances scattered across different hosts Networking, Security, i.e. Firewalling Logging and Monitoring on a larger scale Stuff needs to be persisted Non-functional ReQuirements

Slide 11

Slide 11 text

http://thenewstack.io/new-stack-mitchell-hashimoto-containers-no-containers-one- question-2015/ 11 12th Feb. 2015 Micro Services, Micro Operations?

Slide 12

Slide 12 text

12 12.02.15 Cassini Consulting Increasing Number of Services Discovery of Services Dependencies

Slide 13

Slide 13 text

Number of services: 1

Slide 14

Slide 14 text

Software Architecture Patterns are changing 14 12th Feb. 2015 Micro Services, Micro Operations?

Slide 15

Slide 15 text

System Architecture Patterns are changing to adapt 15 12th Feb. 2015 Micro Services, Micro Operations?

Slide 16

Slide 16 text

The # of services are increasing 16 12th Feb. 2015 Micro Services, Micro Operations? Year 1 Year 2 Year 3 Year 4

Slide 17

Slide 17 text

https://www.flickr.com/photos/davebass5/8284615214/ „My name is service, micro service.“

Slide 18

Slide 18 text

https://www.flickr.com/photos/tonyjcase/2864378286 “My name is service..“ “So what? Mine, too.“ “Yeah. And don‘t forget about me. Like always.“

Slide 19

Slide 19 text

https://www.flickr.com/photos/tonyjcase/2864378286 A Bag Of services Multiple stages Teams deploy independently every other day

Slide 20

Slide 20 text

https://www.flickr.com/photos/rieder91/6008439579 How to call? Deployments scaling Firewalling Logging Monitoring Sharing knowledge debugging Dependencies

Slide 21

Slide 21 text

CREATE and APPLY PATTERNS Logging
 Monitoring
 Deployments
 Debugging Across all Services &
 Teams META model Documentation Knowledge Data Keep System Maintainable You build it, You run it DevOps

Slide 22

Slide 22 text

22 12th Feb. 2015 Micro Services, Micro Operations?

Slide 23

Slide 23 text

23 12th Feb. 2015 Micro Services, Micro Operations? 3 Services - handcrafted

Slide 24

Slide 24 text

24 12th Feb. 2015 Micro Services, Micro Operations? Scalability & Failover

Slide 25

Slide 25 text

25 12th Feb. 2015 Micro Services, Micro Operations? Scalability & Failover

Slide 26

Slide 26 text

26 12th Feb. 2015 Micro Services, Micro Operations? ENDpoints disappear

Slide 27

Slide 27 text

27 12th Feb. 2015 Micro Services, Micro Operations? MULTI-Version? V3 V3 V4 V4

Slide 28

Slide 28 text

28 12th Feb. 2015 Micro Services, Micro Operations? Reachability

Slide 29

Slide 29 text

29 12th Feb. 2015 Micro Services, Micro Operations? Wiring baked inTO Proxying/LB Configuration Management Tool

Slide 30

Slide 30 text

30 12th Feb. 2015 Micro Services, Micro Operations? Solve Wiring With Appropriate Tools

Slide 31

Slide 31 text

31 12th Feb. 2015 Micro Services, Micro Operations? i.e. coreos/etcd consul K/V cluster i.e. confd,
 consul-template, .. Template engine Proxying i.e. haproxy Apps Infra i.e. 
 progrium/registrator

Slide 32

Slide 32 text

12.02.15 Cassini Consulting 32 Dependencies

Slide 33

Slide 33 text

33 12th Feb. 2015 Micro Services, Micro Operations? Internal Software dependencies Inter-Service dependencies @ build time @ run time

Slide 34

Slide 34 text

34 12th Feb. 2015 Micro Services, Micro Operations? Startup order

Slide 35

Slide 35 text

35 12th Feb. 2015 Micro Services, Micro Operations? Resilience Circuit Breaker

Slide 36

Slide 36 text

36 12th Feb. 2015 Micro Services, Micro Operations? Circuit closed? Queue Full? Execute call Fallback Response timeout Success ? COMPUTE Circuit STATE Latency OK? positive Response

Slide 37

Slide 37 text

It moves to another level in your system Complexity does NOT go away

Slide 38

Slide 38 text

Use helpers to DEAL with shifted complexiTY manifests as DEPENDENCIES

Slide 39

Slide 39 text

DevOps Mindset

Slide 40

Slide 40 text

40 12th Feb. 2015 Micro Services, Micro Operations? UPFRONT Design Changing architecture in-between

Slide 41

Slide 41 text

FULL Automation is key Application Configuration needs to be dynamic Configuration Management Tools for SERVERS

Slide 42

Slide 42 text

Static wiring of components reaches END-OF-LIFE Ability to detect peers Dynamic Service Discovery

Slide 43

Slide 43 text

43 12th Feb. 2015 Micro Services, Micro Operations? Dependencies externalize Call Stack LATENCY Introduce Circuit breakers

Slide 44

Slide 44 text

Tools and frameworks are moving FAST PATTERNS are importaNT

Slide 45

Slide 45 text

Operational behaviour changes SHIFT to micro services introduces changes at multiple levels

Slide 46

Slide 46 text

46 12th Feb. 2015 Micro Services, Micro Operations? Microservices, Micro Operations? Make Services Smarter Meta Ops For the Service landscape Employ suitable Patterns

Slide 47

Slide 47 text

Q & A

Slide 48

Slide 48 text

Recommended reading http://www.simplicityitself.com/microservices-reactive/the-role-of-data-in-microservices/ http://highscalability.com/blog/2014/4/8/microservices-not-a-free-lunch.html https://rclayton.silvrback.com/failing-at-microservices http://www.simplicityitself.com/learning/getting-started-microservices/service- discovery-overview/ http://thenewstack.io/new-stack-mitchell-hashimoto-containers-no-containers-one- question-2015/ http://blogs.gartner.com/gary-olliffe/2015/01/30/microservices-guts-on-the-outside/ http://jaxenter.de/artikel/entwicklung-betrieb-skalierbarer-architektur-178014 (DE) 48 12.02.15 Micro Services, Micro Operations?

Slide 49

Slide 49 text

Cassini Consulting Dustin Huptas Andreas Schmidt Oberwallstraße 24 10117 Berlin Deutschland Alle Angaben basieren auf dem derzeitigen Kenntnisstand. Änderungen vorbehalten. Dieses Dokument von Cassini Consulting ist ausschließlich für den Adressaten bzw. Auftraggeber bestimmt. Es bleibt bis zur einer ausdrücklichen Übertragung von Nutzungsrechten Eigentum von Cassini. Jede Bearbeitung, Verwertung, Vervielfältigung und/oder gewerbsmäßige Verbreitung des Werkes ist nur mit Einverständnis von Cassini zulässig. 12.02.15 Micro Services, Micro Operations? 49