Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Easy Microservices in the cloud with Kubernetes...
Search
Sendil Kumar N
November 14, 2019
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Easy Microservices in the cloud with Kubernetes and Istio
Sendil Kumar N
November 14, 2019
More Decks by Sendil Kumar N
See All by Sendil Kumar N
[Heapcon-2023] Building High Performance Web Applications
sendilkumarn
0
130
Building Reactive Microservices with Kotlin & running on Kubernetes
sendilkumarn
0
250
Building Reactive Microservices with JHipster & K8s
sendilkumarn
0
68
Designing High Performance React Applications
sendilkumarn
1
210
Batching, Suspense, and Server Components
sendilkumarn
0
95
DevNexus_Building_with__Zero_Trust_Architecture_Copy.pdf
sendilkumarn
0
110
Lessons Learnt with Visual Testing and Snapshots
sendilkumarn
0
170
Easy Microservices with K8s & Istio
sendilkumarn
0
140
KHipster - Kotlin Hipster
sendilkumarn
0
290
Other Decks in Technology
See All in Technology
The kernel report
ennael
PRO
1
190
AI駆動開発で仕様はどこまで書くべきか? ― 人とAIの責務境界から考える開発プロセスの実践
takahiromatsui
1
290
並行性の問題を防げ!実践トランザクション入門
occhi
0
150
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
510
Account Factory for Terraformによる 標準化されたアカウント発行の自動化
pensuke628
0
120
形式手法を使って仕様をコーディングしよう
mikanichinose
0
160
20260930_Gemma4_Hands-on
tsho
0
210
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
leveragestech
PRO
0
130
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
110
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
180
IR Today: Theory, Practice, and Agents
dtunkelang
0
320
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
120
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Bash Introduction
62gerente
615
220k
Exploring anti-patterns in Rails
aemeredith
4
520
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Prompt Engineering for Job Search
mfonobong
0
470
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
510
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Transcript
Sveiki Lithuania
Questions @ sli.do
Easy microservices in the cloud with Kubernetes & Istio
Sendil Kumar @sendilkumarn
None
None
Senior Software Engineer @uber
Passionate about Open Source Senior Software Engineer @uber
Passionate about Open Source Senior Software Engineer @uber Team member
@JHipster
Passionate about Open Source Senior Software Engineer @uber Team member
@JHipster Crafting @KHipster
Agenda K8s Istio JHipster Microservices JHipster Microservices K8s & Istio
Docker
Docker Self Contained images
Docker Self Contained images Portability
Docker Managing the infrastructure
Docker Managing the infrastructure Deciding when and how to run
the applications
Kubernetes
Kubernetes De-coupled infrastructure completely
K8s is an open-source system
K8s is an open-source system that automates deployment containerised applications
K8s is an open-source system that automates deployment scales (up/down/in/out)
Containerised applications
K8s is an open-source system that automates deployment scales (up/down/in/out)
manages Containerised applications
K8s makes it easy and simple
But K8s itself is not simple
How Kubernetes works?
Cluster mode
Kubernetes Master Nodes Nodes Nodes
kubectl apply -f some.yml Api Server etcd Scheduler Controller create
yaml file connects via CLI adds to the queue stores sends to the controller Kubernetes Land
Api Server etcd Scheduler Controller Kubernetes Land Control Plane
Worker Node signals to start the deployment Kubelet Kubelet Kubelet
Worker Node Kubelet Kubelet Kubelet Worker Node Kubelet Kubelet Kubelet Scheduler
handles networking Worker Node Kubelet Kube proxy Kubelet Kube proxy
Kubelet Kube proxy Kubelet Kube proxy
K8s states the (desired) running state of application
Microservices
more freedom to react Microservices
respond faster Microservices
Technology Heterogeneity
Fault isolation
Granular Scaling
❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌
Don’t violate DRY inside microservice.
Microservices with JHipster
API Gateway BFF Pattern
How does JHipster app looks like?
Java / Kotlin backend Zuul UAA
Java / Kotlin backend Zuul UAA Microservices Gateway
Service Registry
JHipster Registry Consul
JHipster Registry Consul Eureka + Spring Cloud Config Admin Server
Easier in multi-node cluster Availability over consistency Consistency over Availability - All nodes provide correct detail every time
Consoles
Elasticsearch Logstash Kibana JHipster Console
Consul / JHipster Registry Console Microservices Gateway Microservices
We will generate…
Store Gateway Notification Invoice Product
JHipster demo time
None
Harder to control
Harder to Manage
Harder to Secure
Service A Service B Service C
Service A Service B Service C Logging Monitoring Networking
Service A Service B Service C Common Services…
Istio
Service mesh
network of inter connected microservices
Without any changes in your services
Without any changes in your services Control Connect Secure Observe
But how Istio does it?
App PROXY Envoy proxy
Envoy proxy Lightweight c++ protocol Platform-agnostic Network abstraction
App PROXY Mixer Policy control Telemetry collection
App PROXY Mixer Control Plane
Control Plane App PROXY Mixer Pilot Galley Citadel Service discovery
Validate, process & distribute Authentication
Control Plane App PROXY Mixer Pilot Galley Citadel Service discovery
Validate, process & distribute Authentication Data plane
Control Plane App PROXY Mixer Pilot Galley Citadel Control Connect
Secure Observe
JHipster kubernetes
• Kubernetes + Istio configuration • Running in GCloud
The best practices
Single Responsibility Principle Smaller YAML files Split the files
Smaller image sizes Alpine images for the win Faster to
boot
Healthy - Zombie
Single process in a container… Docker don’t know which process
crashed
Services - RED pattern Requests - Errors - Duration pattern
RED
Resources - USE pattern Utilization - Saturation - Errors pattern
Think about Requests / Limits
Clean up unused resources
Monitor and tune
Questions…
Thanks…