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
PipeCDでGitOpsやってみよう!
Search
Kenta Kozuka
June 16, 2023
Programming
0
850
PipeCDでGitOpsやってみよう!
Kenta Kozuka
June 16, 2023
Tweet
Share
More Decks by Kenta Kozuka
See All by Kenta Kozuka
フィーチャーフラグ&ABテストツールBucketeer開発の経緯 〜社内基盤としてのプロダクト戦略〜
kentakozuka
0
170
事業部を超えた 開発生産性向上に挑戦する
kentakozuka
7
1.6k
1000人を超えるエンジニア組織へのGitHub Copilot導入促進
kentakozuka
0
360
KubeCon 2023 China Recap & ブースを出展してきました
kentakozuka
0
250
PipeCD Good First Issues
kentakozuka
0
29
サイバーエージェントでCDツールを内製した話
kentakozuka
1
490
サイバーエージェントのフィーチャーフラグを活用した高速開発
kentakozuka
0
55
リアルタイムデータ分析基盤をKafka(Strimzi) & Druidで構築し
kentakozuka
0
95
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする
kentakozuka
0
70
Other Decks in Programming
See All in Programming
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
550
Ruby Parser progress report 2025
yui_knk
1
460
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
480
私の後悔をAWS DMSで解決した話
hiramax
4
210
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
570
RDoc meets YARD
okuramasafumi
4
170
個人軟體時代
ethanhuang13
0
330
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
310
API Platform 4.2: Redefining API Development
soyuka
0
180
ぬるぬる動かせ! Riveでアニメーション実装🐾
kno3a87
1
230
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
Featured
See All Featured
The Invisible Side of Design
smashingmag
301
51k
We Have a Design System, Now What?
morganepeng
53
7.8k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Documentation Writing (for coders)
carmenintech
74
5k
Agile that works and the tools we love
rasmusluckow
330
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
PipeCDで GitOpsやってみよう! Kenta Kozuka
@kentakozuka @kenta_kozuka CyberAgent PipeCD maintainer #DevOps, #DeveloperProductivity About me
3 GitOpsとは?
4
基本的なCI/CDの役割
gitops 6
GitOpsはCDの1つの手法
GitOpsのメリット • 直接環境にアクセスしなくてよい • 全ての構成変更はGit(PR)を通して行われる • 今Gitで確認できる構成 == 今動いている構成 ◦
Giterminism: What you Git is what you get! (werf) • 全ての変更は追跡可能
9 PipeCDで GitOps やってみよう
10
PipeCD • GitOpsスタイルのCD • k8sだけでなくECS, Lambda, Cloud Run, Terraformなどを統一 したUXで管理できる
PipeCD
シンプルなUIと可視性 UIはアプリケーションの状態をリアルタイムで可視化し、 どのタイミングで何が発生したかが明示される
マルチクラウド & マルチテナント 様々なプラットフォーム、アプリケーション、テレメトリーに対応 マルチクラスタ・テナンシーでの運用が可能
Kubernetesエコシステムとのインテグレーション
高度な自動化 エラーレートに基づく 自動ロールバック 構成変更の自動検知
Control Plane & Agentモデル デプロイはクラスタに配置するpipedにより行われ、 アプリケーションのクレデンシャルが外部に漏れることがない
DevOps指標の可視化
Plan Preview
セキュリティ • ビルトインのシークレット管理 • RBAC • SSO
EventWatcher UPDATE
22 実際に見てみよう! pipecd.dev
23 プログレッシブデリバリー もやってみよう
プログレッシブデリバリー • 機能を段階的に公開していく • ユーザーへの影響を細かく制御する • 全てのプロセスを自動化 commit rollout analyze
release deploy rollback
プログレッシブデリバリーのプロセス • トラフィック制御(カナリアデプロイメント) • 分析(カナリア分析) • 自動化されたロールバック
分析 • モニタリングシステムからメトリクス(ログ)を取得 • 悪い状態を自動で検出する
27 PipeCDで どのように行うか
28 ADA
ADA • Automated Deployment Analysis (ADA) という機能が分析を担う • ユーザーのモニタリングシステムからメトリクスを取得 •
パイプラインの1つのステージとして設定に追加するだけ • 追加コンポーネントは不要
ADAの有効化 • Automated Deployment Analysis (ADA) という機能が分析を担う • ユーザーのモニタリングシステムからメトリクスを取得 •
追加コンポーネントは不要 • パイプラインの1つのステージとして設定に追加するだけ
Configuration
Configuration ANALYSIS ステージへ →
Static Rules
Analysis
Analysis Template リポジトリ共通のADA設定をテンプレート化できる
Supported providers • Prometheus • Datadog Incubating • CloudWatch •
NewRelic • Google Cloud Monitoring 36
Deployment chain
Deployment chain 38 dev stg prd asia us europe
今やっていること
Custom Sync 40
pipe-cd/pipe @pipecd_dev https://pipecd.dev/ We always welcome your contributions!
CNCF Sandboxになりました!
さいごに Developer Productivity室では全方位でエンジニア募集中! #PipeCD #DevOps #開発生産性 #PipeCDのステッカー に興味があれば、 「Developer Productivity室」で検索か、
@kenta_kozukaまでDMください🙋
参考 • https://opengitops.dev/ • https://www.weave.works/blog/gitops-operations-by-pull-request 44