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
CI in kubernetes
Search
matsuo
June 13, 2020
Technology
4.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CI in kubernetes
matsuo
June 13, 2020
More Decks by matsuo
See All by matsuo
how-to-make-the-helm-operator
matsu1235
0
620
CI details in Kubernetes
matsu1235
5
1.3k
K8sNativeSecurityToolkit
matsu1235
4
920
DockerCompose to k8s
matsu1235
0
1.9k
Other Decks in Technology
See All in Technology
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
WasmをRustにする
sansantech
PRO
0
150
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.7k
初対面のメンバーがチームを組み、Claude Codeでゼロからサービスをリリース
mkdev10
1
120
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
2
330
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
1
140
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.4k
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
860
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
580
メルペイ 会計システム概要と歴史
mewuto
0
210
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
130
AIは爆速なのに、私が詰まっていた話 ― 音声入力と鳴くマスコットでボトルネックを削る
yama3133
0
600
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
620
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
530
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
590
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Believing is Seeing
oripsolob
1
240
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
450
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
920
Side Projects
sachag
456
43k
Transcript
マスター タイトルの書式設定 KubernetesにおけるCIについて KubeFest Tokyo 2020 - LT
マスター タイトルの書式設定 自己紹介 名前 : 松尾 所属 :
株式会社オージス総研 職種 : インフラエンジニア 1
マスター タイトルの書式設定 そもそもCIとは? 2
マスター タイトルの書式設定 そもそもCIとは? Continuous Integrationの略 継続的インテグレーションと呼ばれている 開発者がコード変更を行うたびに、自動化されたビルドやテストを行うこと
これにより、小さなサイクルでインテグレーションを繰り返し行い、エラー修正や開発を迅速に行 うことが出来る 3 Plan Code Build Test Release Deploy Operate Continuous Integration
マスター タイトルの書式設定 CIの構成要素 4
マスター タイトルの書式設定 CIの構成要素 5 このうちテストには Lint、コード規約、ユニットテスト デプロイテスト
結合テスト 負荷テスト 脆弱性チェック シークレットチェック ベストプラクティスチェック コンプライアンスチェック カオスエンジニアリング ・・・ 今回は主に、テストについてお話します Code Build Test
マスター タイトルの書式設定 Kubernetesの構成要素 6
マスター タイトルの書式設定 物理/VMホスト 物理/VMホスト Kuberntesクラスタ コンテナ 従来システムの構成要素 Kubernetesを使ったシステムの構成要素 OS アプリケーション
ミドルウェア OS アプリケーション ミドルウェア 7 Kubernetesの構成要素 ※簡略化して書いています
マスター タイトルの書式設定 Gitリポジトリ コンテナレジストリ Dockerfile アプリケーション コンテナイメージ Manifest 適用 物理/VMホスト
Kuberntesクラスタ コンテナ OS アプリケーション ミドルウェア 8 Kubernetesの構成要素 開発者 ※簡略化して書いています プッシュ 静的なもの 動的なもの
マスター タイトルの書式設定 レイヤー 静的な 構成要素 動的な 構成要素 物理/VM等の インフラ構成 Terraform、CFn等
実環境 Kubernetes Manifest Kubernetesクラスタ コンテナ Dockerfile ベースイメージ コンテナイメージ ミドルウェア パッケージ アプリケーションコード リポジトリ Gitリポジトリ - コンテナ レジストリ - 9 Kubernetesの構成要素
マスター タイトルの書式設定 Kubernetsの構成要素に対する テスト例 10
マスター タイトルの書式設定 Kubernetsの構成要素に対するテスト例 静的テスト(ファイル) アプリケーションプログラム Lint、コード規約
ユニットテスト インフラ構成(CFn) Lint(cfn-lint) セキュリティチェック(cfn-ng) Dockerfile ベストプラクティスチェック(hadolint) K8s Manifest セキュリティチェック(kubesec) 自作ガバナンスルールのチェック(conftest) Yamlフォーマットチェック(kubeval) 結合テスト(kubetest) その他 Gitシークレットチェック(Git-secrets) 静的テスト(コンテナイメージ) CVE脆弱性チェック(Trivy) CISベンチマーク、ベストプラクティスのチェック(dockle) 動的テスト 実際にテストクラスタにデプロイして簡易的なテストを行う(kind) カオスエンジニアリング(litmus) 11
マスター タイトルの書式設定 いつテストを行うべきか? 12
マスター タイトルの書式設定 いつテストを行うべきか? 13 一般的にはShift Left Testingという考え方があり、ライフサイクルのより手前、つ まり静的なものに対して、早期かつ頻繁にテストを行うべきと言われています。 Gitリポジトリ
コンテナレジストリ Dockerfile コンテナイメージ Manifest 適用 物理/VMホスト Kuberntesクラスタ コンテナ OS アプリケーション ミドルウェア 開発者 プッシュ 静的なもの 動的なもの テスト
マスター タイトルの書式設定 KubernetesにおけるCI例 14
マスター タイトルの書式設定 KubernetesにおけるCI例 15 Push CIツール • アプリケーションコード • Lint、ユニットテスト
• Dockerfile • 脆弱性チェック • ベストプラクティスチェック • 全ファイル • シークレットチェック --- ビルド実施 --- • コンテナイメージ • ベストプラクティスチェック Push git Hook dev アプリケーション コード Dockerfile コンテナレ ジストリ Git-secrets コンテナ イメージ
マスター タイトルの書式設定 KubernetesにおけるCI例 16 Manifest Kubernetes クラスタ Push CIツール •
Manifest • Yamlフォーマットチェック • ユニットテスト • ベストプラクティスチェック • ガバナンスチェック • シークレットチェック 適用 git Hook conftest Git-secrets kubetest kubeval k8s admin
マスター タイトルの書式設定 こちらも良ければお願いします
マスター タイトルの書式設定 Shift Leftを心掛けてKubernetesでも CIをやっていきましょう!