Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
KCD Colombia - From 0 to Production with Kubern...
Search
Kevin Dubois
August 29, 2025
Technology
0
39
KCD Colombia - From 0 to Production with Kubernetes Native Development
Kevin Dubois
August 29, 2025
Tweet
Share
More Decks by Kevin Dubois
See All by Kevin Dubois
TDC Sao Paulo - Local Development in the AI Era
kdubois
0
64
BeJUG - Create (Agentic) AI-infused Apps, the Easy Way
kdubois
0
37
NL JUG - Quarkus LangChain4j Workshop
kdubois
0
14
JavaZone - Local Development in the AI Era
kdubois
0
66
KCD Colombia - Cloud Native Development in the AI Era
kdubois
0
89
We Are Developers 2025 - Create AI-infused Java Apps with LangChain4j and Quarkus
kdubois
1
170
We Are Developers 2025 - Progressive Delivery with Argo Rollouts
kdubois
1
76
KubeCon China - Progressive Delivery made easy with Argo Rollouts
kdubois
2
70
DevTalks 25 - Create your own AI-infused Java apps with ease
kdubois
2
180
Other Decks in Technology
See All in Technology
Rustから学ぶ 非同期処理の仕組み
skanehira
1
160
いま注目のAIエージェントを作ってみよう
supermarimobros
0
370
Snowflake×dbtを用いたテレシーのデータ基盤のこれまでとこれから
sagara
0
140
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
510
20250905_MeetUp_Ito-san_s_presentation.pdf
magicpod
1
100
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
130
「Linux」という言葉が指すもの
sat
PRO
4
140
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
2.7k
20250912_RPALT_データを集める→とっ散らかる問題_Obsidian紹介
ratsbane666
0
100
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
290
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/06 - 2025/08
oracle4engineer
PRO
0
120
Modern Linux
oracle4engineer
PRO
0
170
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
Building Applications with DynamoDB
mza
96
6.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
590
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Thoughts on Productivity
jonyablonski
70
4.8k
Music & Morning Musume
bryan
46
6.8k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
KATA
mclloyd
32
14k
Writing Fast Ruby
sferik
628
62k
Transcript
From 0 to Production- Grade with Kubernetes Native Development Kevin
Dubois IBM | @kevindubois.com
kevindubois Kevin Dubois ★ Sr. Principal Developer Advocate at ★
Technical Lead, CNCF DevEx TAG ★ Java Champion ★ From Belgium / Live in Switzerland ★ English, Dutch, French, Italian youtube.com/@thekevindubois linkedin.com/in/kevindubois github.com/kdubois @kevindubois.com
Working with Containers @kevindubois.com
Podman Desktop OSS Container Runtime @kevindubois.com podman-desktop.io
Cloud Native Buildpacks From source code to container image @kevindubois.com
Kubernetes Deployments @kevindubois.com
apiVersion: v1 kind: Service metadata: name: kubenative spec: ports: -
name: http port: 80 protocol: TCP targetPort: 8080 selector: app.kubernetes.io/name: kubenative apiVersion: apps/v1 kind: Deployment metadata: name: kubenative spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: kubenative template: spec: containers: - image: quay.io/kevin/demo name: kubenative ports: - containerPort: 8080 name: http protocol: TCP @kevindubois.com
@kevindubois
Ready?? Container Running Sends traffic App not ready
After 2.6s (Kafka, DB, Caching) App is ready to receive
traffic Container Running Sends traffic App not ready Ready??
Downtime of 2.6s Ready??
readinessProbe: failureThreshold: 3 httpGet: path: /q/health/ready port: 8080 scheme: HTTP
initialDelaySeconds: 5 livenessProbe: failureThreshold: 3 httpGet: path: /q/health/live port: 8080 scheme: HTTP initialDelaySeconds: 5 Readiness, Liveness, Startup Probes
containers: - name: nginx-container image: nginx:latest ports: - containerPort: 80
volumes: - name: secret-volume secret: secretName: your-secret-name Kubernetes Secrets & ConfigMaps kind: ConfigMap apiVersion: v1 metadata: name: properties immutable: false data: 'kafka-servers': kafka-bootstrap:9092 kind: Secret apiVersion: v1 metadata: name: postgresql data: database-name: xyz database-password: xyz database-user: xyz type: Opaque
resources: requests: memory: "300Mi" cpu: "250m" limits: memory: "400Mi" cpu:
"1000m" Resource Requests & Limits
None
None
Supersonic. Subatomic. Java @kevindubois.com mvn package
github.com/kdubois/quarkus-kubernetes-kafka-db
Serverless Kubernetes @kevindubois.com @thomasvitale.com
@kevindubois.com @thomasvitale.com Knative
None
Development Services @kevindubois.com @thomasvitale.com
@kevindubois.com Kubernetes for Local Development
Development Services Code, Test, Run, Debug @kevindubois.com
Testcontainers Services for development and testing @kevindubois.com
Observability @kevindubois.com
OpenTelemetry Unified observability @kevindubois.com opentelemetry.io
API Testing @kevindubois.com @thomasvitale.com
@kevindubois.com The open source, cloud native tool for API Mocking
and Testing
None
Conclusion @kevindubois.com @thomasvitale.com
Kubernetes Native Development From 0 to Production-Grade @kevindubois.com
Kevin Dubois youtube.com/@thekevindubois linkedin.com/in/kevindubois github.com/kdubois @kevindubois.com @
[email protected]
Muchas Gracias!!