Servicierung von Monolithen - Der Weg zu neuen Technologien bis hin zum Service Mesh

Michael Hofmann
Michael HofmannSoftware Architect
„Servicierung“
von Monolithen
Der Weg zu neuen Technologien
bis hin zum Service Mesh
Michael Hofmann
www.hofmann-itconsulting.de
Im Auftrag der DONAT group GmbH
www.donat-group.de
Die Monolithen.
> 10 Jahre
EAR-File, Oracle
Probleme:
Geringe Deployment-Frequenz, lange Downtime
Update Technologie Stack
Starre Architektur
Skalierung im Betrieb und in Entwicklung
Single Point of Failure innerhalb des Monolithen
(OutOfMemory)
Der Weg zur neuen
Zielarchitektur. >> As Martin Fowler likes to
say, the only thing a Big Bang
rewrite guarantees is a Big
Bang! << (Randy Shoup)
Strangler Application
Data Integration Glue
(Chance Data Capture)
Eventual Consistency
Microservices.
Microservice-Projekte starten klein
- Greenfield, Zerlegung Monolith
Anfangs ohne Versionierungs-Problematik
Mehrere Versionen parallel in Produktion
Anzahl der Services steigt
Service-Ketten werden etabliert
Wie teste ich das Zusammenspiel
versionsübergreifend?
Schleichender Verlust des Überblicks:
Wer mit wem in welcher Version?
Big Ball of Mud.
Quelle: https://twitter.com/Werner/status/741673514567143424
(Werner Vogels, CTO Amazon)
Quelle: Adrian Cockcroft (Netflix) / Martin Fowler
Was kommt noch?
Komplexität auch zwischen den
Services
Fallacies of Distributed Systems
Wer kümmert sich darum?
Container-Systeme?
Resilienz-Frameworks?
The network is reliable.
Latency is zero.
Bandwidth is infinite.
The network is secure.
Topology doesn‘t change.
There is one administrator.
Transport cost is zero.
The network is homogeneous.
Anwendung sollte nichts davon wissen!
Service Mesh.
>> The term service mesh is used
to describe the network of microservices
that make up such application
and the interactions between them. <<
(istio.io)
Ohne Werkzeug lässt sich Service Mesh
(Big Ball of Mud) kaum beherrschen!
Service Mesh Functions.
Service Discovery
Load Balancing
Resilience
Dynamic Routing (Blue/Green Deployments, Canary Releasing,
Traffic Mirroring)
Observability (Metrics, Tracing)
End-to-End Authentication, Access Control
Rate Limiting
Istio.
GOOGLE (ISTIO)
 Content-based routing
 Rate limiting
 ACLs
 Telemetry
 Kubernetes
integration
LYFT (ENVOY)
 Proxy (sidecar)
IBM (AMALGAM8)
 Content-based routing
(extended)
 Service discovery
 Resilience
 Load balancing
Istio Architektur.
Data Plane
Control Plane
Envoy Proxy.
Design Goal: >> The network should be transparent
to applications. When network and application
problems do occur it should be easy to determine
the source of the problem. <<
Als Container gemeinsam mit Service deployed
„Man-in-the-Middle“
Als Sidecar transparent für Service
Service-Discovery, Load Balancing, Resilience,
Health-Checks, Metrics, Fault Injection
Kommunikation mit Mixer (Telemetrie)
und Pilot (Policies)
Istio Rules.
TRAFFIC MANAGEMENT
 Starre/dynamische (HTTP-Header)
 95%-5% Verteilung (Canary)
 Traffic Mirroring
RESILIENZ
 Timeout, Retry, CircuitBreaker,
Bulkhead
 Testen der Resilienz mit Fault
Injection: x% mit Delay, y% mit
HTTP-Status Code (5xx)
Zusätzlich…
1 of 13

Recommended

Schnittmuster für Microservices von MaibornWolff by
Schnittmuster für Microservices von MaibornWolffSchnittmuster für Microservices von MaibornWolff
Schnittmuster für Microservices von MaibornWolffMaibornWolff
976 views31 slides
Steinzeit war gestern! Wege der Cloud-nativen Evolution. by
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.QAware GmbH
402 views49 slides
Service Mesh - Kilometer 30 im Microservices-Marathon by
Service Mesh - Kilometer 30 im Microservices-MarathonService Mesh - Kilometer 30 im Microservices-Marathon
Service Mesh - Kilometer 30 im Microservices-MarathonMichael Hofmann
302 views28 slides
Integrationsszenarien in modernen Anwendungslandschaften - OPITZ CONSULTING -... by
Integrationsszenarien in modernen Anwendungslandschaften - OPITZ CONSULTING -...Integrationsszenarien in modernen Anwendungslandschaften - OPITZ CONSULTING -...
Integrationsszenarien in modernen Anwendungslandschaften - OPITZ CONSULTING -...OPITZ CONSULTING Deutschland
2.7K views68 slides
Microservices - Do one thing well by
Microservices - Do one thing wellMicroservices - Do one thing well
Microservices - Do one thing wellmyposter GmbH
373 views27 slides
Microservices – die Architektur für Agile-Entwicklung? by
Microservices – die Architektur für Agile-Entwicklung?Microservices – die Architektur für Agile-Entwicklung?
Microservices – die Architektur für Agile-Entwicklung?Christian Baranowski
3.4K views33 slides

More Related Content

Similar to Servicierung von Monolithen - Der Weg zu neuen Technologien bis hin zum Service Mesh

Steinzeit war gestern! Wege der cloud-nativen Evolution by
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionQAware GmbH
623 views55 slides
7 Top Internet-Trends by
7 Top Internet-Trends7 Top Internet-Trends
7 Top Internet-TrendsMarkus Tressl
168 views76 slides
Java EE meets Microservices by
Java EE meets MicroservicesJava EE meets Microservices
Java EE meets MicroservicesOPEN KNOWLEDGE GmbH
599 views87 slides
Wie sich SaaS und PaaS in Unternehmen durchsetzen wird by
Wie sich SaaS und PaaS in Unternehmen durchsetzen wirdWie sich SaaS und PaaS in Unternehmen durchsetzen wird
Wie sich SaaS und PaaS in Unternehmen durchsetzen wirdCLOUDPILOTS Software & Consulting GmbH
865 views32 slides
DWX Developer Week 2015 - Microservice architecture applied by
DWX Developer Week 2015 - Microservice architecture appliedDWX Developer Week 2015 - Microservice architecture applied
DWX Developer Week 2015 - Microservice architecture appliedRamon Anger
290 views21 slides
Modernisierung in Zeiten wie diesen by
Modernisierung in Zeiten wie diesenModernisierung in Zeiten wie diesen
Modernisierung in Zeiten wie diesenenpit GmbH & Co. KG
1.2K views28 slides

Similar to Servicierung von Monolithen - Der Weg zu neuen Technologien bis hin zum Service Mesh(20)

Steinzeit war gestern! Wege der cloud-nativen Evolution by QAware GmbH
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
QAware GmbH623 views
DWX Developer Week 2015 - Microservice architecture applied by Ramon Anger
DWX Developer Week 2015 - Microservice architecture appliedDWX Developer Week 2015 - Microservice architecture applied
DWX Developer Week 2015 - Microservice architecture applied
Ramon Anger290 views
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis by netmedianer GmbH
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText BasisAnwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
netmedianer GmbH3.9K views
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am... by inovex GmbH
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
inovex GmbH1.3K views
Cloud Connectivity - Herausforderungen und Loesungen by Daniel Steiger
Cloud Connectivity - Herausforderungen und LoesungenCloud Connectivity - Herausforderungen und Loesungen
Cloud Connectivity - Herausforderungen und Loesungen
Daniel Steiger113 views
Innovations- und Informationskultur mit Web 2.0 (2010) by Intelliact AG
Innovations- und Informationskultur mit Web 2.0 (2010)Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)
Intelliact AG1.9K views
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J... by NETWAYS
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
NETWAYS45 views
Pragmatic SOA - Beschränken auf das Wesentliche by 1&1
Pragmatic SOA - Beschränken auf das WesentlichePragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das Wesentliche
1&11.9K views
Steinzeit war gestern! Wege der Cloud-nativen Evolution. by QAware GmbH
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
QAware GmbH659 views
Steinzeit war gestern! Wege der cloud-nativen Evolution by QAware GmbH
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
QAware GmbH527 views
Internet of Things Architecture by Christian Waha
Internet of Things ArchitectureInternet of Things Architecture
Internet of Things Architecture
Christian Waha2K views
Die dunkle Seite der Microservices - und wie du sie besiegen kannst by inovex GmbH
Die dunkle Seite der Microservices - und wie du sie besiegen kannst Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
inovex GmbH745 views
MobiCloud Transport Webinar Series - Die vernetzten ÖPNV-Mitarbeiter by Appear
MobiCloud Transport Webinar Series - Die vernetzten ÖPNV-MitarbeiterMobiCloud Transport Webinar Series - Die vernetzten ÖPNV-Mitarbeiter
MobiCloud Transport Webinar Series - Die vernetzten ÖPNV-Mitarbeiter
Appear852 views
Splunk Webinar: Splunk for Microsoft Exchange by Georg Knon
Splunk Webinar: Splunk for Microsoft ExchangeSplunk Webinar: Splunk for Microsoft Exchange
Splunk Webinar: Splunk for Microsoft Exchange
Georg Knon1.2K views

More from Michael Hofmann

Service Specific AuthZ In The Cloud Infrastructure by
Service Specific AuthZ In The Cloud InfrastructureService Specific AuthZ In The Cloud Infrastructure
Service Specific AuthZ In The Cloud InfrastructureMichael Hofmann
81 views23 slides
New Ways To Production - Stress-Free Evolution Of Your Cloud Applications by
New Ways To Production - Stress-Free Evolution Of Your Cloud ApplicationsNew Ways To Production - Stress-Free Evolution Of Your Cloud Applications
New Ways To Production - Stress-Free Evolution Of Your Cloud ApplicationsMichael Hofmann
78 views22 slides
Developer Experience Cloud Native - Become Efficient and Achieve Parity by
Developer Experience Cloud Native - Become Efficient and Achieve ParityDeveloper Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve ParityMichael Hofmann
94 views21 slides
The Easy Way to Secure Microservices by
The Easy Way to Secure MicroservicesThe Easy Way to Secure Microservices
The Easy Way to Secure MicroservicesMichael Hofmann
94 views25 slides
Service Mesh vs. Frameworks: Where to put the resilience? by
Service Mesh vs. Frameworks: Where to put the resilience?Service Mesh vs. Frameworks: Where to put the resilience?
Service Mesh vs. Frameworks: Where to put the resilience?Michael Hofmann
39 views19 slides
Service Mesh vs. Frameworks: Where to put the resilience? by
Service Mesh vs. Frameworks: Where to put the resilience?Service Mesh vs. Frameworks: Where to put the resilience?
Service Mesh vs. Frameworks: Where to put the resilience?Michael Hofmann
295 views19 slides

More from Michael Hofmann(12)

Service Specific AuthZ In The Cloud Infrastructure by Michael Hofmann
Service Specific AuthZ In The Cloud InfrastructureService Specific AuthZ In The Cloud Infrastructure
Service Specific AuthZ In The Cloud Infrastructure
Michael Hofmann81 views
New Ways To Production - Stress-Free Evolution Of Your Cloud Applications by Michael Hofmann
New Ways To Production - Stress-Free Evolution Of Your Cloud ApplicationsNew Ways To Production - Stress-Free Evolution Of Your Cloud Applications
New Ways To Production - Stress-Free Evolution Of Your Cloud Applications
Michael Hofmann78 views
Developer Experience Cloud Native - Become Efficient and Achieve Parity by Michael Hofmann
Developer Experience Cloud Native - Become Efficient and Achieve ParityDeveloper Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve Parity
Michael Hofmann94 views
The Easy Way to Secure Microservices by Michael Hofmann
The Easy Way to Secure MicroservicesThe Easy Way to Secure Microservices
The Easy Way to Secure Microservices
Michael Hofmann94 views
Service Mesh vs. Frameworks: Where to put the resilience? by Michael Hofmann
Service Mesh vs. Frameworks: Where to put the resilience?Service Mesh vs. Frameworks: Where to put the resilience?
Service Mesh vs. Frameworks: Where to put the resilience?
Michael Hofmann39 views
Service Mesh vs. Frameworks: Where to put the resilience? by Michael Hofmann
Service Mesh vs. Frameworks: Where to put the resilience?Service Mesh vs. Frameworks: Where to put the resilience?
Service Mesh vs. Frameworks: Where to put the resilience?
Michael Hofmann295 views
Developer Experience Cloud Native - From Code Gen to Git Commit without a CI/... by Michael Hofmann
Developer Experience Cloud Native - From Code Gen to Git Commit without a CI/...Developer Experience Cloud Native - From Code Gen to Git Commit without a CI/...
Developer Experience Cloud Native - From Code Gen to Git Commit without a CI/...
Michael Hofmann84 views
Service Mesh mit Istio und MicroProfile - eine harmonische Kombination? by Michael Hofmann
Service Mesh mit Istio und MicroProfile - eine harmonische Kombination?Service Mesh mit Istio und MicroProfile - eine harmonische Kombination?
Service Mesh mit Istio und MicroProfile - eine harmonische Kombination?
Michael Hofmann313 views
Service Mesh - kilometer 30 in a microservice marathon by Michael Hofmann
Service Mesh - kilometer 30 in a microservice marathonService Mesh - kilometer 30 in a microservice marathon
Service Mesh - kilometer 30 in a microservice marathon
Michael Hofmann132 views
API-Economy bei Financial Services – Kein Stein bleibt auf dem anderen by Michael Hofmann
API-Economy bei Financial Services – Kein Stein bleibt auf dem anderenAPI-Economy bei Financial Services – Kein Stein bleibt auf dem anderen
API-Economy bei Financial Services – Kein Stein bleibt auf dem anderen
Michael Hofmann59 views
Microprofile.io - Cloud Native mit Java EE by Michael Hofmann
Microprofile.io - Cloud Native mit Java EEMicroprofile.io - Cloud Native mit Java EE
Microprofile.io - Cloud Native mit Java EE
Michael Hofmann248 views
Microservices mit Java EE - am Beispiel von IBM Liberty by Michael Hofmann
Microservices mit Java EE - am Beispiel von IBM LibertyMicroservices mit Java EE - am Beispiel von IBM Liberty
Microservices mit Java EE - am Beispiel von IBM Liberty
Michael Hofmann508 views

Servicierung von Monolithen - Der Weg zu neuen Technologien bis hin zum Service Mesh

  • 1. „Servicierung“ von Monolithen Der Weg zu neuen Technologien bis hin zum Service Mesh Michael Hofmann www.hofmann-itconsulting.de Im Auftrag der DONAT group GmbH www.donat-group.de
  • 2. Die Monolithen. > 10 Jahre EAR-File, Oracle Probleme: Geringe Deployment-Frequenz, lange Downtime Update Technologie Stack Starre Architektur Skalierung im Betrieb und in Entwicklung Single Point of Failure innerhalb des Monolithen (OutOfMemory)
  • 3. Der Weg zur neuen Zielarchitektur. >> As Martin Fowler likes to say, the only thing a Big Bang rewrite guarantees is a Big Bang! << (Randy Shoup) Strangler Application Data Integration Glue (Chance Data Capture) Eventual Consistency
  • 4. Microservices. Microservice-Projekte starten klein - Greenfield, Zerlegung Monolith Anfangs ohne Versionierungs-Problematik Mehrere Versionen parallel in Produktion Anzahl der Services steigt Service-Ketten werden etabliert Wie teste ich das Zusammenspiel versionsübergreifend? Schleichender Verlust des Überblicks: Wer mit wem in welcher Version?
  • 5. Big Ball of Mud. Quelle: https://twitter.com/Werner/status/741673514567143424 (Werner Vogels, CTO Amazon) Quelle: Adrian Cockcroft (Netflix) / Martin Fowler
  • 6. Was kommt noch? Komplexität auch zwischen den Services Fallacies of Distributed Systems Wer kümmert sich darum? Container-Systeme? Resilienz-Frameworks? The network is reliable. Latency is zero. Bandwidth is infinite. The network is secure. Topology doesn‘t change. There is one administrator. Transport cost is zero. The network is homogeneous. Anwendung sollte nichts davon wissen!
  • 7. Service Mesh. >> The term service mesh is used to describe the network of microservices that make up such application and the interactions between them. << (istio.io) Ohne Werkzeug lässt sich Service Mesh (Big Ball of Mud) kaum beherrschen!
  • 8. Service Mesh Functions. Service Discovery Load Balancing Resilience Dynamic Routing (Blue/Green Deployments, Canary Releasing, Traffic Mirroring) Observability (Metrics, Tracing) End-to-End Authentication, Access Control Rate Limiting
  • 9. Istio. GOOGLE (ISTIO)  Content-based routing  Rate limiting  ACLs  Telemetry  Kubernetes integration LYFT (ENVOY)  Proxy (sidecar) IBM (AMALGAM8)  Content-based routing (extended)  Service discovery  Resilience  Load balancing
  • 11. Envoy Proxy. Design Goal: >> The network should be transparent to applications. When network and application problems do occur it should be easy to determine the source of the problem. << Als Container gemeinsam mit Service deployed „Man-in-the-Middle“ Als Sidecar transparent für Service Service-Discovery, Load Balancing, Resilience, Health-Checks, Metrics, Fault Injection Kommunikation mit Mixer (Telemetrie) und Pilot (Policies)
  • 12. Istio Rules. TRAFFIC MANAGEMENT  Starre/dynamische (HTTP-Header)  95%-5% Verteilung (Canary)  Traffic Mirroring RESILIENZ  Timeout, Retry, CircuitBreaker, Bulkhead  Testen der Resilienz mit Fault Injection: x% mit Delay, y% mit HTTP-Status Code (5xx)