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
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
580
CI details in Kubernetes
matsu1235
5
1.3k
K8sNativeSecurityToolkit
matsu1235
4
910
DockerCompose to k8s
matsu1235
0
1.9k
Other Decks in Technology
See All in Technology
インフラ寄りSREでも 開発に踏み出せる〜境界を越えてユーザー体験に向き合いたい〜
sansantech
PRO
2
3.7k
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
110
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
13
6.1k
関数型の考えを TypeScript に持ち込んで、テストしやすい純粋関数を増やす / Pure at the Core, Effects at the Edge: Bringing Functional Thinking into TypeScript
kaminashi
1
110
Devsumi 2026 Summer 人もAIも使える共通基盤を事業の加速装置にする~デザインシステム運用に学ぶ組織レバレッジ~ 渡辺 凌央
legalontechnologies
PRO
0
110
SRE依存からの脱却 運用を開 発チームへ移す、 フルサイ クル開 発体制の実践
joooee0000
0
2.7k
穢れた技術選定について
watany
4
400
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
410
シンガポールで登壇してきます
yama3133
0
120
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
4
2.9k
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
13
2k
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
180
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.6k
Exploring anti-patterns in Rails
aemeredith
3
440
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
330
We Are The Robots
honzajavorek
0
280
A designer walks into a library…
pauljervisheath
211
24k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
390
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
270
Building Flexible Design Systems
yeseniaperezcruz
330
40k
KATA
mclloyd
PRO
35
15k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
190
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をやっていきましょう!