Slide 1

Slide 1 text

22/11/2022 The One CD for All with GitOps

Slide 2

Slide 2 text

Kenta Nanao @knanao Software Engineer at CyberAgent inc.

Slide 3

Slide 3 text

Contents 1. What challenges existed 2. What is PipeCD? 3. Architecture Overview 4. PipeCD’s Features 5. Present and Future 6. Summary

Slide 4

Slide 4 text

1. What challenges existed

Slide 5

Slide 5 text

Project A Project B Project C Project D and more …

Slide 6

Slide 6 text

Lack of resources to operate and improve CD. Want to eliminate differences between platforms. Onboarding cost Progressive delivery Need approval stage

Slide 7

Slide 7 text

● Few teams that use CD correctly ● Cost ● Auth management and Security issue ● Delivery insight and Performance Challenges

Slide 8

Slide 8 text

● Easy to introduce ● High Security ● Support multi application kinds on multi-cloud (Extensible) ● Automation ● Support Progressive Delivery ● Strong Pipeline ● Cost Optimization Our Ideal CD

Slide 9

Slide 9 text

Existing Solutions

Slide 10

Slide 10 text

● Support only k8s ● Difficulty for managing SaaS in-house ● Poor UI ● Installation and Operation Cost and more… The problems of the existing solutions

Slide 11

Slide 11 text

2. What is PipeCD?

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

Missions ● Provide a consistent delivery process for every developer ● Provide simple and easy UI/UX for every one regardless of a project scale ● Provide high securities ● Provide high quality observability ● Provide fast and useful feedback

Slide 14

Slide 14 text

What is PipeCD?

Slide 15

Slide 15 text

GitOps > The core idea of GitOps is having a Git repository that always contains declarative descriptions of the infrastructure currently desired in the production environment and an automated process to make the production environment match the described state in the repository.   https://www.gitops.tech/#what-is-gitops

Slide 16

Slide 16 text

3. Architecture Overview

Slide 17

Slide 17 text

Control Plane & piped model

Slide 18

Slide 18 text

4. PipeCD’s Features

Slide 19

Slide 19 text

● Visibility ● Automation ● Safety and Security ● Multi-Provider and Multi-Tenancy ● Open Source Features

Slide 20

Slide 20 text

Playground QR https://play.pipecd.dev/?project=play

Slide 21

Slide 21 text

Let’s start PipeCDing

Slide 22

Slide 22 text

Visibility

Slide 23

Slide 23 text

Visibility - Application configuration

Slide 24

Slide 24 text

Visibility Visibility - Application configuration

Slide 25

Slide 25 text

Visibility - App Live State & Drift Detection

Slide 26

Slide 26 text

Automation - Progressive Delivery

Slide 27

Slide 27 text

Automation - Progressive Delivery & Notification

Slide 28

Slide 28 text

Automation - Remote upgrade & Remote config

Slide 29

Slide 29 text

Automation - Remote upgrade & Remote config

Slide 30

Slide 30 text

Automation - Plan Preview

Slide 31

Slide 31 text

Automation - Event Watcher

Slide 32

Slide 32 text

Safety and Security - Secret Management

Slide 33

Slide 33 text

app.con fi g.yaml secret.yaml Safety and Security - Secret Management

Slide 34

Slide 34 text

Safety and Security - RBAC

Slide 35

Slide 35 text

Multi-Provider and Multi-Tenancy ● Support multiple application kinds on multi-cloud including Kubernetes, Terraform, Cloud Run, AWS Lambda, Amazon ECS ● Support multiple analysis providers including Prometheus, Datadog, Stackdriver, and more ● Easy to operate multi-cluster, multi-tenancy by separating Control Plane and Pipedɹ

Slide 36

Slide 36 text

Open Source https://landscape.cncf.io/?selected=pipe-cd

Slide 37

Slide 37 text

5. Present and Future

Slide 38

Slide 38 text

Present - Serve the deployment for more than 2222 applications in-house - CNCF Landscape project - Support Kubernetes, Terraform, Cloud Run, Lamda and ECS 0 750 1500 2250 3000 2020/04 2022/01 2022/11

Slide 39

Slide 39 text

Future - Promote PipeCD more externally - CNCF Sandbox project - Support new features - Strong Team

Slide 40

Slide 40 text

6. Summary

Slide 41

Slide 41 text

Summary ● Easy to introduce → Configuration as Code, Strong UI ● High Security → Control Plane & Piped model, Secret Management, RBAC ● Support multi application kinds on multi-cloud (Extensible) → Kubernetes, Terraform, Cloud Run, Lamda, ECS ● Automation → Analysis, Auto Rollback, Notification, Remote Config & Remote Upgrade, Event Watcher, Plan Preview and more ● Support Progressive Delivery → Canary, BluGreen ● Strong Pipeline → Manual Approving, Traffic Weight ● Cost Optimization → Consistency CD Process

Slide 42

Slide 42 text

Summary We are hiring. 🚀 And We’re looking forward to your contributions. 🤝 Document: https://pipecd.dev GitHub: https://github.com/pipe-cd/pipecd Playground: https://play.pipecd.dev/applications?project=play