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
Introduction of Cloud Native CI/CD on Kubernetes
Search
Kyohei Mizumoto
August 30, 2019
Technology
0
63
Introduction of Cloud Native CI/CD on Kubernetes
Slides for in-house study meeting.
Kyohei Mizumoto
August 30, 2019
Tweet
Share
More Decks by Kyohei Mizumoto
See All by Kyohei Mizumoto
クラウドネイティブ環境の脅威モデリング
kyohmizu
2
520
コンテナサプライチェーンセキュリティ
kyohmizu
2
270
サイバーセキュリティの最新動向:脅威と対策
kyohmizu
1
310
コンテナセキュリティの基本と脅威への対策
kyohmizu
4
1.7k
安全な Kubernetes 環境を目指して
kyohmizu
4
1.2k
Unlocking Cloud Native Security
kyohmizu
5
1.4k
コンテナ × セキュリティ × AWS
kyohmizu
11
4k
コンテナセキュリティ
kyohmizu
10
4.3k
コンテナイメージのマルウェア検出とその実用性について
kyohmizu
4
3.9k
Other Decks in Technology
See All in Technology
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
2
8k
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
7
1.1k
データ基盤からデータベースまで?広がるユースケースのDatabricksについて教えるよ!
akuwano
3
130
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
400
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
1
300
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
180
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
54
20k
Geminiとv0による高速プロトタイピング
shinya337
1
280
20250705 Headlamp: 專注可擴展性的 Kubernetes 用戶界面
pichuang
0
280
CRE Camp #1 エンジニアリングを民主化するCREチームでありたい話
mntsq
1
140
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
240
Delta airlines®️ USA Contact Numbers: Complete 2025 Support Guide
airtravelguide
0
340
Featured
See All Featured
Fireside Chat
paigeccino
37
3.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Practical Orchestrator
shlominoach
189
11k
Speed Design
sergeychernyshev
32
1k
GitHub's CSS Performance
jonrohan
1031
460k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
What's in a price? How to price your products and services
michaelherold
246
12k
It's Worth the Effort
3n
185
28k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Transcript
Introduction of Cloud Native CI/CD on Kubernetes
Trail Map https://github.com/cncf/trailmap
CI/CD From the trail map: Setup Continuous Integration/Continuous Delivery (CI/CD)
so that changes to your source code automatically result in a new container being built, tested, and deployed to staging and eventually, perhaps, to production
Landscape https://github.com/cncf/landscape
Landscape
CI/CD on Kubernetes
Pipeline-based CI tool Configuration as Code Fancy Visualization Management using
CLI tool Concourse CI https://concourse-ci.org/
Get Started https://github.com/helm/charts/tree/master/stable/concourse TL;DR; $ helm install stable/concourse Need to
set externalUrl to access from outside Install the fly CLI tool for concourse management $ fly -h
Pipeline https://github.com/starkandwayne/concourse-tutorial/blob/master/tutorials/basic/job- inputs/pipeline.yml resources: - name: resource-tutorial type: git source:
uri: https://github.com/starkandwayne/concourse-tutorial.git branch: develop - name: resource-app type: git source: uri: https://github.com/cloudfoundry-community/simple-go-web-app.git jobs: - name: job-test-app public: true plan: - get: resource-tutorial - get: resource-app trigger: true - task: web-app-tests file: resource-tutorial/tutorials/basic/job-inputs/task_run_tests.yml
Pipeline
Declarative, GitOps CD tool Automated deployment of desired application states
Support for config management tools (Kustomize, Helm etc) Argo CD https://argoproj.github.io/argo-cd/
Get Started Quick start $ kubectl create namespace argocd $
kubectl apply -n argocd -f \ https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml Access the endpoint by browser & Login Get admin password $ kubectl get pods -n argocd -l app.kubernetes.io/name=argocd-server \ -o name | cut -d'/' -f 2
Application
Application Manifest apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: concourse namespace:
argocd spec: project: default source: repoURL: https://github.com/helm/charts.git targetRevision: a7816917c50bc31471793f54036a7eaf0eeeb701 path: stable/concourse helm: parameters: - name: "web.service.type" value: "LoadBalancer" - name: "concourse.web.bindPort" value: "80" - name: "concourse.web.externalUrl" value: ${URL} releaseName: concourse destination: server: https://kubernetes.default.svc namespace: default
CI/CD Architecture In my self-study project:
Demo
Thank you!