CLOUD-NATIVE APPS -
ARCHITEKTUR, IMPLEMENTIERUNG, DEMO
DOAG 2016, Nürnberg
Andreas Koop
ÜBER MICH
Consultant, Trainer, Architect

10+ Jahre Berufserfahrung

Certified Professional for Software Architecture

Professional Scrum Master

Oracle ACE Director



Community

DOAG, ADF EMG, ADF German Community, Google Plus,

GitHub, Twitter @andreaskoop @enpit



Blogger

Technical (en) - http://multikoop.blogspot.com

new Technical (en) - https://medium.com/enpit-developer-blog

News - http://www.enpit.de/blog
2
www.scope-alliance.de
Andreas Koop
ÜBER ENPIT
Digitalisierung
IT-Strategie
Team-Enabling
Agilität
Technologie
enable
pragmatic itenterprise
Paderborn, 14.02.2014
DATEN UND FAKTEN
4
‣ Gründung: 07/2012

Teamgröße: 7

Unternehmenssitz: Paderborn
‣ Partnerschaften: Oracle, Scope Alliance
‣ Beratung, Training, Innovationsmanagement, Development
‣ Branchen: Öffentliche Verwaltung, Banking, Automotive
DOAG 2016, Nürnberg, Andreas Koop
AGENDA
Was heißt „Cloud-native“?
Architektur & Implementierungen
Demo
Fazit & Ausblick
5
DOAG 2016, Nürnberg, Andreas Koop
WAS IST CLOUD-NATIVE ?
6
„Traditionell“ „Cloud-Native“
- Monolithisch, „Schichtenarchitektur“
- 3 Releases / Jahr
- 1 Programmiersprache / Version
- Abhängig von App Server
- API als Implementierungsschnittstelle
- Enge Bindung von UI / Backend
- 1 großes Team
- Dev <-> Ops
- Microservice basiert, Vertikalen, SCS
- Releases alle 2 Wochen oder öfter

(Continuously)
- n Programmiersprachen / m Version
- Meist in Containern paketiert
- API als Service- / UI-Schnittstelle
- Lose Kopplung von UI / App / Backend
- n Pizza- / Agile-Teams
- DevOps
DOAG 2016, Nürnberg, Andreas Koop
WARUM CLOUD NATIVE?

AUS BUSINESS PERSPEKTIVE
7
KostenoptimierungAgilitätSpeed
Digitalisierung /
Neue Geschäftsmodelle
Kontinuierliche

UX- Verbesserung

erwartet
Service,

nicht Produkt
„pay per execution“„Continuous Innovation“
DOAG 2016, Nürnberg, Andreas Koop
BEISPIEL
8
Produktkatalog
Warenkorb
Warenkorb
Warenkorb
Bewertung / Review
Bewertung / Review
Bewertung / Review
Team:
Warenkorb /
Checkout
Team: Produktkatalog / Website
Team: Bewertungssystem
Team: Mobile
DOAG 2016, Nürnberg, Andreas Koop
WAS BRAUCHT MAN ALLES?
9
12factor und mehr
API First
Microservices
Security
Dependencies
Configuration
Resilienz
Build, Release, Run
1 or more stateless processes
Cloud / Container Infrastruktur
Skalierbarkeit
Fast startup, gracefull shutdown
Dev / Prod Parity
Monitoring
CI, CD, DevOps, NoOps
API Gateway
User Interface
Storage State
DOAG 2016, Nürnberg, Andreas Koop 10
DOAG 2016, Nürnberg, Andreas Koop
AGENDA
Was heißt „Cloud-native“?
Architektur & Implementierungen
Demo
Fazit & Ausblick
11
DOAG 2016, Nürnberg, Andreas Koop 12
Präsentation
UI Logik
Datenschicht / ESB
Business Logik
API Layer More
APIs
ServerClient
Services
MODERN, CLOUD
WEB APP ARCHITECTURE
DOAG 2016, Nürnberg, Andreas Koop
µS
UI
µS
UI
µS
+ Service Discovery
+ Configuration Management
+ Skalierung
+ Monitoring
+ …
Load Balancer
API Platform
Data Oracle DB, MySQL, NoSQL, etc..
Polyglot if needed,
Business ServicesIntegration
Legacy
REST Services

Developer Portal
IaaS / Container Management
DOAG 2016, Nürnberg, Andreas Koop
CORE SERVICES FÜR 

CLOUD-NATIVE APPS
14
Developer Cloud Service -
Codebase / Agility / Code Reviews / CI / CD
Container Cloud -
Container Management 

& Orchestration
Infrastructure as a Service
Application Container Cloud Service
-
„Microservices“ - Java / Node.JS, PHP, etc.
API Platform
-
Manage APIs, …
not yet available
DOAG 2016, Nürnberg, Andreas Koop 15
APPLICATION
CONTAINER
Load Balancer
Docker
Java SE 

App
Docker
Node.js 

App
Docker
<Tech-X>
App
Docker
Java SE 

App
Docker
Node.js 

App
Docker
<Tech-X>
App
DBCS MySQL
CLOUD
SERVICE
NoSQL …
… …
DOAG 2016, Nürnberg, Andreas Koop
AGENDA
Was heißt „Cloud-native“?
Architektur & Implementierungen
Demo
Fazit & Ausblick
16
DOAG 2016, Nürnberg, Andreas Koop
BUILD, DEPLOY, RUN, SCALE
17
Docker
Java SE 

App
ACCSDevCS
Build
Deploy on Demand
DOAG 2016, Nürnberg, Andreas Koop
REGISTER NODE APP
18
DOAG 2016, Nürnberg, Andreas Koop
REGISTER JAVA APP
19
DOAG 2016, Nürnberg, Andreas Koop
JAVA SE - EMBEDDED TOMCAT
20
DOAG 2016, Nürnberg, Andreas Koop 21
DOAG 2016, Nürnberg, Andreas Koop
SERVICE BINDING
22
DOAG 2016, Nürnberg, Andreas Koop
LOGS
23
DOAG 2016, Nürnberg, Andreas Koop
CONNECTION TO DBCS
24
DOAG 2016, Nürnberg, Andreas Koop
SAMPLE: REST SERVICE
25
DOAG 2016, Nürnberg, Andreas Koop
OVERVIEW - SCALE UP / DOWN
26
DOAG 2016, Nürnberg, Andreas Koop
AGENDA
Was heißt „Cloud-native“?
Architektur & Implementierungen
Demo
Fazit & Ausblick
27
Andreas Koop 28
DEMO
DOAG 2016, Nürnberg, Andreas Koop
AGENDA
Was heißt „Cloud-native“?
Architektur & Implementierungen
Demo
Fazit & Ausblick
29
DOAG 2016, Nürnberg, Andreas Koop 30
FAZIT
DOAG 2016, Nürnberg, Andreas Koop 31
DAS TEMPO ZUR BEREITSTELLUNG
VON SYSTEMEN ÄNDERT SICH
SEKUNDEN, STATT WOCHEN!
DOAG 2016, Nürnberg, Andreas Koop 32
ABO STATT LIZENZ
SKALIERBARKEIT NACH BEDARF
„PER-EXECUTION“ KOSTEN
SERVICE STATT PRODUKT
DOAG 2016, Nürnberg, Andreas Koop 33
TECHNOLOGIE IM DETAIL SPIELT
EINE UNTERGEORDNETE ROLLE
SQL / NOSQL / ..
JAVA /JAVASCRIPT / PHP / RUBY / ..
JSON / XML / CSV / ..
FOKUS AUF
CONTAINER, REST, API, LIGHTWEIGHT UI !
DOAG 2016, Nürnberg, Andreas Koop 34
Architektur und Schnittstellen ändern sich
- kein kanonisches Datenmodell
- keine Integration über die Datenbank
Stattdessen
- „Shared Nothing“
- Messaging
- „CQRS“
DOAG 2016, Nürnberg, Andreas Koop
ZUSAMMENFASSUNG & FAZIT
‣ Cloud-native macht Spaß, ist schnell. Komplexität
entsteht im Wirkungsgefüge von Microservices
‣ Standardisieren, trotz Polyglottie-Freiheit
‣ Verbreitung von „Serverless“ Konzepten

„Event-Driven“, „Pay-per-Execution“, Auto-Scaling
‣ new: Oracle Container Cloud Service
‣ coming soon?: Oracle Function Cloud Service
35
VIELEN DANK FÜR IHRE
AUFMERKSAMKEIT
HABEN SIE NOCH FRAGEN?
Cloud-native Apps – Architektur, Implementierung, Demo

Cloud-native Apps – Architektur, Implementierung, Demo

  • 1.
    CLOUD-NATIVE APPS - ARCHITEKTUR,IMPLEMENTIERUNG, DEMO DOAG 2016, Nürnberg Andreas Koop
  • 2.
    ÜBER MICH Consultant, Trainer,Architect
 10+ Jahre Berufserfahrung
 Certified Professional for Software Architecture
 Professional Scrum Master
 Oracle ACE Director
 
 Community
 DOAG, ADF EMG, ADF German Community, Google Plus,
 GitHub, Twitter @andreaskoop @enpit
 
 Blogger
 Technical (en) - http://multikoop.blogspot.com
 new Technical (en) - https://medium.com/enpit-developer-blog
 News - http://www.enpit.de/blog 2 www.scope-alliance.de Andreas Koop
  • 3.
  • 4.
    Paderborn, 14.02.2014 DATEN UNDFAKTEN 4 ‣ Gründung: 07/2012
 Teamgröße: 7
 Unternehmenssitz: Paderborn ‣ Partnerschaften: Oracle, Scope Alliance ‣ Beratung, Training, Innovationsmanagement, Development ‣ Branchen: Öffentliche Verwaltung, Banking, Automotive
  • 5.
    DOAG 2016, Nürnberg,Andreas Koop AGENDA Was heißt „Cloud-native“? Architektur & Implementierungen Demo Fazit & Ausblick 5
  • 6.
    DOAG 2016, Nürnberg,Andreas Koop WAS IST CLOUD-NATIVE ? 6 „Traditionell“ „Cloud-Native“ - Monolithisch, „Schichtenarchitektur“ - 3 Releases / Jahr - 1 Programmiersprache / Version - Abhängig von App Server - API als Implementierungsschnittstelle - Enge Bindung von UI / Backend - 1 großes Team - Dev <-> Ops - Microservice basiert, Vertikalen, SCS - Releases alle 2 Wochen oder öfter
 (Continuously) - n Programmiersprachen / m Version - Meist in Containern paketiert - API als Service- / UI-Schnittstelle - Lose Kopplung von UI / App / Backend - n Pizza- / Agile-Teams - DevOps
  • 7.
    DOAG 2016, Nürnberg,Andreas Koop WARUM CLOUD NATIVE?
 AUS BUSINESS PERSPEKTIVE 7 KostenoptimierungAgilitätSpeed Digitalisierung / Neue Geschäftsmodelle Kontinuierliche
 UX- Verbesserung
 erwartet Service,
 nicht Produkt „pay per execution“„Continuous Innovation“
  • 8.
    DOAG 2016, Nürnberg,Andreas Koop BEISPIEL 8 Produktkatalog Warenkorb Warenkorb Warenkorb Bewertung / Review Bewertung / Review Bewertung / Review Team: Warenkorb / Checkout Team: Produktkatalog / Website Team: Bewertungssystem Team: Mobile
  • 9.
    DOAG 2016, Nürnberg,Andreas Koop WAS BRAUCHT MAN ALLES? 9 12factor und mehr API First Microservices Security Dependencies Configuration Resilienz Build, Release, Run 1 or more stateless processes Cloud / Container Infrastruktur Skalierbarkeit Fast startup, gracefull shutdown Dev / Prod Parity Monitoring CI, CD, DevOps, NoOps API Gateway User Interface Storage State
  • 10.
    DOAG 2016, Nürnberg,Andreas Koop 10
  • 11.
    DOAG 2016, Nürnberg,Andreas Koop AGENDA Was heißt „Cloud-native“? Architektur & Implementierungen Demo Fazit & Ausblick 11
  • 12.
    DOAG 2016, Nürnberg,Andreas Koop 12 Präsentation UI Logik Datenschicht / ESB Business Logik API Layer More APIs ServerClient Services MODERN, CLOUD WEB APP ARCHITECTURE
  • 13.
    DOAG 2016, Nürnberg,Andreas Koop µS UI µS UI µS + Service Discovery + Configuration Management + Skalierung + Monitoring + … Load Balancer API Platform Data Oracle DB, MySQL, NoSQL, etc.. Polyglot if needed, Business ServicesIntegration Legacy REST Services
 Developer Portal IaaS / Container Management
  • 14.
    DOAG 2016, Nürnberg,Andreas Koop CORE SERVICES FÜR 
 CLOUD-NATIVE APPS 14 Developer Cloud Service - Codebase / Agility / Code Reviews / CI / CD Container Cloud - Container Management 
 & Orchestration Infrastructure as a Service Application Container Cloud Service - „Microservices“ - Java / Node.JS, PHP, etc. API Platform - Manage APIs, … not yet available
  • 15.
    DOAG 2016, Nürnberg,Andreas Koop 15 APPLICATION CONTAINER Load Balancer Docker Java SE 
 App Docker Node.js 
 App Docker <Tech-X> App Docker Java SE 
 App Docker Node.js 
 App Docker <Tech-X> App DBCS MySQL CLOUD SERVICE NoSQL … … …
  • 16.
    DOAG 2016, Nürnberg,Andreas Koop AGENDA Was heißt „Cloud-native“? Architektur & Implementierungen Demo Fazit & Ausblick 16
  • 17.
    DOAG 2016, Nürnberg,Andreas Koop BUILD, DEPLOY, RUN, SCALE 17 Docker Java SE 
 App ACCSDevCS Build Deploy on Demand
  • 18.
    DOAG 2016, Nürnberg,Andreas Koop REGISTER NODE APP 18
  • 19.
    DOAG 2016, Nürnberg,Andreas Koop REGISTER JAVA APP 19
  • 20.
    DOAG 2016, Nürnberg,Andreas Koop JAVA SE - EMBEDDED TOMCAT 20
  • 21.
    DOAG 2016, Nürnberg,Andreas Koop 21
  • 22.
    DOAG 2016, Nürnberg,Andreas Koop SERVICE BINDING 22
  • 23.
    DOAG 2016, Nürnberg,Andreas Koop LOGS 23
  • 24.
    DOAG 2016, Nürnberg,Andreas Koop CONNECTION TO DBCS 24
  • 25.
    DOAG 2016, Nürnberg,Andreas Koop SAMPLE: REST SERVICE 25
  • 26.
    DOAG 2016, Nürnberg,Andreas Koop OVERVIEW - SCALE UP / DOWN 26
  • 27.
    DOAG 2016, Nürnberg,Andreas Koop AGENDA Was heißt „Cloud-native“? Architektur & Implementierungen Demo Fazit & Ausblick 27
  • 28.
  • 29.
    DOAG 2016, Nürnberg,Andreas Koop AGENDA Was heißt „Cloud-native“? Architektur & Implementierungen Demo Fazit & Ausblick 29
  • 30.
    DOAG 2016, Nürnberg,Andreas Koop 30 FAZIT
  • 31.
    DOAG 2016, Nürnberg,Andreas Koop 31 DAS TEMPO ZUR BEREITSTELLUNG VON SYSTEMEN ÄNDERT SICH SEKUNDEN, STATT WOCHEN!
  • 32.
    DOAG 2016, Nürnberg,Andreas Koop 32 ABO STATT LIZENZ SKALIERBARKEIT NACH BEDARF „PER-EXECUTION“ KOSTEN SERVICE STATT PRODUKT
  • 33.
    DOAG 2016, Nürnberg,Andreas Koop 33 TECHNOLOGIE IM DETAIL SPIELT EINE UNTERGEORDNETE ROLLE SQL / NOSQL / .. JAVA /JAVASCRIPT / PHP / RUBY / .. JSON / XML / CSV / .. FOKUS AUF CONTAINER, REST, API, LIGHTWEIGHT UI !
  • 34.
    DOAG 2016, Nürnberg,Andreas Koop 34 Architektur und Schnittstellen ändern sich - kein kanonisches Datenmodell - keine Integration über die Datenbank Stattdessen - „Shared Nothing“ - Messaging - „CQRS“
  • 35.
    DOAG 2016, Nürnberg,Andreas Koop ZUSAMMENFASSUNG & FAZIT ‣ Cloud-native macht Spaß, ist schnell. Komplexität entsteht im Wirkungsgefüge von Microservices ‣ Standardisieren, trotz Polyglottie-Freiheit ‣ Verbreitung von „Serverless“ Konzepten
 „Event-Driven“, „Pay-per-Execution“, Auto-Scaling ‣ new: Oracle Container Cloud Service ‣ coming soon?: Oracle Function Cloud Service 35
  • 36.
    VIELEN DANK FÜRIHRE AUFMERKSAMKEIT HABEN SIE NOCH FRAGEN?