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
650
CI details in Kubernetes
matsu1235
5
1.3k
K8sNativeSecurityToolkit
matsu1235
4
930
DockerCompose to k8s
matsu1235
0
1.9k
Other Decks in Technology
See All in Technology
Software Engineering in an AI-Driven World
erikjhordan_rey
0
130
Active Directory と Entra ID のむむむな関係
murachiakira
PRO
4
1.7k
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
200
Ebitengine製iOSアプリ公開ボタンを押す会
eiei114
0
110
会社説明資料_最新版
demaecan
0
32k
Metadata - Section 3 : Dublin Core Standard · DC
mohab1
0
120
Reticulum, le réseau cypherpunk dont vous avez besoin !
rlifchitz
0
110
BALLAS Technology Deck
ballas_inc
0
330
FinOpsを導入してマルチプロダクトのコスト最適化を実現する
kworkdev
PRO
0
140
分析作業をどこまで任せるか自分で決められる AIネイティブBI『Golden Analytics』が 良さげな話 /golden-analytics-is-ai-native-bi
shinyaa31
0
130
続・ソフトウェアアーキテクトのための意思決定術: Decision Readiness, Revisited — When AI Changes the Economics of Software Architecture
snoozer05
PRO
9
2.8k
お客様の「やりたい」の先を見通す合意形成プロセス ~裏にある課題と不安を解きほぐすコツ~
yukakoseki
0
130
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
440
Six Lessons from altMBA
skipperchong
29
4.6k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
800
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
480
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
371
20k
Designing Experiences People Love
moore
143
24k
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をやっていきましょう!