SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
How to develop your first
cloud-native Applications
with Java—
Niklas Heidloff
Developer Advocate, IBM
@nheidloff
Harald Uebele
Developer Advocate, IBM
@Harald_U
Continues delivery
→ DevOps
Polyglot microservices
→ Interactions via APIs
Elasticity
→ App stays responsive
Horizontal scalability
→ Distributed systems
What are cloud-native Applications?
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
“Microservices are a software
development technique [...]
that structures an application
as a collection of loosely
coupled services.”
Wikipedia
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
Run anywhere
→ Kubernetes
Empowered teams
→ Ownership
Fast response times
→ No cold start
Full control
→ Canary rollouts
When to use Microservices?
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
New Options → New Challenges
Cloud-native applications
provide new capabilities,
which challenge
developers
–  New tasks
–  Old tasks in new
context
Service discovery and
traffic management
Distributed monitoring,
logging and tracing
Authentication and
authorization between
services
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
“Kubernetes (K8s) is an open-
source system for automating
deployment, scaling, and
management of containerized
applications.”
kubernetes.io
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
“Istio is an open platform for
providing a uniform way to
integrate microservices,
manage traffic flow across
microservices, enforce
policies and aggregate
telemetry data.”
github.com/istio/istio
@nheidloff @Harald_U
“Optimizing Enterprise Java
for a Microservices
Architecture.
[...] by innovating [...] with a
goal of standardization.”
microprofile.io
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
How to use all Pieces together?
Kubernetes
Java Enterprise Edition
Istio
Eclipse MicroProfile
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
Leverage platforms as
much as possible.
@nheidloff @Harald_U
Use frameworks for app
specific logic.
#IBMDeveloper github.com/nheidloff/cloud-native-starter
Design principles for the
end-to-end example
‘cloud-native-starter’
Use only open-source
components for the core
services of the application
Make the first time
experience as simple as
possible
Be able to run the
application in different
environments
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
Architecture: End-to-End Example ‘cloud-native-starter’
Web-App
NoSQL / Cloudant
Web-API v1 Articles
Web-API v2 Authors
Web-App
SQL / Db2
OpenID / App ID
LogDNASysdig
Authentication
@nheidloff @Harald_U
Browser Kubernetes with Istio Optional Cloud Services
Ingress
Web Experience in ‘cloud-native-starter’
Java Image
@nheidloff @Harald_U
Open source stack
OpenJ9 0.12.1
OpenJDK 8u202-b08 from AdoptOpenJDK
Open Liberty 18.0.0.4
MicroProfile 2.1
Dockerfile
#IBMDeveloper github.com/nheidloff/cloud-native-starter
Exposing REST APIs
@nheidloff @Harald_U
JAX-RS
Java API for RESTful Web Services
GetArticles.java
Exposing REST APIs
@nheidloff @Harald_U
Open API (formerly Swagger)
API description format for REST APIs
Consuming REST APIs
@nheidloff @Harald_U
MicroProfile Rest Client
Type-safe approach to invoke RESTful services
AuthorsService.java
AuthorsServiceDataAccess.java
Resiliency
@nheidloff @Harald_U
Timeouts and retries
Circuit breaking
Fallback
Fault injection
Service.java
Resiliency
Traffic Management
@nheidloff @Harald_U
Blue-green deployments
Canary rollouts
A/B testing
ingress.yaml
Traffic Management
Authentication and
Authorization
@nheidloff @Harald_U
OpenID Connect
Identity layer on top of the OAuth 2.0 protocol
IBM App ID
IBM service to authenticate users and protect APIs
policy.yaml
.env of authentication service
Authorization
Authorization
Authentication
Configuration
@nheidloff @Harald_U
MicroProfile Configuration
External configuration of microservices
Service.yaml
CoreService.java
Chained invocations Kubernetes
→ 1 service = N pods
Microservices vs monolith
→ Higher complexity
→ Ephemeral
Tracing
Logging
Monitoring
Metrics
Healthchecks
Observability
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
Tracing
@nheidloff @Harald_U
OpenTracing
Vendor-neutral APIs and instrumentation for
distributed tracing
Jaeger and Zipkin
Open source distributed tracing systems
server.xml
#IBMDeveloper github.com/nheidloff/cloud-native-starter
Distributed Tracing
Metrics
@nheidloff @Harald_U
Prometheus
Monitoring system and time series database
GetArticles.java
#IBMDeveloper github.com/nheidloff/cloud-native-starter
Metrics
LogDNA
Sysdig
Healthchecks
@nheidloff @Harald_U
MicroProfile Health
Liveness probes and readiness probes
HealthEndpoint.java
Service.yaml
Try out the end-to-end
microservices example
cloud-native-starter!
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
Deploying Sample Services
@nheidloff @Harald_U
As easy as ’cf push’
scripts
ibm-scripts
iks-scripts
sh scripts/deploy-authors-nodejs.sh
Running the Example App
@nheidloff @Harald_U
Script displays all relevant URLs
sh scripts/show-urls.sh
IBM Cloud Kubernetes Service including Istio and Knative
IBM Developer
developer.ibm.com
IBM Cloud Lite account
ibm.biz/nheidloff
IBM loves open source
Kubernetes and Istio
OpenJ9 & AdoptOpenJDK
MicroProfile
Open Liberty
Leverage platforms as
much as possible
Use frameworks for app
specific logic
Summary
github.com/nheidloff/cloud-native-starter
@nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
How to develop your first cloud-native Applications with Java

Más contenido relacionado

La actualidad más candente

Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsDaniel Krook
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskDaniel Krook
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platformDaniel Krook
 
Yannis Zarkadas. Enterprise data science workflows on kubeflow
Yannis Zarkadas. Enterprise data science workflows on kubeflowYannis Zarkadas. Enterprise data science workflows on kubeflow
Yannis Zarkadas. Enterprise data science workflows on kubeflowMarynaHoldaieva
 
Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...Daniel Krook
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018Krishna-Kumar
 
Api more than payload (2021 Update)
Api more than payload (2021 Update)Api more than payload (2021 Update)
Api more than payload (2021 Update)Phil Wilkins
 
Building and Running Workloads the Knative Way
Building and Running Workloads the Knative WayBuilding and Running Workloads the Knative Way
Building and Running Workloads the Knative WayQAware GmbH
 
Resilient microservices with Kubernetes - Mete Atamel
Resilient microservices with Kubernetes - Mete AtamelResilient microservices with Kubernetes - Mete Atamel
Resilient microservices with Kubernetes - Mete AtamelITCamp
 
Tackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy ApplicationsTackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy ApplicationsKonveyor Community
 
The art of decomposing monoliths
The art of decomposing monolithsThe art of decomposing monoliths
The art of decomposing monolithsKfir Bloch
 
Kubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosKubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosGlobant
 
Kubernetes, Istio and Knative - noteworthy practical experience
Kubernetes, Istio and Knative - noteworthy practical experienceKubernetes, Istio and Knative - noteworthy practical experience
Kubernetes, Istio and Knative - noteworthy practical experienceSAP HANA Cloud Platform
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAnimesh Singh
 
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: KeynoteIBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: KeynoteOpenWhisk
 
Argo Workflows 3.0, a detailed look at what’s new from the Argo Team
Argo Workflows 3.0, a detailed look at what’s new from the Argo TeamArgo Workflows 3.0, a detailed look at what’s new from the Argo Team
Argo Workflows 3.0, a detailed look at what’s new from the Argo TeamLibbySchulze
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous DeliveryMohammad Bilal Wahla
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAnimesh Singh
 

La actualidad más candente (20)

Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
 
Yannis Zarkadas. Enterprise data science workflows on kubeflow
Yannis Zarkadas. Enterprise data science workflows on kubeflowYannis Zarkadas. Enterprise data science workflows on kubeflow
Yannis Zarkadas. Enterprise data science workflows on kubeflow
 
Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
 
Api more than payload (2021 Update)
Api more than payload (2021 Update)Api more than payload (2021 Update)
Api more than payload (2021 Update)
 
Building and Running Workloads the Knative Way
Building and Running Workloads the Knative WayBuilding and Running Workloads the Knative Way
Building and Running Workloads the Knative Way
 
OpenShift Meetup - Summit 2021 (Part 1)
OpenShift Meetup - Summit 2021 (Part 1)OpenShift Meetup - Summit 2021 (Part 1)
OpenShift Meetup - Summit 2021 (Part 1)
 
"Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation""Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation"
 
Resilient microservices with Kubernetes - Mete Atamel
Resilient microservices with Kubernetes - Mete AtamelResilient microservices with Kubernetes - Mete Atamel
Resilient microservices with Kubernetes - Mete Atamel
 
Tackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy ApplicationsTackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy Applications
 
The art of decomposing monoliths
The art of decomposing monolithsThe art of decomposing monoliths
The art of decomposing monoliths
 
Kubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todosKubeflow: Machine Learning en Cloud para todos
Kubeflow: Machine Learning en Cloud para todos
 
Kubernetes, Istio and Knative - noteworthy practical experience
Kubernetes, Istio and Knative - noteworthy practical experienceKubernetes, Istio and Knative - noteworthy practical experience
Kubernetes, Istio and Knative - noteworthy practical experience
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with Knative
 
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: KeynoteIBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
 
Argo Workflows 3.0, a detailed look at what’s new from the Argo Team
Argo Workflows 3.0, a detailed look at what’s new from the Argo TeamArgo Workflows 3.0, a detailed look at what’s new from the Argo Team
Argo Workflows 3.0, a detailed look at what’s new from the Argo Team
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous Delivery
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
 

Similar a How to develop your first cloud-native Applications with Java

Jakarta Tech Talk: How to develop your first cloud-native Application with Java
Jakarta Tech Talk: How to develop your first cloud-native Application with JavaJakarta Tech Talk: How to develop your first cloud-native Application with Java
Jakarta Tech Talk: How to develop your first cloud-native Application with JavaNiklas Heidloff
 
Reactive Microservices with Quarkus
Reactive Microservices with QuarkusReactive Microservices with Quarkus
Reactive Microservices with QuarkusNiklas Heidloff
 
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?Niklas Heidloff
 
Meetup Devops-Geneva-19.10.2019
Meetup Devops-Geneva-19.10.2019Meetup Devops-Geneva-19.10.2019
Meetup Devops-Geneva-19.10.2019Hidora
 
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...Neil Shannon
 
Keeping your options open
Keeping your options openKeeping your options open
Keeping your options openDoug Tidwell
 
OpenWhisk - Serverless Architecture
OpenWhisk - Serverless Architecture OpenWhisk - Serverless Architecture
OpenWhisk - Serverless Architecture Dev_Events
 
Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Dev_Events
 
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the CloudLinux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the CloudMark Hinkle
 
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service Catalog
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service CatalogRedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service Catalog
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service CatalogRedis Labs
 
Build Event-Driven Microservices with Confluent Cloud Workshop #1
Build Event-Driven Microservices with Confluent Cloud Workshop #1Build Event-Driven Microservices with Confluent Cloud Workshop #1
Build Event-Driven Microservices with Confluent Cloud Workshop #1confluent
 
56K.cloud Docker Training
56K.cloud Docker Training56K.cloud Docker Training
56K.cloud Docker TrainingBrian Christner
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingMark Hinkle
 
Red Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureRed Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureJohn Archer
 
Introducing the Open Container Project
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container ProjectAndrew Kennedy
 
Red Hat and kubernetes: awesome stuff coming your way
Red Hat and kubernetes:  awesome stuff coming your wayRed Hat and kubernetes:  awesome stuff coming your way
Red Hat and kubernetes: awesome stuff coming your wayJohannes Brännström
 
OpenSlava 2018 - Cloud Native Applications with OpenShift
OpenSlava 2018 - Cloud Native Applications with OpenShiftOpenSlava 2018 - Cloud Native Applications with OpenShift
OpenSlava 2018 - Cloud Native Applications with OpenShiftLuigi Fugaro
 
Securing Red Hat OpenShift Containerized Applications At Enterprise Scale
Securing Red Hat OpenShift Containerized Applications At Enterprise ScaleSecuring Red Hat OpenShift Containerized Applications At Enterprise Scale
Securing Red Hat OpenShift Containerized Applications At Enterprise ScaleDevOps.com
 
Docker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to DockerDocker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to DockerDocker, Inc.
 
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
 

Similar a How to develop your first cloud-native Applications with Java (20)

Jakarta Tech Talk: How to develop your first cloud-native Application with Java
Jakarta Tech Talk: How to develop your first cloud-native Application with JavaJakarta Tech Talk: How to develop your first cloud-native Application with Java
Jakarta Tech Talk: How to develop your first cloud-native Application with Java
 
Reactive Microservices with Quarkus
Reactive Microservices with QuarkusReactive Microservices with Quarkus
Reactive Microservices with Quarkus
 
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
 
Meetup Devops-Geneva-19.10.2019
Meetup Devops-Geneva-19.10.2019Meetup Devops-Geneva-19.10.2019
Meetup Devops-Geneva-19.10.2019
 
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...
DevNexus 2017 - Building and Deploying 12 Factor Apps in Scala, Java, Ruby, a...
 
Keeping your options open
Keeping your options openKeeping your options open
Keeping your options open
 
OpenWhisk - Serverless Architecture
OpenWhisk - Serverless Architecture OpenWhisk - Serverless Architecture
OpenWhisk - Serverless Architecture
 
Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Serverless Apps with Open Whisk
Serverless Apps with Open Whisk
 
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the CloudLinux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
Linux Foundation Collaboration Summit: Hitchhiker's Guide to the Cloud
 
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service Catalog
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service CatalogRedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service Catalog
RedisConf18 - Redis in Dev, Test, and Prod with the OpenShift Service Catalog
 
Build Event-Driven Microservices with Confluent Cloud Workshop #1
Build Event-Driven Microservices with Confluent Cloud Workshop #1Build Event-Driven Microservices with Confluent Cloud Workshop #1
Build Event-Driven Microservices with Confluent Cloud Workshop #1
 
56K.cloud Docker Training
56K.cloud Docker Training56K.cloud Docker Training
56K.cloud Docker Training
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
 
Red Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureRed Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft Azure
 
Introducing the Open Container Project
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container Project
 
Red Hat and kubernetes: awesome stuff coming your way
Red Hat and kubernetes:  awesome stuff coming your wayRed Hat and kubernetes:  awesome stuff coming your way
Red Hat and kubernetes: awesome stuff coming your way
 
OpenSlava 2018 - Cloud Native Applications with OpenShift
OpenSlava 2018 - Cloud Native Applications with OpenShiftOpenSlava 2018 - Cloud Native Applications with OpenShift
OpenSlava 2018 - Cloud Native Applications with OpenShift
 
Securing Red Hat OpenShift Containerized Applications At Enterprise Scale
Securing Red Hat OpenShift Containerized Applications At Enterprise ScaleSecuring Red Hat OpenShift Containerized Applications At Enterprise Scale
Securing Red Hat OpenShift Containerized Applications At Enterprise Scale
 
Docker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to DockerDocker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to Docker
 
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
 

Más de Niklas Heidloff

Serverless Web Applications on the IBM Cloud
Serverless Web Applications on the IBM CloudServerless Web Applications on the IBM Cloud
Serverless Web Applications on the IBM CloudNiklas Heidloff
 
Development of AI Applications without Machine Learning Skills
Development of AI Applications without Machine Learning SkillsDevelopment of AI Applications without Machine Learning Skills
Development of AI Applications without Machine Learning SkillsNiklas Heidloff
 
Developing Serverless Applications with Apache OpenWhisk
Developing Serverless Applications with Apache OpenWhiskDeveloping Serverless Applications with Apache OpenWhisk
Developing Serverless Applications with Apache OpenWhiskNiklas Heidloff
 
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhisk
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhiskCreate Alexa Skills using IBM Watson Conversation and Apache OpenWhisk
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhisk Niklas Heidloff
 
Visual Recognition with Anki Cozmo and TensorFlow
Visual Recognition with Anki Cozmo and TensorFlowVisual Recognition with Anki Cozmo and TensorFlow
Visual Recognition with Anki Cozmo and TensorFlowNiklas Heidloff
 
Writing Slack Bots in JavaScript
Writing Slack Bots in JavaScriptWriting Slack Bots in JavaScript
Writing Slack Bots in JavaScriptNiklas Heidloff
 
Building Serverless Web Applications with OpenWhisk
Building Serverless Web Applications with OpenWhiskBuilding Serverless Web Applications with OpenWhisk
Building Serverless Web Applications with OpenWhiskNiklas Heidloff
 
IBM Bluemix Continuous Delivery
IBM Bluemix Continuous DeliveryIBM Bluemix Continuous Delivery
IBM Bluemix Continuous DeliveryNiklas Heidloff
 
Cognitive IBM Watson Services for Bluemix Developers
Cognitive IBM Watson Services for Bluemix DevelopersCognitive IBM Watson Services for Bluemix Developers
Cognitive IBM Watson Services for Bluemix DevelopersNiklas Heidloff
 
IBM Bluemix Demo with Anki Overdrive Cars
IBM Bluemix Demo with Anki Overdrive CarsIBM Bluemix Demo with Anki Overdrive Cars
IBM Bluemix Demo with Anki Overdrive CarsNiklas Heidloff
 
Rapid Application Development with Docker
Rapid Application Development with DockerRapid Application Development with Docker
Rapid Application Development with DockerNiklas Heidloff
 
Collaborative Line of Business Applications on IBM Bluemix
Collaborative Line of Business Applications on IBM BluemixCollaborative Line of Business Applications on IBM Bluemix
Collaborative Line of Business Applications on IBM BluemixNiklas Heidloff
 
Rapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with DockerRapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with DockerNiklas Heidloff
 
IBM Bluemix for Administrators with Focus on XPages
IBM Bluemix for Administrators with Focus on XPagesIBM Bluemix for Administrators with Focus on XPages
IBM Bluemix for Administrators with Focus on XPagesNiklas Heidloff
 
Ten Minutes Bluemix Pitch from Dev to Dev
Ten Minutes Bluemix Pitch from Dev to DevTen Minutes Bluemix Pitch from Dev to Dev
Ten Minutes Bluemix Pitch from Dev to DevNiklas Heidloff
 
IBM Bluemix Demos: Driving Smartphone and Personality Ball
IBM Bluemix Demos: Driving Smartphone and Personality BallIBM Bluemix Demos: Driving Smartphone and Personality Ball
IBM Bluemix Demos: Driving Smartphone and Personality BallNiklas Heidloff
 
IBM Bluemix - The Cloud Platform Java Developers have been looking for
IBM Bluemix - The Cloud Platform Java Developers have been looking forIBM Bluemix - The Cloud Platform Java Developers have been looking for
IBM Bluemix - The Cloud Platform Java Developers have been looking forNiklas Heidloff
 
Build cognitive Apps that help enhance, scale and accelerate Human Expertise
Build cognitive Apps that help enhance, scale and accelerate Human ExpertiseBuild cognitive Apps that help enhance, scale and accelerate Human Expertise
Build cognitive Apps that help enhance, scale and accelerate Human ExpertiseNiklas Heidloff
 

Más de Niklas Heidloff (20)

Blue Cloud Mirror
Blue Cloud MirrorBlue Cloud Mirror
Blue Cloud Mirror
 
IBM at JavaLand
IBM at JavaLandIBM at JavaLand
IBM at JavaLand
 
Serverless Web Applications on the IBM Cloud
Serverless Web Applications on the IBM CloudServerless Web Applications on the IBM Cloud
Serverless Web Applications on the IBM Cloud
 
Development of AI Applications without Machine Learning Skills
Development of AI Applications without Machine Learning SkillsDevelopment of AI Applications without Machine Learning Skills
Development of AI Applications without Machine Learning Skills
 
Developing Serverless Applications with Apache OpenWhisk
Developing Serverless Applications with Apache OpenWhiskDeveloping Serverless Applications with Apache OpenWhisk
Developing Serverless Applications with Apache OpenWhisk
 
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhisk
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhiskCreate Alexa Skills using IBM Watson Conversation and Apache OpenWhisk
Create Alexa Skills using IBM Watson Conversation and Apache OpenWhisk
 
Visual Recognition with Anki Cozmo and TensorFlow
Visual Recognition with Anki Cozmo and TensorFlowVisual Recognition with Anki Cozmo and TensorFlow
Visual Recognition with Anki Cozmo and TensorFlow
 
Writing Slack Bots in JavaScript
Writing Slack Bots in JavaScriptWriting Slack Bots in JavaScript
Writing Slack Bots in JavaScript
 
Building Serverless Web Applications with OpenWhisk
Building Serverless Web Applications with OpenWhiskBuilding Serverless Web Applications with OpenWhisk
Building Serverless Web Applications with OpenWhisk
 
IBM Bluemix Continuous Delivery
IBM Bluemix Continuous DeliveryIBM Bluemix Continuous Delivery
IBM Bluemix Continuous Delivery
 
Cognitive IBM Watson Services for Bluemix Developers
Cognitive IBM Watson Services for Bluemix DevelopersCognitive IBM Watson Services for Bluemix Developers
Cognitive IBM Watson Services for Bluemix Developers
 
IBM Bluemix Demo with Anki Overdrive Cars
IBM Bluemix Demo with Anki Overdrive CarsIBM Bluemix Demo with Anki Overdrive Cars
IBM Bluemix Demo with Anki Overdrive Cars
 
Rapid Application Development with Docker
Rapid Application Development with DockerRapid Application Development with Docker
Rapid Application Development with Docker
 
Collaborative Line of Business Applications on IBM Bluemix
Collaborative Line of Business Applications on IBM BluemixCollaborative Line of Business Applications on IBM Bluemix
Collaborative Line of Business Applications on IBM Bluemix
 
Rapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with DockerRapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with Docker
 
IBM Bluemix for Administrators with Focus on XPages
IBM Bluemix for Administrators with Focus on XPagesIBM Bluemix for Administrators with Focus on XPages
IBM Bluemix for Administrators with Focus on XPages
 
Ten Minutes Bluemix Pitch from Dev to Dev
Ten Minutes Bluemix Pitch from Dev to DevTen Minutes Bluemix Pitch from Dev to Dev
Ten Minutes Bluemix Pitch from Dev to Dev
 
IBM Bluemix Demos: Driving Smartphone and Personality Ball
IBM Bluemix Demos: Driving Smartphone and Personality BallIBM Bluemix Demos: Driving Smartphone and Personality Ball
IBM Bluemix Demos: Driving Smartphone and Personality Ball
 
IBM Bluemix - The Cloud Platform Java Developers have been looking for
IBM Bluemix - The Cloud Platform Java Developers have been looking forIBM Bluemix - The Cloud Platform Java Developers have been looking for
IBM Bluemix - The Cloud Platform Java Developers have been looking for
 
Build cognitive Apps that help enhance, scale and accelerate Human Expertise
Build cognitive Apps that help enhance, scale and accelerate Human ExpertiseBuild cognitive Apps that help enhance, scale and accelerate Human Expertise
Build cognitive Apps that help enhance, scale and accelerate Human Expertise
 

Último

Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 

Último (20)

Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 

How to develop your first cloud-native Applications with Java

  • 1. How to develop your first cloud-native Applications with Java— Niklas Heidloff Developer Advocate, IBM @nheidloff Harald Uebele Developer Advocate, IBM @Harald_U
  • 2. Continues delivery → DevOps Polyglot microservices → Interactions via APIs Elasticity → App stays responsive Horizontal scalability → Distributed systems What are cloud-native Applications? @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 3. “Microservices are a software development technique [...] that structures an application as a collection of loosely coupled services.” Wikipedia @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 4. Run anywhere → Kubernetes Empowered teams → Ownership Fast response times → No cold start Full control → Canary rollouts When to use Microservices? @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 5. New Options → New Challenges
  • 6. Cloud-native applications provide new capabilities, which challenge developers –  New tasks –  Old tasks in new context Service discovery and traffic management Distributed monitoring, logging and tracing Authentication and authorization between services @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 7. “Kubernetes (K8s) is an open- source system for automating deployment, scaling, and management of containerized applications.” kubernetes.io @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 8. “Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data.” github.com/istio/istio @nheidloff @Harald_U
  • 9. “Optimizing Enterprise Java for a Microservices Architecture. [...] by innovating [...] with a goal of standardization.” microprofile.io @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 10. How to use all Pieces together? Kubernetes Java Enterprise Edition Istio Eclipse MicroProfile @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 11. Leverage platforms as much as possible. @nheidloff @Harald_U Use frameworks for app specific logic. #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 12. Design principles for the end-to-end example ‘cloud-native-starter’ Use only open-source components for the core services of the application Make the first time experience as simple as possible Be able to run the application in different environments @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 13. Architecture: End-to-End Example ‘cloud-native-starter’ Web-App NoSQL / Cloudant Web-API v1 Articles Web-API v2 Authors Web-App SQL / Db2 OpenID / App ID LogDNASysdig Authentication @nheidloff @Harald_U Browser Kubernetes with Istio Optional Cloud Services Ingress
  • 14. Web Experience in ‘cloud-native-starter’
  • 15. Java Image @nheidloff @Harald_U Open source stack OpenJ9 0.12.1 OpenJDK 8u202-b08 from AdoptOpenJDK Open Liberty 18.0.0.4 MicroProfile 2.1 Dockerfile #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 16. Exposing REST APIs @nheidloff @Harald_U JAX-RS Java API for RESTful Web Services GetArticles.java
  • 17. Exposing REST APIs @nheidloff @Harald_U Open API (formerly Swagger) API description format for REST APIs
  • 18. Consuming REST APIs @nheidloff @Harald_U MicroProfile Rest Client Type-safe approach to invoke RESTful services AuthorsService.java AuthorsServiceDataAccess.java
  • 19. Resiliency @nheidloff @Harald_U Timeouts and retries Circuit breaking Fallback Fault injection Service.java
  • 21. Traffic Management @nheidloff @Harald_U Blue-green deployments Canary rollouts A/B testing ingress.yaml
  • 23. Authentication and Authorization @nheidloff @Harald_U OpenID Connect Identity layer on top of the OAuth 2.0 protocol IBM App ID IBM service to authenticate users and protect APIs policy.yaml .env of authentication service
  • 27. Configuration @nheidloff @Harald_U MicroProfile Configuration External configuration of microservices Service.yaml CoreService.java
  • 28. Chained invocations Kubernetes → 1 service = N pods Microservices vs monolith → Higher complexity → Ephemeral Tracing Logging Monitoring Metrics Healthchecks Observability @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 29. Tracing @nheidloff @Harald_U OpenTracing Vendor-neutral APIs and instrumentation for distributed tracing Jaeger and Zipkin Open source distributed tracing systems server.xml #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 31. Metrics @nheidloff @Harald_U Prometheus Monitoring system and time series database GetArticles.java #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 35. Healthchecks @nheidloff @Harald_U MicroProfile Health Liveness probes and readiness probes HealthEndpoint.java Service.yaml
  • 36. Try out the end-to-end microservices example cloud-native-starter! @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter
  • 37. Deploying Sample Services @nheidloff @Harald_U As easy as ’cf push’ scripts ibm-scripts iks-scripts sh scripts/deploy-authors-nodejs.sh
  • 38. Running the Example App @nheidloff @Harald_U Script displays all relevant URLs sh scripts/show-urls.sh
  • 39. IBM Cloud Kubernetes Service including Istio and Knative
  • 40. IBM Developer developer.ibm.com IBM Cloud Lite account ibm.biz/nheidloff IBM loves open source Kubernetes and Istio OpenJ9 & AdoptOpenJDK MicroProfile Open Liberty Leverage platforms as much as possible Use frameworks for app specific logic Summary github.com/nheidloff/cloud-native-starter @nheidloff @Harald_U #IBMDeveloper github.com/nheidloff/cloud-native-starter