PipeCDでGitOpsやってみよう!
by
Kenta Kozuka
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PipeCDで GitOpsやってみよう! Kenta Kozuka
Slide 2
Slide 2 text
@kentakozuka @kenta_kozuka CyberAgent PipeCD maintainer #DevOps, #DeveloperProductivity About me
Slide 3
Slide 3 text
3 GitOpsとは?
Slide 4
Slide 4 text
4
Slide 5
Slide 5 text
基本的なCI/CDの役割
Slide 6
Slide 6 text
gitops 6
Slide 7
Slide 7 text
GitOpsはCDの1つの手法
Slide 8
Slide 8 text
GitOpsのメリット ● 直接環境にアクセスしなくてよい ● 全ての構成変更はGit(PR)を通して行われる ● 今Gitで確認できる構成 == 今動いている構成 ○ Giterminism: What you Git is what you get! (werf) ● 全ての変更は追跡可能
Slide 9
Slide 9 text
9 PipeCDで GitOps やってみよう
Slide 10
Slide 10 text
10
Slide 11
Slide 11 text
PipeCD ● GitOpsスタイルのCD ● k8sだけでなくECS, Lambda, Cloud Run, Terraformなどを統一 したUXで管理できる
Slide 12
Slide 12 text
PipeCD
Slide 13
Slide 13 text
シンプルなUIと可視性 UIはアプリケーションの状態をリアルタイムで可視化し、 どのタイミングで何が発生したかが明示される
Slide 14
Slide 14 text
マルチクラウド & マルチテナント 様々なプラットフォーム、アプリケーション、テレメトリーに対応 マルチクラスタ・テナンシーでの運用が可能
Slide 15
Slide 15 text
Kubernetesエコシステムとのインテグレーション
Slide 16
Slide 16 text
高度な自動化 エラーレートに基づく 自動ロールバック 構成変更の自動検知
Slide 17
Slide 17 text
Control Plane & Agentモデル デプロイはクラスタに配置するpipedにより行われ、 アプリケーションのクレデンシャルが外部に漏れることがない
Slide 18
Slide 18 text
DevOps指標の可視化
Slide 19
Slide 19 text
Plan Preview
Slide 20
Slide 20 text
セキュリティ ● ビルトインのシークレット管理 ● RBAC ● SSO
Slide 21
Slide 21 text
EventWatcher UPDATE
Slide 22
Slide 22 text
22 実際に見てみよう! pipecd.dev
Slide 23
Slide 23 text
23 プログレッシブデリバリー もやってみよう
Slide 24
Slide 24 text
プログレッシブデリバリー ● 機能を段階的に公開していく ● ユーザーへの影響を細かく制御する ● 全てのプロセスを自動化 commit rollout analyze release deploy rollback
Slide 25
Slide 25 text
プログレッシブデリバリーのプロセス ● トラフィック制御(カナリアデプロイメント) ● 分析(カナリア分析) ● 自動化されたロールバック
Slide 26
Slide 26 text
分析 ● モニタリングシステムからメトリクス(ログ)を取得 ● 悪い状態を自動で検出する
Slide 27
Slide 27 text
27 PipeCDで どのように行うか
Slide 28
Slide 28 text
28 ADA
Slide 29
Slide 29 text
ADA ● Automated Deployment Analysis (ADA) という機能が分析を担う ● ユーザーのモニタリングシステムからメトリクスを取得 ● パイプラインの1つのステージとして設定に追加するだけ ● 追加コンポーネントは不要
Slide 30
Slide 30 text
ADAの有効化 ● Automated Deployment Analysis (ADA) という機能が分析を担う ● ユーザーのモニタリングシステムからメトリクスを取得 ● 追加コンポーネントは不要 ● パイプラインの1つのステージとして設定に追加するだけ
Slide 31
Slide 31 text
Configuration
Slide 32
Slide 32 text
Configuration ANALYSIS ステージへ →
Slide 33
Slide 33 text
Static Rules
Slide 34
Slide 34 text
Analysis
Slide 35
Slide 35 text
Analysis Template リポジトリ共通のADA設定をテンプレート化できる
Slide 36
Slide 36 text
Supported providers ● Prometheus ● Datadog Incubating ● CloudWatch ● NewRelic ● Google Cloud Monitoring 36
Slide 37
Slide 37 text
Deployment chain
Slide 38
Slide 38 text
Deployment chain 38 dev stg prd asia us europe
Slide 39
Slide 39 text
今やっていること
Slide 40
Slide 40 text
Custom Sync 40
Slide 41
Slide 41 text
pipe-cd/pipe @pipecd_dev https://pipecd.dev/ We always welcome your contributions!
Slide 42
Slide 42 text
CNCF Sandboxになりました!
Slide 43
Slide 43 text
さいごに Developer Productivity室では全方位でエンジニア募集中! #PipeCD #DevOps #開発生産性 #PipeCDのステッカー に興味があれば、 「Developer Productivity室」で検索か、 @kenta_kozukaまでDMください🙋
Slide 44
Slide 44 text
参考 ● https://opengitops.dev/ ● https://www.weave.works/blog/gitops-operations-by-pull-request 44