SlideShare ist ein Scribd-Unternehmen logo
1 von 138
Downloaden Sie, um offline zu lesen
From Zero to Hero
still Zero
X
Die schönsten Fehler auf dem Weg in die Cloud
Lars Röwekamp | @mobileLarson
@mobileLarson
CIO New Technologies
OPEN KNOWLEDGE
Lars Röwekamp
(Architecture, Microservices, Cloud, AI & ML)
Warum
Cloud?
aktive Nutzer
Planer/Diskutierer
(noch) kein Thema
Cloud
Monitor
(Bitcom Research, 2021, https://www.bitkom.org/Presse/Presseinformation/Drei-von-vier-Unternehmen-nutzen-Cloud-Computing)
15%
82%
From idea to App
The biggest advantage of a cloud(-native)
architecture is that it takes you from idea
to app in the quickest possible time.
“
(Pavan Belagatti, Groth Marketing Manager, jfrog)
Customer Survey
“Welche Mehrwerte erhoffen sie sich von der Cloud?“
Cloud-Mehrwerte*
• Top 1: Agilität
*aus Kundensicht
Cloud-Mehrwerte*
• Top 1: Agilität
• Top 2: Plattformservices
*aus Kundensicht
Cloud-Mehrwerte*
• Top 1: Agilität
• Top 2: Plattformservices
• Top 3: Kostenmodelle
*aus Kundensicht
Cloud-Mehrwerte*
• Top 1: Agilität
• Top 2: Plattformservices
• Top 3: Kostenmodelle
• Top 4: Innovationen
*aus Kundensicht
I promise!
(Amazon, Google, Microsoft, IBM…)
Die Cloud-Versprechen
1. Software-as-a-Service
2. Virtualization
3. Pay-per-Use
4. High Availability
5. Scale-Up / Scale-Out
6. IaaS, PaaS, BaaS, SaaS
Die Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Die Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
BTW: kein Vendor-Lockin*
* Cloud-native „done right“
* Cloud-native „done right“
„What could
possibly go
wrong?“
Cloud? Yeah!
(Famous last words!)
Road to the Cloud
Running applications on the cloud is not a
binary decision. You don‘t just move to the
cloud and call it a day.
“
(Paul Fremantle, VP Product Engineering at Weaveworks)
„Es könnte alles
so einfach sein …“
(… isses aber nich!)
Lift & Shift
Für den Anfang gut,
aber auf Dauer auch
gut genug?
01
myApp
myApp
myApp
App Server
App Server
App Server
PRODUCTION
on prem
Self-Managed
Load Balancer
myFS
myMQ
myDB
myApp
myApp
myApp
App Server
App Server
App Server
PRODUCTION
on prem
INTEGRATION*
Self-Managed
Load Balancer
*same but different
myFS
myMQ
myDB
„cool“ API
Web Content
v1.3
v2.1
DEV Team
„cool“ API
Web Content
v1.3
v2.1
NEW NEW
DEV Team
Release
v1.3
v2.1
v2.2 v2.0
OPS „Team“
Release
v1.3
v2.1
v2.2 v2.0
OPS „Team“
Release
v2.0
v2.2
„Let‘s pray!“
„cool“ API
v2.0
Web Content
v2.2
OPS „Team“
Release
aka Dooms-Day
v2.0
v2.2
v2.0.hfr
„Let‘s pray!“
„And do some hotfixes!“
„cool“ API
v2.0
Web Content
v2.2
Release
aka Dooms-Day
+ X
v2.0.hfr
v2.2
„cool“ API
v2.0
Web Content
v2.2
Release
next version
Lift & Shift
Superpower
„Entsorgen der eigenen Infrastruktur.“
1. Nutzen von Cloud Servern
2. Schnelle und einfache Provisionierung
3. An der Anwendung keine Änderungen
Keine große Umgewöhnung
myApp
myApp
myApp
App Server
App Server
App Server
PRODUCTION
on prem
Self-Managed
Load Balancer
myFS
myMQ
myDB
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing Load Balancer
myDB
EC2 Instance
myFS
EC2 Instance
myMQ
EC2 Instance
PRODUCTION
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing Load Balancer
myDB
EC2 Instance
myFS
EC2 Instance
myMQ
EC2 Instance
PRODUCTION
List & Shift
Lift & Shift
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Lift & Shift
Limitations
„Cloud? Auch nur Server – halt woanders.“
1. Kaum (Cloud-)Mehrwerte gehoben
2. In der Regel teurer als on-premise
3. Performance / Latency / Security Risiko*
4. Mainframe Migration nicht möglich
*fehlendes Verständnis für die Cloud
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer
myDB
EC2 Instance
myFS
EC2 Instance
myMQ
EC2 Instance
WHY
ME
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer
Queue
RDBMS
File
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer noSQL
Queue
RDBMS
File Storage Archive
Managed Services
• Auto-Backup / -Restore
• Object / Data Versioning
• Security Patches
• Availabily Zones
• Region Replica
• Standby Instances
• Integrated Security
• Integrated Monitoring
• Integrated Eventing
• Flexible Sizing*
• Pay-per-Use*
• Spot Instances*
* depends
List & Shift
Lift & Shift
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Lift & Shift & Managed Services
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Vendor Lock-in
Ich will dich lieben,
achten und ehren.
in guten und
in schlechten Zeiten.
02
Vendor Lock-in aka „Best Friends 4ever“
200+
Services
2000+
Features
Vendor Lock-in
Superpower
„Alles aus einer Hand.“
1. Hoher Grad an Integration
2. Full-Service Component Management
3. Gutes Preis-/Leistungsverhältnis
4. No more DIY ;-)
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer noSQL
Queue
RDBMS
File Storage Archive
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer noSQL
Queue
RDBMS
File Storage Archive
„Automatische
Bereitstellung
& Skalierung?“
Kein Problem, da
haben wir einen
Cloud Service für!“
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
low
high
Level of Integration & Ease of Use
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
Level of „Cloud Native“
high
low
low
high
Level of Integration & Ease of Use
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
Level of „Cloud Native“
high
low
low
high
Level of Integration & Ease of Use
AWS App Runner
Source: https://aws.amazon.com/de/apprunner/
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer noSQL
Queue
RDBMS
File Storage Archive
Ausgangsbasis
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
AWS App Runner
Zielbild
DEVOPS
Elastic Container Registry
AWS App Runner
Service Source
Deployment Mode
Min / Max Scaling
Networking / Ports
Monitoring
Health Checks
Docker Image
App Runner Service:
Scaling, Security, Network
at Deployment
DEVOPS
AWS App Runner
App Runner Service:
Scaling, Security, Network
API v1.0
Scale in / out
AWS Backing Services
at Runtime
DEVOPS
AWS App Runner
App Runner Service:
Monitoring
(e.g. via CloudWatch)
API v1.0
Service Status, Active Instances
CPU & Memory Utilization, User Actions …
CloudWatch
Logs
Alarm Synthetics
Rules
at Runtime
Health: Container, App
Metrics: Cpu, Memory
DEVOPS
AWS App Runner
App Runner Service:
Monitoring
(e.g. via CloudWatch)
API v1.0
Service Status, Active Instances
CPU & Memory Utilization, User Actions …
Health: Container, App
Metrics: Cpu, Memory
myHealth: App Components
myMetrics: Functional, Business
CloudWatch
Logs
Alarm Synthetics
Rules
at Runtime
App Runner in Action:
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
AWS App Runner
Availability Zone C
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
Availability Zone A
Availability Zone B
Ach ja, ich hätte gerne noch …
AWS App Runner
Availability Zone C
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
Availability Zone A
Availability Zone B
appX
appX
appX
Ach ja, ich hätte gerne noch …
AWS App Runner
Availability Zone C
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
Availability Zone A
Availability Zone B
appX
appX
appX
OUT OF FLEXIBILTY ERROR
AWS App Runner
Vendor Lock-in
Limitation
„Wie war das mit dem ewig binden?“
1. Kaum bis keine Portierbarkeit / Flexibilität
2. Häufig proprietäres Wissen / Format
3. Abhängig von Support Cycles / End-of-Life
Wechsel ist möglich und oft wenig aufwendig,
aber der Zeitpunkt ist nicht selbstbestimmt!
Availability Zone C
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
Availability Zone A
Availability Zone B
appX
appX
appX WHAT
NOW
AWS App Runner
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
Level of „Cloud Native“
high
low
low
high
Level of Integration & Ease of Use
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
Level of „Cloud Native“
high
low
low
high
Level of Integration & Ease of Use
AWS
App Runner
Service
Elastic
Container
Service
Elastic
Kubernetes
Service
Level of „Cloud Native“
high
low
low
high
Level of Integration & Ease of Use
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
AWS App Runner
Availability Zone C
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Availability Zone A
Availability Zone B
appX
appX
appX
Elastic Kubernetes Service
ALB
Controller
Kubernetes à la AWS aka managed
Vendor Lock-in
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Vendor Lock-in mit Verstand
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
ClickOps
Die Web Console, aka
des Cloud Admins
bester Freund.
03
ClickOps aka „Wie geht das?“
AWS Cloud
Availability Zone 1
VPC
Public subnet
NAT gateway
Private subnet
Auto Scaling
group
Bastion host
Availability Zone 2
Public subnet
NAT gateway
Private subnet
Availability Zone 3
Public subnet
NAT gateway
Private subnet
Amazon
EKS
Kubernetes nodes Kubernetes nodes Kubernetes nodes
Auto Scaling
group
Source: https://github.com/aws-ia/cloudformation-base-eks
ClickOps
Superpower
„Nur einen Klick entfernt.“
1. Anlegen / Ändern via Wizards
2. Kein Stress mit Rollen & Rechten
3. Vereinfachung der Provisionierung
Gut für den Aufbau von Verständnis / Wissen
ClickOps aka „Wie geht das?“
ClickOps aka „Wie geht das?“
ClickOps aka „Wie geht das?“
ClickOps aka „Wie geht das?“
ClickOps aka „Wie geht das?“
ClickOps
Limitation
„Alles ganz einfach, aber …“
1. Grenzen der Reproduzierbarkeit
2. Grenzen der Wiederverwendung
3. Grenzen der Versionierung
4. Grenzen der Testbarkeit
AWS Cloud
Availability Zone 1
VPC
Public subnet
NAT gateway
Private subnet
Auto Scaling
group
Bastion host
Availability Zone 2
Public subnet
NAT gateway
Private subnet
Availability Zone 3
Public subnet
NAT gateway
Private subnet
Amazon
EKS
Kubernetes nodes Kubernetes nodes Kubernetes nodes
Auto Scaling
group
Source: https://github.com/aws-ia/cloudformation-base-eks
CLI & IaC „Sag mir, was du willst!“
deklarative
Beschreibung
des Zielbilds
CloudFormation
IaC Template
CLI & IaC „Sag mir, was du willst!“
1. write template(s)
2. create stack
3. detect drift
4. update stack
CLI & IaC „Sag mir, was du willst!“
deklarative
Beschreibung
des Zielbilds
IaC „Sag mir, was du willst!“
deklarative
Beschreibung
des Zielbilds
1. write template(s)
2. create stack
3. detect drift
4. update stack
PANIK!
Vendor Lock-in!
deklarative
Beschreibung
des Zielbilds
Terraform
IaC Template
CLI & IaC „Sag mir, was du willst!“
1. terraform init
2. terraform plan
3. terraform apply
4. terraform destroy
deklarative
Beschreibung
des Zielbilds
CLI & IaC „Sag mir, was du willst!“
1. terraform init
2. terraform plan
3. terraform apply
4. terraform destroy
deklarative
Beschreibung
des Zielbilds
CLI & IaC „Sag mir, was du willst!“
„MOI?“
Na, dann
vielen Dank!
Shared Responsibility Model Security
Customer Data
Platform, Applications, Identity & Access Management
Operating System, Network & Firewall Configuration
Client-side Data
Encryption & Data
Integrity Authentication
Server-side Encryption
(File System an/or Data)
Network Traffic Protection
(Encryption/Integrity/Identity)
Customer
Responsibility for
security „in“
the cloud
Application
Development
Team
Compute Storage Database Networking
Edge
Locations
Regions
Availability Zones
AWS
Responsibility for
security „of“
the cloud
Cloud
Service
Provider
AWS Global
Infrastructure
Shared Responsibility Model Security
Acct Mgmt AMI Bakery 3rd Party Vendor Mgmt
Security & GRC Framework
Monitoring & Logging Framework
Client
PaaS
Responsibility for
security „in“
the cloud platform
Cloud
Platform
Team
Customer Data
Platform, Applications, Identity & Access Management
Operating System, Network & Firewall Configuration
Client-side Data
Encryption & Data
Integrity Authentication
Server-side Encryption
(File System an/or Data)
Network Traffic Protection
(Encryption/Integrity/Identity)
Customer Responsibility for
security „in“
the cloud
Application
Development
Team
Compute Storage Database Networking
Edge
Locations
Regions
Availability Zones
AWS
Responsibility for
security „of“
the cloud
Cloud
Service
Provider
AWS Global
Infrastructure
ClickOps
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
ClickOps als Ausgangsbasis für IaC*
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
* und Platform Team
NCRS*
Die Zeit der „eh da“
Mentalität ist vorbei,
es sei denn du hast viel,
sehr viel Geld.
04 *Never Change a Running System
NCRS*
Superpower
„Wat löppt, dat löppt.“
1. Ressourcen sind einfach provisioniert
2. Rollen / Rechte sind schnell vergeben
3. ClickOps kompatibel
*Never Change a Running System
Source: https://www.ciodive.com/news/with-the-cloud-comes-a-side-effect-cost-overrun
NCRS-Denke aka „Zeit ist Geld“
NCRS-Denke aka „Zeit ist Geld“
Source: https://www.webapper.com/aws-cost-horror-stories/
NCRS-Denke aka „Zeit ist Geld“
NCRS
Limitation
„Das ist aber ganz schön teuer!“
1. Verlagerung des Dev-Lifecycles
2. gefährliches Halbwissen
3. Missachtung des PoLP*
4. fehlende Kostenoptimierung
*Principle of Least Privilege
Cost Optimization
Step 1:
Architect for
cost efficency aka
„Pay for what you
think you need.“
Step 2:
Optimize usage
cost aka
„Pay for what
you realy use.“
Step 3:
Take advantage of
benefits over time aka
„Pay for what you
really need.“
Step-by-Step Ansatz
Cost Optimization
Am Beispiel von EC2 Instanzen
On-Demand Instances:
• Pay-as-you-go auf Basis von angefangenen Stunden*
• vorheriges Commitment nicht notwendig
*bei einigen Systemen auch pro angefangener Minute
Cost Optimization
Am Beispiel von EC2 Instanzen
Reserved Instances:
• Up-front-Fee auf Basis des Commitments
• Pay-as-you-go zu günstigeren Preisen auf Basis von angefangenen Stunden*
• vorheriges Commitment für ein oder drei Jahre notwendig
• Marketplace für kürzere Commitments
• 10% Preisvorteil bei einem Commitment auf min. 1200 Stunden / Jahr
• 30% - 60% Preisvorteil bei einem Commitment auf ein bis drei Jahre
Cost Optimization
Am Beispiel von EC2 Instanzen
Spot Instances:
• Pay-what-you-want für „freie“ Kapazitäten
• Instanz läuft, wenn Bet-Preis den Spot-Preis übersteigt
• Bei Verfügbarkeit extremes Sparpotential
• 40% - 60% Preisvorteil bei Spot Blocks von 2-6 Stunden
• bis zu 85% Preisvorteil bei echten Spots mit 2 Minuten „Warnzeit“
Cost Optimization
Am Beispiel von EC2 Instanzen
Real-Life Szenario:
• RIs für planbare / bekannte Workload
• Autoscale-Groups für den Rest
• Spot Instances, wenn möglich
• On-Demand Instances, alternativ
Reserved Spot On-Demand
Cost Optimization
Am Beispiel von S3 Object Store
On-Demand:
• flexibler Object Store
• Zugriff im Millisekundenbereich
• automatische Object Versionierung
• beliebig on-demand skalierbar
• 99,99% Verfügbarkeit
• 99,999999999% Zuverlässigkeit (Durability)
Cost Optimization
Am Beispiel von S3 Object Store
Reduced Redundancy:
• alles wie bei „on-demand“, außer
• 99.99% Zuverlässigkeit (Durability)
• einer statt zwei fehlertollerante Standorte
• einige wenige % Preisvorteil
Cost Optimization
Am Beispiel von S3 Object Store
Infrequent Access:
• alles wie bei „on-demand“, außer …
• weniger als zwei Zugriffe je Data / Monat
• bis zu 50% Preisvorteil bei Zugriff in Millisekunden
Cost Optimization
Am Beispiel von S3 Object Store
Glacier:
• alles wie bei „on-demand“, außer …
• verlängerte Zugriffszeit von 1 Minute bis 12 Stunden*
• bis zu 65% Preisvorteil bei Minuten
• bis zu 95% Preisvorteil bei Stunden
*für Archivierung, Long-Term Backups und alte Daten
NCHARS-Denke
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
NCHARS-Denke mit Plan
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Architektur
Kann ich meinen geliebten
Multi-Tier Monolithen auch
in der Cloud sinnvoll nutzen?
05
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Architektur aka „EIN-fach einfach“
ALB
Controller
Elastic Kubernetes Service
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Architektur aka „EIN-fach einfach“
ALB
Controller
Elastic Kubernetes Service
myApp
Architektur
Superpower
„Der Multi-Tier Monolith: EIN-fach einfach!“
1. einfach in der Entwicklung
2. einfach im Testing
3. einfach im Deployment
4. einfach im Monitoring
5. einfach im Debugging
Systems for the Cloud
For systems to behave well on the cloud,
they need to be written for the cloud.*
“
* Applications vs. Software-as-a-Service
(Paul Fremantle, VP Product Engineering at Weaveworks)
Eine Codebase
Explizite Abhängigkeiten
Konfiguration via EnvVars
Unterstützende Dienste
Build, Release, Run
Stateless Prozesse
Bindung an Ports
Nebenläufigkeit
Elastizität & Verfügbarkeit
Dev-Prod Vergleichbarkeit
Logs als Streams
Admin-Prozesse
VII.
VIII.
IX.
X.
XI.
XII.
I.
II.
III.
IV.
V.
VI.
Eine Codebase
Explizite Abhängigkeiten
Konfiguration via EnvVars
Unterstützende Dienste
Build, Release, Run
Stateless Prozesse
Bindung an Ports
Nebenläufigkeit
Elastizität & Verfügbarkeit
Dev-Prod Vergleichbarkeit
Logs als Streams
Admin-Prozesse
VII.
VIII.
IX.
X.
XI.
XII.
I.
II.
III.
IV.
V.
VI.
APP
DESIGN
MANAGE
BUILD &
RELEASE
Architektur
Limitation
„Der Multi-Tier Monolith: EIN-fach zu einfach!“
1. single Build - & Deployment Unit
2. starre Kopplung von Komponenten
3. Skalierung via „all-or-nothing“
4. meist kein API-first Design
Routing
Queue
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
myApp
myApp
myApp
Availability Zone A
Availability Zone B
Availability Zone C
Elastic Kubernetes Service
Architektur aka „EIN-fach zu einfach“
No
SaaS
Exception
Routing
Queue
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
Availability Zone A
Availability Zone B
Availability Zone C
Elastic Kubernetes Service
Architektur aka „Software-as-a-Service“
MS
MS
MS
MS
MS
MS
MS
Routing
Queue
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
Availability Zone A
Availability Zone B
Availability Zone C
Elastic Kubernetes Service
Architektur aka „Software-as-a-Service“
MS
MS
MS
MS
MS
MS
MS
API
Gateway
API
API
API
Routing
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
Availability Zone A
Availability Zone B
Availability Zone C
Elastic Kubernetes Service
Architektur aka „Software-as-a-Service“
MS
MS
MS
MS
MS
MS
MS
API
Gateway
API
API
API
EventBridge
Domain
Events
Infra &
Domain
Events
Infra
Events
Architecture
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
Architecture gemäß 12-Factor App
Cloud-Versprechen
1. einfacheres Management
2. schnellere Releases
3. verbesserte Kosteneffizienz
4. mehr Zuverlässigkeit/Sicherheit
5. beliebige Skalierbarkeit
6. besseres Kundenerlebnis
„How to
do it
right?“
Cloud? Yeah!
myApp
myApp
myApp
App Server
App Server
App Server
PRODUCTION
on prem
Self-Managed
Load Balancer
myFS
myMQ
myDB
On-Premise
No Cloud / DIY
myApp
myApp
myApp
EC2 Instance
EC2 Instance
EC2 Instance
Routing
PROD
Load Balancer noSQL
Queue
RDBMS
File Storage Archive
Lift & Shift
Managed Base Services
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
Load Balancer
AWS App Runner
Vendor All-In
Managed Extended Services
myApp
myApp
myApp
Routing
Backing
Services
PROD
noSQL
Queue
RDBMS
File Storage Archive
ALB
Controller
Elastic Kubernetes Service
Vendor Light
Managed „CN“ Services
Routing
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
Availability Zone A
Availability Zone B
Availability Zone C
MS
MS
MS
MS
MS
MS
MS
API
Gateway
API
API
API
EventBridge
Domain
Events
Infra &
Domain
Events
Infra
Events
Elastic Kubernetes Service
SaaS Architecture
Access via APIs
Modularization via Services
Communication via Events
Routing
Backing
Services
File Storage Archive
RDBMS noSQL
PROD
ALB
Controller
Availability Zone A
Availability Zone B
Availability Zone C
EKS
MS
MS
MS
MS
MS
MS
MS
API
Gateway
API
API
API
EventBridge
Infra
Events
myApp
myApp
Common
Code
Base
Declarative API
CI/CD
Monitorring
Components
self
healing
Users
IAM
Cert
Security
Domain
Events
Infra &
Domain
Events
Platform Team
Cloud Templates
Cloud Governance
Common Security
Common Observability
CI/CD via IaC & CLI
Cloud all-in
Cloud-native Architecture
Road to
the Cloud
Cloud DevOps
für reproduzierbare Bereitstellung
Die ersten Schritte
Orientierung via Lift & Shift
Plattform Mgmt.
Monitoring, Resilience
Extended Services
für vereinfachte Bereitstellung
Managed Services
verstehen und nutzen
(M)ein Fazit zur Cloud …
(M)ein Fazit zur
Cloud
Cloud ist mehr als nur Technologie
Cloud ist auch
• Architektur
• Vorgehen
• Organisation
Cloud braucht Mut zur Veränderung …
Mut und Willen zur Veränderung
System-Design
• fachliches Splitten der Monolithen
• fachliches Splitten der Daten
• Einführung von Containerisierung
• leichtgewichtige Prozesse*
*Choreographie wenn möglich, Orchestrierung wenn nötig
Mut und Willen zur Veränderung
Organisation
• Einführung Business Capability Teams
• Einführung Platform Operation Team
Mut und Willen zur Veränderung
Kultur
• DevOps vs Silos
• Continuous Delivery vs Releases
• Autonomie vs Governance*
• Fault Tolerant vs Static Systems
*gilt für Micro Architektur, nicht für Marco Architektur
Was ihr mitnehmen solltet …
Lars Röwekamp | @mobileLarson
FRAGEN?
#WISSENTEILEN
“From Zero
to still Zero“
Die schönsten Fehler auf
dem Weg in die Cloud.
Lars Röwekamp | @mobileLarson
BESTEN DANK!
#WISSENTEILEN
“From Zero
to still Zero“
Die schönsten Fehler auf
dem Weg in die Cloud.
© Robert Daly – shutterstock.com (Folie 1)
© AaronAmat – iStockphoto.com (Folie 11)
© vasakna – fotolia.com (Folie 85)
© foxacon – shutterstock.com (Folie 130)
© lightspring – shutterstock.com (Folie 132)
© re:invent 2019 (Folie 136)
Alle weiteren Bilder der Präsentation sind entweder von pixabay.com,
pexels.com, unsplash.com oder von mir selbst erstellt.
Bildernachweis

Weitere ähnliche Inhalte

Ähnlich wie From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud

A Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackA Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackQAware GmbH
 
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfA Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfMario-Leander Reimer
 
papaya AWS Präsentation CeBIT 2010
papaya AWS Präsentation CeBIT 2010papaya AWS Präsentation CeBIT 2010
papaya AWS Präsentation CeBIT 2010papaya
 
Per Anhalter zu Cloud-nativen API Gateways
Per Anhalter zu Cloud-nativen API GatewaysPer Anhalter zu Cloud-nativen API Gateways
Per Anhalter zu Cloud-nativen API GatewaysQAware GmbH
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionQAware GmbH
 
Technologien 2011 Einblick in die Zukunft von Citrix
Technologien 2011 Einblick in die Zukunft von CitrixTechnologien 2011 Einblick in die Zukunft von Citrix
Technologien 2011 Einblick in die Zukunft von CitrixDigicomp Academy AG
 
Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWSBlueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWSroot360 GmbH
 
Vorteile von Managed Service Providern
Vorteile von Managed Service ProvidernVorteile von Managed Service Providern
Vorteile von Managed Service Providernroot360 GmbH
 
Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performanceglembotzky
 
Skalierbares Transcoding und Medien-Verarbeitung in der Cloud
Skalierbares Transcoding und Medien-Verarbeitung in der CloudSkalierbares Transcoding und Medien-Verarbeitung in der Cloud
Skalierbares Transcoding und Medien-Verarbeitung in der CloudAWS Germany
 
Modern Lightweight Enterprise Architectures mit Java
Modern Lightweight Enterprise Architectures mit JavaModern Lightweight Enterprise Architectures mit Java
Modern Lightweight Enterprise Architectures mit JavaOPEN KNOWLEDGE GmbH
 
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istWhere are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istRamon Anger
 
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...QAware GmbH
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformQAware GmbH
 
Cloud Infrastructure with Crossplane
Cloud Infrastructure with CrossplaneCloud Infrastructure with Crossplane
Cloud Infrastructure with CrossplaneQAware GmbH
 
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Mario-Leander Reimer
 
Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)QAware GmbH
 
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-Gewinnspiel
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-GewinnspielSüßwarenhersteller und Discounter launchen Webportal für EM 2016-Gewinnspiel
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-GewinnspielAWS Germany
 

Ähnlich wie From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud (20)

Serverless: The Missing Manual
Serverless: The Missing ManualServerless: The Missing Manual
Serverless: The Missing Manual
 
A Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackA Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native Stack
 
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfA Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
 
papaya AWS Präsentation CeBIT 2010
papaya AWS Präsentation CeBIT 2010papaya AWS Präsentation CeBIT 2010
papaya AWS Präsentation CeBIT 2010
 
Per Anhalter zu Cloud-nativen API Gateways
Per Anhalter zu Cloud-nativen API GatewaysPer Anhalter zu Cloud-nativen API Gateways
Per Anhalter zu Cloud-nativen API Gateways
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
 
Technologien 2011 Einblick in die Zukunft von Citrix
Technologien 2011 Einblick in die Zukunft von CitrixTechnologien 2011 Einblick in die Zukunft von Citrix
Technologien 2011 Einblick in die Zukunft von Citrix
 
Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWSBlueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWS
 
BizSpark goes Cloud
BizSpark goes CloudBizSpark goes Cloud
BizSpark goes Cloud
 
Vorteile von Managed Service Providern
Vorteile von Managed Service ProvidernVorteile von Managed Service Providern
Vorteile von Managed Service Providern
 
Skalierung & Performance
Skalierung & PerformanceSkalierung & Performance
Skalierung & Performance
 
Skalierbares Transcoding und Medien-Verarbeitung in der Cloud
Skalierbares Transcoding und Medien-Verarbeitung in der CloudSkalierbares Transcoding und Medien-Verarbeitung in der Cloud
Skalierbares Transcoding und Medien-Verarbeitung in der Cloud
 
Modern Lightweight Enterprise Architectures mit Java
Modern Lightweight Enterprise Architectures mit JavaModern Lightweight Enterprise Architectures mit Java
Modern Lightweight Enterprise Architectures mit Java
 
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_istWhere are all transactions gone? Was in_der_cloud_alles_verboten_ist
Where are all transactions gone? Was in_der_cloud_alles_verboten_ist
 
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud Plattform
 
Cloud Infrastructure with Crossplane
Cloud Infrastructure with CrossplaneCloud Infrastructure with Crossplane
Cloud Infrastructure with Crossplane
 
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
 
Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)
 
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-Gewinnspiel
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-GewinnspielSüßwarenhersteller und Discounter launchen Webportal für EM 2016-Gewinnspiel
Süßwarenhersteller und Discounter launchen Webportal für EM 2016-Gewinnspiel
 

Mehr von OPEN KNOWLEDGE GmbH

Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AI
Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AIWarum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AI
Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AIOPEN KNOWLEDGE GmbH
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...OPEN KNOWLEDGE GmbH
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationOPEN KNOWLEDGE GmbH
 
Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!OPEN KNOWLEDGE GmbH
 
From Zero to still Zero: The most beautiful mistakes going into the cloud.
From Zero to still Zero: The most beautiful mistakes going into the cloud. From Zero to still Zero: The most beautiful mistakes going into the cloud.
From Zero to still Zero: The most beautiful mistakes going into the cloud. OPEN KNOWLEDGE GmbH
 
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & Co
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & CoReady for the Future: Jakarta EE in Zeiten von Cloud Native & Co
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & CoOPEN KNOWLEDGE GmbH
 
Shared Data in verteilten Architekturen
Shared Data in verteilten ArchitekturenShared Data in verteilten Architekturen
Shared Data in verteilten ArchitekturenOPEN KNOWLEDGE GmbH
 
Machine Learning mit TensorFlow.js
Machine Learning mit TensorFlow.jsMachine Learning mit TensorFlow.js
Machine Learning mit TensorFlow.jsOPEN KNOWLEDGE GmbH
 
It's not Rocket Science: Neuronale Netze
It's not Rocket Science: Neuronale NetzeIt's not Rocket Science: Neuronale Netze
It's not Rocket Science: Neuronale NetzeOPEN KNOWLEDGE GmbH
 
Shared Data in verteilten Systemen
Shared Data in verteilten SystemenShared Data in verteilten Systemen
Shared Data in verteilten SystemenOPEN KNOWLEDGE GmbH
 
Mehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungMehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungOPEN KNOWLEDGE GmbH
 
API-Design, Microarchitecture und Testing
API-Design, Microarchitecture und TestingAPI-Design, Microarchitecture und Testing
API-Design, Microarchitecture und TestingOPEN KNOWLEDGE GmbH
 
Supersonic Java für die Cloud: Quarkus
Supersonic Java für die Cloud: QuarkusSupersonic Java für die Cloud: Quarkus
Supersonic Java für die Cloud: QuarkusOPEN KNOWLEDGE GmbH
 
Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!OPEN KNOWLEDGE GmbH
 
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?OPEN KNOWLEDGE GmbH
 

Mehr von OPEN KNOWLEDGE GmbH (20)

Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AI
Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AIWarum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AI
Warum der Computer "Nein" sagt - Mehr Nachvollziehbarkeit dank Explainable AI
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
 
Nie wieder Log-Files!
Nie wieder Log-Files!Nie wieder Log-Files!
Nie wieder Log-Files!
 
Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!Cloud-native and Enterprise Java? Hold my beer!
Cloud-native and Enterprise Java? Hold my beer!
 
From Zero to still Zero: The most beautiful mistakes going into the cloud.
From Zero to still Zero: The most beautiful mistakes going into the cloud. From Zero to still Zero: The most beautiful mistakes going into the cloud.
From Zero to still Zero: The most beautiful mistakes going into the cloud.
 
API Expand Contract
API Expand ContractAPI Expand Contract
API Expand Contract
 
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & Co
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & CoReady for the Future: Jakarta EE in Zeiten von Cloud Native & Co
Ready for the Future: Jakarta EE in Zeiten von Cloud Native & Co
 
Shared Data in verteilten Architekturen
Shared Data in verteilten ArchitekturenShared Data in verteilten Architekturen
Shared Data in verteilten Architekturen
 
Machine Learning mit TensorFlow.js
Machine Learning mit TensorFlow.jsMachine Learning mit TensorFlow.js
Machine Learning mit TensorFlow.js
 
KI und Architektur
KI und ArchitekturKI und Architektur
KI und Architektur
 
It's not Rocket Science: Neuronale Netze
It's not Rocket Science: Neuronale NetzeIt's not Rocket Science: Neuronale Netze
It's not Rocket Science: Neuronale Netze
 
Shared Data in verteilten Systemen
Shared Data in verteilten SystemenShared Data in verteilten Systemen
Shared Data in verteilten Systemen
 
Business-Mehrwert durch KI
Business-Mehrwert durch KIBusiness-Mehrwert durch KI
Business-Mehrwert durch KI
 
Mehr Sicherheit durch Automatisierung
Mehr Sicherheit durch AutomatisierungMehr Sicherheit durch Automatisierung
Mehr Sicherheit durch Automatisierung
 
API-Design, Microarchitecture und Testing
API-Design, Microarchitecture und TestingAPI-Design, Microarchitecture und Testing
API-Design, Microarchitecture und Testing
 
Supersonic Java für die Cloud: Quarkus
Supersonic Java für die Cloud: QuarkusSupersonic Java für die Cloud: Quarkus
Supersonic Java für die Cloud: Quarkus
 
Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!Hilfe, ich will meinen Monolithen zurück!
Hilfe, ich will meinen Monolithen zurück!
 
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
Das ist doch alles nur Frontend - Wer braucht da schon Architektur?
 

From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud