microservices, micro operations? challenges of microservice
TRANSCRIPT
© 2015 Cassini Consulting
Dustin Huptas Andreas Schmidt
Microservices, Micro Operations? Challenges of Microservice models at the operations level
12th Feb. 2015 Micro Services, Micro Operations? 2
12.02.15 Cassini Consulting 3
5 12.02.15 Cassini Consulting
Cassini consulting
#devops #linux #configmgt #virtualization #Containers #networking #ipv6 #security #deploy #run
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
7 12.02.15 Cassini Consulting
Cassini consulting
#devops #linux #configmgt #security #virtualization #Containers #networking #ipv6
Andreas @aschmidt75 Infra-coding, #serverspec, #containers & security, #networking
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
12th Feb. 2015 Micro Services, Micro Operations? 9
Usually local development/test environment Single host, single network Mocked services
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
http://thenewstack.io/new-stack-mitchell-hashimoto-containers-no-containers-one-question-2015/
11 12th Feb. 2015 Micro Services, Micro Operations?
12 12.02.15 Cassini Consulting
Increasing Number of Services
Discovery of Services
Dependencies
Number of services: 1
Software Architecture Patterns are changing
14 12th Feb. 2015 Micro Services, Micro Operations?
System Architecture Patterns are changing to adapt
15 12th Feb. 2015 Micro Services, Micro Operations?
The # of services are increasing
16 12th Feb. 2015 Micro Services, Micro Operations?
Year 1 Year 2 Year 3 Year 4
https://www.flickr.com/photos/davebass5/8284615214/
„My name is service, micro service.“
https://www.flickr.com/photos/tonyjcase/2864378286
“My name is service..“
“So what? Mine, too.“
“Yeah. And don‘t forget
about me. Like always.“
https://www.flickr.com/photos/tonyjcase/2864378286
A Bag Of services
Multiplestages
Teams deploy independently
every other day
https://www.flickr.com/photos/rieder91/6008439579
How to call?
Deployments
scaling
Firewalling
Logging Monitoring Sharing
knowledge debugging
Dependencies
CREATE and APPLY PATTERNS
Logging Monitoring Deployments Debugging
Across allServices & Teams
META model DocumentationKnowledgeData
Keep System Maintainable
You build it,You run itDevOps
22 12th Feb. 2015 Micro Services, Micro Operations?
23 12th Feb. 2015 Micro Services, Micro Operations?
3 Services - handcrafted
24 12th Feb. 2015 Micro Services, Micro Operations?
Scalability & Failover
25 12th Feb. 2015 Micro Services, Micro Operations?
Scalability & Failover
26 12th Feb. 2015 Micro Services, Micro Operations?
ENDpoints disappear
27 12th Feb. 2015 Micro Services, Micro Operations?
MULTI-Version?
V3 V3 V4 V4
28 12th Feb. 2015 Micro Services, Micro Operations?
Reachability
29 12th Feb. 2015 Micro Services, Micro Operations?
Wiring baked inTO Proxying/LB
Configuration Management
Tool
30 12th Feb. 2015 Micro Services, Micro Operations?
Solve Wiring With Appropriate Tools
31 12th Feb. 2015 Micro Services, Micro Operations?
i.e. coreos/etcdconsulK/V cluster
i.e. confd, consul-template, ..Template engine
Proxying i.e. haproxy
Apps Infra i.e. progrium/registrator
12.02.15 Cassini Consulting 32
Dependencies
33 12th Feb. 2015 Micro Services, Micro Operations?
Internal Software dependencies
Inter-Service dependencies
@ build time
@ run time
34 12th Feb. 2015 Micro Services, Micro Operations?
Startup order
35 12th Feb. 2015 Micro Services, Micro Operations?
Resilience
Circuit Breaker
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
It moves to another level in your system
Complexity does NOT go away
Use helpers to DEAL with shifted complexiTY
manifests as DEPENDENCIES
DevOps Mindset
40 12th Feb. 2015 Micro Services, Micro Operations?
UPFRONT Design
Changing architecture in-between
FULL Automation is key
Application Configuration needs to be dynamic
Configuration Management Tools for
SERVERS
Static wiring of components reaches END-OF-LIFE
Ability to detect peers
Dynamic Service Discovery
43 12th Feb. 2015 Micro Services, Micro Operations?
Dependencies externalize Call Stack
LATENCY
Introduce Circuit breakers
Tools and frameworks are
moving FAST
PATTERNS are importaNT
Operational behaviour changes
SHIFT to micro services introduces changes at multiple levels
46 12th Feb. 2015 Micro Services, Micro Operations?
Microservices, Micro Operations?
Make Services Smarter
Meta Ops For the Service landscape
Employ suitable Patterns
Q & A
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?
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