SlideShare a Scribd company logo
When Cloud-Native Java
meets Containers,
Kubernetes and Istio
—
Yee-Kang Chang
yeekangc@ca.ibm.com
@yeekangc
Cloud-Native Java
Java-based
programming
paradigm that is native
or optimized for a
cloud environment
Containers
“A container is a
standard unit of
software that
packages up code and
all its dependencies so
the application runs
quickly and reliably
from one computing
environment to
another.”
- Docker.com
Kubernetes
“Kubernetes (K8s) is
an open-source
system for automating
deployment, scaling,
and management of
containerized
applications.”
- Kubernetes.io
Istio
“… service mesh is …
the network of
microservices that
make up [distributed
microservice]
applications and the
interactions between
them.
… Istio provides
behavioral insights
and operational
control over the
service mesh as a
whole, offering a
complete solution to
satisfy the diverse
requirements of
microservice
applications.”
- Istio.io© 2020 IBM Corporation 2
3
Cloud-Native Microservices
1. RESTful – Like cattle not pet, communicative
2. Configurable
3. Fault tolerant
4. Discoverable
5. Secure
6. Observable
7. Cloud ready – Heartbeat with cloud infrastructure
Eclipse MicroProfile
Config
Fault
Tolerance
JWT
Health
Check
MetricsOpen Tracing
Open API
JAX-RSJSON-PCDIRest Client JSON-B
REST
Foundation
100s of
Microservices
Operation
Focus
Microservice Deployment
Config
Fault
Tolerance
JWT
Health
Check
MetricsOpen Tracing
Open API
JAX-RSJSON-PCDIRest Client JSON-B
Eclipse MicroProfile
Config
Fault
Tolerance
JWT
Health
Check
MetricsOpen Tracing
Open API
JAX-RSJSON-PCDIRest Client JSON-B
REST
Foundation
100s of
Microservices
Operation
Focus
7
MicroProfile Config with Kubernetes
A B
env:
- name: GREETING
valueFrom:
configMapKeyRef:
name: greeting-config
key: message
kubectl create configmap greeting-config --from-literal
message=Greetings...
@Inject
@ConfigProperty(name = "GREETING")
private String greeting;
8
MicroProfile Health with Kubernetes
A B
readinessProbe:
httpGet:
path: /health/ready
port: 9080
initialDelaySeconds: 15
periodSeconds: 5
failureThreshold: 1
9
MicroProfile Metrics with Kubernetes
A B
@POST
@Counted(name="order", displayName="Order count",
description="Number of times orders
requested.")
public Response orderCoffee(@Valid @NotNull
CoffeeOrder order) {
...
}
Data in OpenMetrics
format
Collect and store data
with Prometheus
Visualize data with
Grafana
10
MP OpenTracing with Kubernetes
A B
@Traced
public void startBrew(CoffeeType
coffeeType) {
...
}
JAX-RS methods
are automatically
traced by default
Distributed tracing
system that supports
OpenTracing data
Deploy and view traces
with Zipkin or Jaeger
11
MicroProfile and Istio
MicroProfile Istio
Traffic Management N/A Routing rules • Use Istio for Blue-Green
deployments, canary
rollouts etc
Fault Tolerance Application layer
Retry, Timeout, Circuit
Breaker, Bulkhead, Fallback
Traffic between services
Retry, Timeout, Circuit
Breaker, Bulkhead
• Istio for broader traffic
management (and fault
injection for testing)
• Application-level fallback
with MicroProfile
Security Secure services with
JWT
Mutual TLS for transport
Origin authentication
with JWT
• Use Istio’s origin
authentication if services
are not secured
Observability or
Telemetry
API to instrument apps
Roll your own
Prometheus, Grafana,
Zipkin, Jaeger etc
Integration with
Prometheus, Grafana,
Jaeger, Zipkin
• OOTB integration
between MP-based
services and Istio
• View service mesh with
Istio’s Kiali
THE 12 FACTORS
1. Codebase
2. Dependencies
3. Config
4. Backing Services
5. Build, Release, Run
6. Processes
7. Port binding
8. Concurrency
9. Disposability
10.Dev / Prod parity
11.Logs
12.Admin Processes
THE 12 FACTORS
1. Codebase
2. Dependencies
3. Config
4. Backing Services
5. Build, Release, Run
6. Processes
7. Port binding
8. Concurrency
9. Disposability
10.Dev / Prod parity
11.Logs
12.Admin Processes
Istio to manage the
services …
Cloud-Native Java
programming
model like
MicroProfile to code
application
behaviours easily
for Cloud!
Kubernetes to
orchestrate the
environment …
Containerize your
applications …
Cloud-Native Java
+ Containers, Kubernetes and Istio
= A Nice Match
© 2020 IBM Corporation 13
Resources Further reading
MicroProfile, the
microservice programming
model made for Istio
https://www.eclipse.org/c
ommunity/eclipse_newsle
tter/2018/september/Micr
oProfile_istio.php
Try it out
Configuring microservices
in Kubernetes
https://openliberty.io/guid
es/kubernetes-
microprofile-config.html
Checking the health of
microservices on
Kubernetes
https://openliberty.io/guid
es/kubernetes-
microprofile-health.html
Managing microservice
traffic using Istio
https://openliberty.io/guid
es/istio-intro.html
Sample implementation
https://github.com/ibm-
cloud-
architecture/refarch-
cloudnative-
kubernetes/blob/micropro
file/docs/istio.md
© 2020 IBM Corporation 14
When Cloud-Native Java meets Containers, Kubernetes and Istio

More Related Content

What's hot

Kata containers workshop_openinfrasummit_denver_may2019
Kata containers workshop_openinfrasummit_denver_may2019Kata containers workshop_openinfrasummit_denver_may2019
Kata containers workshop_openinfrasummit_denver_may2019
Hemanth Nakkina
 
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
Joel W. King
 
Combining Logs, Metrics, and Traces for Unified Observability
Combining Logs, Metrics, and Traces for Unified ObservabilityCombining Logs, Metrics, and Traces for Unified Observability
Combining Logs, Metrics, and Traces for Unified Observability
Elasticsearch
 
Hands-on Lab: Test Drive Your OpenStack Network
Hands-on Lab: Test Drive Your OpenStack NetworkHands-on Lab: Test Drive Your OpenStack Network
Hands-on Lab: Test Drive Your OpenStack Network
PLUMgrid
 
Monitoring Security Policies for Container and OpenStack Clouds
Monitoring Security Policies for Container and OpenStack CloudsMonitoring Security Policies for Container and OpenStack Clouds
Monitoring Security Policies for Container and OpenStack Clouds
PLUMgrid
 
Open source IoT gateway
Open source IoT gatewayOpen source IoT gateway
Open source IoT gateway
Henryk Konsek
 
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
I3E Technologies
 
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
Nexgen Technology
 
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
Nexgen Technology
 
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
Mustafa Kuğu
 
MidoNet Differentiation and Overview
MidoNet Differentiation and OverviewMidoNet Differentiation and Overview
MidoNet Differentiation and Overview
Midokura
 
FIWARE-IoT-Broker-introduction
FIWARE-IoT-Broker-introductionFIWARE-IoT-Broker-introduction
FIWARE-IoT-Broker-introduction
gesslers
 
Calico and juju
Calico and jujuCalico and juju
Calico and juju
Anirban Sen Chowdhary
 
Cloud Computing - ISO/IEC 17788
Cloud Computing - ISO/IEC 17788Cloud Computing - ISO/IEC 17788
Cloud Computing - ISO/IEC 17788
Hamid Reza Qavami
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Quentin Petit
 
OpenStack Opportunity - Citrix
OpenStack Opportunity - CitrixOpenStack Opportunity - Citrix
OpenStack Opportunity - CitrixOpen Stack
 
DevNet Study Group: Using a SDK
DevNet Study Group: Using a SDKDevNet Study Group: Using a SDK
DevNet Study Group: Using a SDK
Joel W. King
 
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
Marco De Benedictis
 
Comparison: VNS3 vs Vyatta
Comparison: VNS3 vs VyattaComparison: VNS3 vs Vyatta
Comparison: VNS3 vs Vyatta
Cohesive Networks
 
Enhancing the Techniques to Secure Grid Computing
Enhancing the Techniques to Secure Grid ComputingEnhancing the Techniques to Secure Grid Computing
Enhancing the Techniques to Secure Grid Computing
ijtsrd
 

What's hot (20)

Kata containers workshop_openinfrasummit_denver_may2019
Kata containers workshop_openinfrasummit_denver_may2019Kata containers workshop_openinfrasummit_denver_may2019
Kata containers workshop_openinfrasummit_denver_may2019
 
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
Analytics for Application Security and Policy Enforcement in Cloud Managed Ne...
 
Combining Logs, Metrics, and Traces for Unified Observability
Combining Logs, Metrics, and Traces for Unified ObservabilityCombining Logs, Metrics, and Traces for Unified Observability
Combining Logs, Metrics, and Traces for Unified Observability
 
Hands-on Lab: Test Drive Your OpenStack Network
Hands-on Lab: Test Drive Your OpenStack NetworkHands-on Lab: Test Drive Your OpenStack Network
Hands-on Lab: Test Drive Your OpenStack Network
 
Monitoring Security Policies for Container and OpenStack Clouds
Monitoring Security Policies for Container and OpenStack CloudsMonitoring Security Policies for Container and OpenStack Clouds
Monitoring Security Policies for Container and OpenStack Clouds
 
Open source IoT gateway
Open source IoT gatewayOpen source IoT gateway
Open source IoT gateway
 
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
AUTHENTICATION HANDOVER AND PRIVACY PROTECTION IN 5G HETNETS USING SOFTWARE-D...
 
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
SECURE DATA SHARING IN CLOUD COMPUTING USING REVOCABLE-STORAGE IDENTITY-BASED...
 
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
ATTRIBUTE-BASED DATA SHARING SCHEME REVISITED IN CLOUD COMPUTING,bulk ieee pr...
 
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
Pro active datacenter-infrastructures-ccie-bulent-morten-16.10.2014
 
MidoNet Differentiation and Overview
MidoNet Differentiation and OverviewMidoNet Differentiation and Overview
MidoNet Differentiation and Overview
 
FIWARE-IoT-Broker-introduction
FIWARE-IoT-Broker-introductionFIWARE-IoT-Broker-introduction
FIWARE-IoT-Broker-introduction
 
Calico and juju
Calico and jujuCalico and juju
Calico and juju
 
Cloud Computing - ISO/IEC 17788
Cloud Computing - ISO/IEC 17788Cloud Computing - ISO/IEC 17788
Cloud Computing - ISO/IEC 17788
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
OpenStack Opportunity - Citrix
OpenStack Opportunity - CitrixOpenStack Opportunity - Citrix
OpenStack Opportunity - Citrix
 
DevNet Study Group: Using a SDK
DevNet Study Group: Using a SDKDevNet Study Group: Using a SDK
DevNet Study Group: Using a SDK
 
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
IEEE NFV-SDN 2017 - On the establishment of trust in the cloud-based ETSI NFV...
 
Comparison: VNS3 vs Vyatta
Comparison: VNS3 vs VyattaComparison: VNS3 vs Vyatta
Comparison: VNS3 vs Vyatta
 
Enhancing the Techniques to Secure Grid Computing
Enhancing the Techniques to Secure Grid ComputingEnhancing the Techniques to Secure Grid Computing
Enhancing the Techniques to Secure Grid Computing
 

Similar to When Cloud-Native Java meets Containers, Kubernetes and Istio

Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon Web Services Korea
 
Kubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOpsKubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOps
Ofir Makmal
 
Build12 factorappusingmp
Build12 factorappusingmpBuild12 factorappusingmp
Build12 factorappusingmp
Emily Jiang
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
WSO2
 
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
Weaveworks
 
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
Eurotech
 
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Ahmed Misbah
 
How to Make Istio Work with Your App
How to Make Istio Work with Your AppHow to Make Istio Work with Your App
How to Make Istio Work with Your App
KarenBruner
 
How to Make Istio Work with Your App
How to Make Istio Work with Your AppHow to Make Istio Work with Your App
How to Make Istio Work with Your App
StackRox
 
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup  MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
Stephanie Swart
 
Federating Infrastructure as a Service cloud computing systems to create a un...
Federating Infrastructure as a Service cloud computing systems to create a un...Federating Infrastructure as a Service cloud computing systems to create a un...
Federating Infrastructure as a Service cloud computing systems to create a un...
David Wallom
 
Api service mesh and microservice tooling
Api service mesh and microservice toolingApi service mesh and microservice tooling
Api service mesh and microservice tooling
Red Hat
 
Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019
Ram Vennam
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
apidays
 
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE
 
Istio: Using nginMesh as the service proxy
Istio: Using nginMesh as the service proxyIstio: Using nginMesh as the service proxy
Istio: Using nginMesh as the service proxy
Lee Calcote
 
Micro profile and istio
Micro profile and istioMicro profile and istio
Micro profile and istio
Emily Jiang
 
Cloud Native Summit 2019 Summary
Cloud Native Summit 2019 SummaryCloud Native Summit 2019 Summary
Cloud Native Summit 2019 Summary
Everett Toews
 
Introducing the Open Container Project
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container Project
Andrew Kennedy
 
Service mesh
Service meshService mesh
Service mesh
Arnab Mitra
 

Similar to When Cloud-Native Java meets Containers, Kubernetes and Istio (20)

Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
 
Kubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOpsKubernetes And Istio and Azure AKS DevOps
Kubernetes And Istio and Azure AKS DevOps
 
Build12 factorappusingmp
Build12 factorappusingmpBuild12 factorappusingmp
Build12 factorappusingmp
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
 
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
Security & Resiliency of Cloud Native Apps with Weave GitOps & Tetrate Servic...
 
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014An Introduction to Eclipse Kura - Eclipse Day Florence 2014
An Introduction to Eclipse Kura - Eclipse Day Florence 2014
 
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
 
How to Make Istio Work with Your App
How to Make Istio Work with Your AppHow to Make Istio Work with Your App
How to Make Istio Work with Your App
 
How to Make Istio Work with Your App
How to Make Istio Work with Your AppHow to Make Istio Work with Your App
How to Make Istio Work with Your App
 
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup  MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
MicroProfile as the Istio Programming Model | Virtual Eclipse Community Meetup
 
Federating Infrastructure as a Service cloud computing systems to create a un...
Federating Infrastructure as a Service cloud computing systems to create a un...Federating Infrastructure as a Service cloud computing systems to create a un...
Federating Infrastructure as a Service cloud computing systems to create a un...
 
Api service mesh and microservice tooling
Api service mesh and microservice toolingApi service mesh and microservice tooling
Api service mesh and microservice tooling
 
Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
 
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
 
Istio: Using nginMesh as the service proxy
Istio: Using nginMesh as the service proxyIstio: Using nginMesh as the service proxy
Istio: Using nginMesh as the service proxy
 
Micro profile and istio
Micro profile and istioMicro profile and istio
Micro profile and istio
 
Cloud Native Summit 2019 Summary
Cloud Native Summit 2019 SummaryCloud Native Summit 2019 Summary
Cloud Native Summit 2019 Summary
 
Introducing the Open Container Project
Introducing the Open Container ProjectIntroducing the Open Container Project
Introducing the Open Container Project
 
Service mesh
Service meshService mesh
Service mesh
 

Recently uploaded

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 

Recently uploaded (20)

Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 

When Cloud-Native Java meets Containers, Kubernetes and Istio

  • 1. When Cloud-Native Java meets Containers, Kubernetes and Istio — Yee-Kang Chang yeekangc@ca.ibm.com @yeekangc
  • 2. Cloud-Native Java Java-based programming paradigm that is native or optimized for a cloud environment Containers “A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.” - Docker.com Kubernetes “Kubernetes (K8s) is an open-source system for automating deployment, scaling, and management of containerized applications.” - Kubernetes.io Istio “… service mesh is … the network of microservices that make up [distributed microservice] applications and the interactions between them. … Istio provides behavioral insights and operational control over the service mesh as a whole, offering a complete solution to satisfy the diverse requirements of microservice applications.” - Istio.io© 2020 IBM Corporation 2
  • 3. 3 Cloud-Native Microservices 1. RESTful – Like cattle not pet, communicative 2. Configurable 3. Fault tolerant 4. Discoverable 5. Secure 6. Observable 7. Cloud ready – Heartbeat with cloud infrastructure
  • 4. Eclipse MicroProfile Config Fault Tolerance JWT Health Check MetricsOpen Tracing Open API JAX-RSJSON-PCDIRest Client JSON-B REST Foundation 100s of Microservices Operation Focus
  • 6. Eclipse MicroProfile Config Fault Tolerance JWT Health Check MetricsOpen Tracing Open API JAX-RSJSON-PCDIRest Client JSON-B REST Foundation 100s of Microservices Operation Focus
  • 7. 7 MicroProfile Config with Kubernetes A B env: - name: GREETING valueFrom: configMapKeyRef: name: greeting-config key: message kubectl create configmap greeting-config --from-literal message=Greetings... @Inject @ConfigProperty(name = "GREETING") private String greeting;
  • 8. 8 MicroProfile Health with Kubernetes A B readinessProbe: httpGet: path: /health/ready port: 9080 initialDelaySeconds: 15 periodSeconds: 5 failureThreshold: 1
  • 9. 9 MicroProfile Metrics with Kubernetes A B @POST @Counted(name="order", displayName="Order count", description="Number of times orders requested.") public Response orderCoffee(@Valid @NotNull CoffeeOrder order) { ... } Data in OpenMetrics format Collect and store data with Prometheus Visualize data with Grafana
  • 10. 10 MP OpenTracing with Kubernetes A B @Traced public void startBrew(CoffeeType coffeeType) { ... } JAX-RS methods are automatically traced by default Distributed tracing system that supports OpenTracing data Deploy and view traces with Zipkin or Jaeger
  • 11. 11 MicroProfile and Istio MicroProfile Istio Traffic Management N/A Routing rules • Use Istio for Blue-Green deployments, canary rollouts etc Fault Tolerance Application layer Retry, Timeout, Circuit Breaker, Bulkhead, Fallback Traffic between services Retry, Timeout, Circuit Breaker, Bulkhead • Istio for broader traffic management (and fault injection for testing) • Application-level fallback with MicroProfile Security Secure services with JWT Mutual TLS for transport Origin authentication with JWT • Use Istio’s origin authentication if services are not secured Observability or Telemetry API to instrument apps Roll your own Prometheus, Grafana, Zipkin, Jaeger etc Integration with Prometheus, Grafana, Jaeger, Zipkin • OOTB integration between MP-based services and Istio • View service mesh with Istio’s Kiali
  • 12. THE 12 FACTORS 1. Codebase 2. Dependencies 3. Config 4. Backing Services 5. Build, Release, Run 6. Processes 7. Port binding 8. Concurrency 9. Disposability 10.Dev / Prod parity 11.Logs 12.Admin Processes THE 12 FACTORS 1. Codebase 2. Dependencies 3. Config 4. Backing Services 5. Build, Release, Run 6. Processes 7. Port binding 8. Concurrency 9. Disposability 10.Dev / Prod parity 11.Logs 12.Admin Processes
  • 13. Istio to manage the services … Cloud-Native Java programming model like MicroProfile to code application behaviours easily for Cloud! Kubernetes to orchestrate the environment … Containerize your applications … Cloud-Native Java + Containers, Kubernetes and Istio = A Nice Match © 2020 IBM Corporation 13
  • 14. Resources Further reading MicroProfile, the microservice programming model made for Istio https://www.eclipse.org/c ommunity/eclipse_newsle tter/2018/september/Micr oProfile_istio.php Try it out Configuring microservices in Kubernetes https://openliberty.io/guid es/kubernetes- microprofile-config.html Checking the health of microservices on Kubernetes https://openliberty.io/guid es/kubernetes- microprofile-health.html Managing microservice traffic using Istio https://openliberty.io/guid es/istio-intro.html Sample implementation https://github.com/ibm- cloud- architecture/refarch- cloudnative- kubernetes/blob/micropro file/docs/istio.md © 2020 IBM Corporation 14