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
110
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
28
Shift Policy Enforcement Left using GitOps
crcsmnky
0
140
Securing your microservices using Istio
crcsmnky
1
1.6k
Enforcing Service Mesh Structure using OPA Gatekeeper
crcsmnky
0
320
Modern App Dev using Cloud Run and Knative
crcsmnky
0
50
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
95
Other Decks in Technology
See All in Technology
The Rise of LLMOps
asei
5
1.2k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
SSMRunbook作成の勘所_20241120
koichiotomo
1
110
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
370
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
フルカイテン株式会社 採用資料
fullkaiten
0
40k
地理情報データをデータベースに格納しよう~ GPUを活用した爆速データベース PG-Stromの紹介 ~
sakaik
1
150
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
180
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Typedesign – Prime Four
hannesfritz
40
2.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Unsuck your backbone
ammeep
668
57k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
BBQ
matthewcrist
85
9.3k
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