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
Kubecon: Continuously Delivering Microservices ...
Search
Sandeep Parikh
November 10, 2015
Technology
0
96
Kubecon: Continuously Delivering Microservices in Kubernetes
https://www.youtube.com/watch?v=Odg_g_F55gs
Sandeep Parikh
November 10, 2015
Tweet
Share
More Decks by Sandeep Parikh
See All by Sandeep Parikh
Bringing Kubernetes Policy Enforcement to GitLab
crcsmnky
0
25
Shift Policy Enforcement Left using GitOps
crcsmnky
0
130
Securing your microservices using Istio
crcsmnky
1
1.5k
Enforcing Service Mesh Structure using OPA Gatekeeper
crcsmnky
0
320
Modern App Dev using Cloud Run and Knative
crcsmnky
0
49
Service Mush: Debugging Istio Deployments
crcsmnky
0
52
Google Cloud for Serverless Compute
crcsmnky
1
140
Kubernetes and Hybrid Deployments
crcsmnky
0
230
MongoDB Europe 2016: Using Beam and BigQuery with MongoDB
crcsmnky
0
94
Other Decks in Technology
See All in Technology
RAGの性能を評価しよう
kurahara
1
280
MLOpsの「あるある」課題の解決と、そのためのライブラリgokart
mski_iksm
1
150
エムスリーマネジメントチーム紹介資料 / Introduction of M3 Management Team
m3_engineering
0
250
Oracle Cloud Infrastructure:2024年9月度サービス・アップデート
oracle4engineer
PRO
0
350
Renovate ではじめる運用レスなライブラリ更新 / 令和最新版 他人に自慢したいヤバいCI/CD LT会 @ yabaibuki.dev #2
ponkio_o
PRO
1
130
【shownet.conf_】3Dアプローチで守るセキュリティ
shownet
PRO
0
280
PREEMPT_RT over the years
ennael
PRO
0
300
Consoles, printk, Nested-NMIs_ Oh my!
ennael
PRO
0
160
スモールスタート、不都合な真実 〜 耳当たりの良い言葉に現場が振り回されないために/20240930-ssmjp-small-start
opelab
12
1.7k
【shownet.conf_】AI技術とUX監視の応用でShowNetの基盤を支えるモニタリングシステム
shownet
PRO
0
270
Understanding and Optimising INP
akshayysharma
0
150
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
1
150
Featured
See All Featured
Scaling GitHub
holman
458
140k
Embracing the Ebb and Flow
colly
83
4.4k
KATA
mclloyd
27
13k
Mobile First: as difficult as doing things right
swwweet
222
8.8k
What's in a price? How to price your products and services
michaelherold
243
11k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Documentation Writing (for coders)
carmenintech
65
4.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
42
6.5k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Rails Girls Zürich Keynote
gr2m
93
13k
Agile that works and the tools we love
rasmusluckow
327
21k
Transcript
Continuous Delivery in Kubernetes Sandeep Parikh @crcsmnky Solutions Architect Google
Cloud Platform
Why Is This Important Bulletproof process to go from code
to production Centralized, repeatable building/tagging/pushing Iterate quickly and reliably Hands off my kubectl
Continuous Integration Test Code Commit Push Test Build The ideal
development flow
Continuous Integration Test Code Commit Push Test Build The ideal
development flow Test D’oh! Code Commit Push Test Crap! Build Whoops! The real development flow
Continuous Delivery Test Build Deploy Testing Staging
Continuous Deployment Deploy Approve Deliver Profit
Why Continuous? Fail fast I broke the build! Blame fast
Who broke the build? Deliver faster Better software in customers hands!
Tools
Jenkins
Kubernetes Cluster (GKE) Kubernetes Cluster Node 1 Node 3 Node
2
Kubernetes Cluster (GKE) Jenkins Leader Node 1 Node 3 Node
2 Jenkins Leader
Kubernetes Cluster (GKE) Jenkins Service Node 1 Node 3 Node
2 Jenkins Leader Jenkins Service
Kubernetes Cluster (GKE) Jenkins Builder Node 1 Node 3 Node
2 Jenkins Leader Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Service Jenkins Builder
Kubernetes Cluster (GKE) Jenkins Proxy Node 1 Node 3 Node
2 Jenkins Leader Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Service Jenkins Builder nginx
Kubernetes Cluster (GKE) Jenkins Proxy Service Node 1 Node 3
Node 2 Jenkins Leader Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Builder Jenkins Service Jenkins Builder nginx nginx Service
Microservices
None
Kubernetes Cluster (GKE) Microservices Node 2 Node 1 Backend Frontend
Frontend Backend Service Frontend Frontend Service Backend Backend
Microservices & Namespaces Virtual clusters backed by the same physical
cluster Divide cluster resources by different use cases Supports quotas for managing resources Test, Staging, Production, etc.
Pods Time Microservices & Rolling Update Replace Replication Controller A
with Replication Controller B by updating one Pod at a time. A B A B A B A B A B A B
Workflow
Kubernetes Workflow Create Push Package Expose
Mapping To Jenkins Workflow plugin, Freestyle doesn’t fit Define a
flexible, extensible, script-based CD pipeline Groovy for scripting actions Supports human input/approval
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 Push 1
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 2 Push Build 1 2
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 2 3 Push Build Clone 1 2 3
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 2 3 4 Push Build Clone Stage 1 2 3 4
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 2 3 5 4 Push Build Clone Stage Approve 1 2 3 4 5
Workflow Repo Kubernetes Cluster (GKE) Github Jenkins µservice µservice Default
Staging Production 1 2 3 5 4 Push Build Clone Stage Approve Deploy 1 2 3 4 5 6 6
Demo Come find me after the talk and I promise
I’ll run it live :)
Shout Out Give Evan Brown (@evanbrown) a high-five next time
you see him. He’s super smart and got this whole thing working.
Questions, Comments @crcsmnky Repo https://github.com/GoogleCloudPlatform/continuous-deployment-on-kubernetes Docs Automated Image Builds with
Jenkins, Packer, and Kubernetes Distributed Load Testing using Kubernetes Real-time data analysis with Kubernetes, Google Cloud Pub/Sub, and BigQuery Real-time data analysis with Kubernetes, Redis, and BigQuery Resources