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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kenta Kozuka
June 16, 2023
Programming
990
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PipeCDでGitOpsやってみよう!
Kenta Kozuka
June 16, 2023
More Decks by Kenta Kozuka
See All by Kenta Kozuka
フィーチャーフラグ&ABテストツールBucketeer開発の経緯 〜社内基盤としてのプロダクト戦略〜
kentakozuka
0
240
事業部を超えた 開発生産性向上に挑戦する
kentakozuka
7
1.7k
1000人を超えるエンジニア組織へのGitHub Copilot導入促進
kentakozuka
0
390
KubeCon 2023 China Recap & ブースを出展してきました
kentakozuka
0
310
PipeCD Good First Issues
kentakozuka
0
61
サイバーエージェントでCDツールを内製した話
kentakozuka
1
560
サイバーエージェントのフィーチャーフラグを活用した高速開発
kentakozuka
0
67
リアルタイムデータ分析基盤をKafka(Strimzi) & Druidで構築し
kentakozuka
0
120
フィーチャーフラグを使用した開発で 迅速かつ安全にリリースする
kentakozuka
0
90
Other Decks in Programming
See All in Programming
yield再入門 #phpcon
o0h
PRO
0
840
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
630
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
290
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
180
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
570
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
120
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
0
570
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
820
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
190
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
150
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.8k
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
120
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Designing for Performance
lara
611
70k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
820
Utilizing Notion as your number one productivity tool
mfonobong
4
480
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Optimizing for Happiness
mojombo
378
71k
Building AI with AI
inesmontani
PRO
1
1.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
190
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