Des silos au Platform Engineering en passant par le DevOps : adopter GitOps et aller au-delà de l’hype

A presentation at Cloud Sud in September 2023 in by Horacio Gonzalez

Slide 1

Slide 1

14 SEPTEMBRE 2023 Des silos au Platform Engineering en passant par le DevOps Adopter GitOps et aller au-delà de l’hype Horacio Gonzalez OVH Cloud Sébastien Blanc Aiven

Slide 2

Slide 2

Who are we? Sébastien Blanc DevRel Aiven @sebi2706 Horacio Gonzalez DevRel OVHcloud @LostInBrittany

Slide 3

Slide 3

14 SEPTEMBRE 2023 IT in the 90s Once upon a time…

Slide 4

Slide 4

In a time almost forgotten When even internet was young…

Slide 5

Slide 5

When Windows 95 was the cutting edge And a 100 Mb disk was huge…

Slide 6

Slide 6

Big companies still used mainframes Bigger, fancier, but still the same old IBM

Slide 7

Slide 7

Bare-metal based IT reigned Control, reliability, security… But cost, rigidity, logistics…

Slide 8

Slide 8

Applying the industrial model Trying to shoehorn IT into a model where it doesn’t fit

Slide 9

Slide 9

Walls & Silos And procedures, and hierarchy, and corporate politics

Slide 10

Slide 10

14 SEPTEMBRE 2023 Tooling evolves CVS, Ant and (Leeeroy) Jenkins

Slide 11

Slide 11

Old school procedures

Slide 12

Slide 12

Tooling empowering changes Theory existed since 1999 But without the right tooling…

Slide 13

Slide 13

Source control tools Better than copying and renaming folders…

Slide 14

Slide 14

Dependency management & build Better than grabbing each dependency in their website and running javac by hand…

Slide 15

Slide 15

Unit testing and continuous integration Hudson CI If Testing is Doubting, let’s doubt automatically

Slide 16

Slide 16

Monitoring tools No more spending nights looking at a status screen

Slide 17

Slide 17

Too many changes in a few years Old ways were difficult to change

Slide 18

Slide 18

Slide 19

Slide 19

14 SEPTEMBRE 2023 XP, agility and DevOps Buzzwords that changed the IT

Slide 20

Slide 20

Extreme Programming

Slide 21

Slide 21

Manifesto for Agile Software Development

Slide 22

Slide 22

Breaching walks, breaking down silos

Slide 23

Slide 23

The business of Agility The Dark Side rises

Slide 24

Slide 24

Agile Tooling

Slide 25

Slide 25

Back to industrial practices ?

Slide 26

Slide 26

Is DevOps the same than Agility? Can you have one without the other?

Slide 27

Slide 27

You could have Agility without DevOps Even if I fail to see why you would want…

Slide 28

Slide 28

DevOps is a reaction to the wall of confusion Making the different stakeholders to work together in sync

Slide 29

Slide 29

You cannot have DevOps without agility DevOps is about shorter development sprints, increased focus on testing, increasing automation

Slide 30

Slide 30

DevOps comes with Agility DevOps is an extension of Agile that includes systems and operations

Slide 31

Slide 31

14 SEPTEMBRE 2023 Enter the Cloud Renting server time in other’s people infra

Slide 32

Slide 32

From virtualisation to the cloud How to use the infrastructure at its full capacity

Slide 33

Slide 33

The five pillars of the Cloud

Slide 34

Slide 34

Cloud demands automation

Slide 35

Slide 35

It changes the way how IT works And it demands a mentality change

Slide 36

Slide 36

Empowering developers Infrastructure is only a click away

Slide 37

Slide 37

Distributed is the new black Cloud Native architectures and services

Slide 38

Slide 38

Sysadmins who code Creating tools: automation, monitoring, observability…

Slide 39

Slide 39

New roles appear: SRE WTF is a System Reliability Engineer?

Slide 40

Slide 40

Slide 41

Slide 41

14 SEPTEMBRE 2023 Declarative Infrastructure The intern metaphor

Slide 42

Slide 42

Containers make dev life easier

Slide 43

Slide 43

Less simple if you must operate them Like in a production context

Slide 44

Slide 44

And what about microservices? Are you sure you want to operate them by hand?

Slide 45

Slide 45

And what about microservices? Are you sure you want to operate them by hand?

Slide 46

Slide 46

Kubernetes: a full orchestrator

Slide 47

Slide 47

Kubernetes - Desired State Management

Slide 48

Slide 48

Terraform - Declarative infra as code

Slide 49

Slide 49

14 SEPTEMBRE 2023 GitOps And other alternatives (why not KafkaOps?)

Slide 50

Slide 50

Continuous Integration(CI) & Continuous Delivery (CD) Build Test Security Checks Continuous Integration Continuous Delivery Release Deploy Stage Deploy Prod

Slide 51

Slide 51

A central source of truth

Slide 52

Slide 52

What is GitOps? Git is the single source of truth Treat everything as code Operations through Git workflows

Slide 53

Slide 53

14 SEPTEMBRE 2023 Platform What is it? Why is it useful? Why do we need Platform Engineers?

Slide 54

Slide 54

A fancy name for something already there Most companies already have some kind of platform Often homemade…

Slide 55

Slide 55

So many options …

Slide 56

Slide 56

So many options …

Slide 57

Slide 57

Shift left and Cognitive Load

Slide 58

Slide 58

Managing the self-service commodity

Slide 59

Slide 59

“The discipline of designing and building toolchains and workflows that enable self-service capabilities for software engineering organizations in the cloud-native era. Platform engineers provide an integrated product most often referred to as an “Internal Developer Platform” covering the operational necessities of the entire lifecycle of an application.” Lucas Galante

Slide 60

Slide 60

Slide 61

Slide 61

IDP is the new Facade Pattern

Slide 62

Slide 62

Team Topologies “Organizations that consider establishing such a platform team should be very cautious not to accidentally create a separate DevOps team, nor should they simply relabel their existing hosting and operations structure as a platform.” TechRadar, October 2021

Slide 63

Slide 63

Team Topologies Stream-aligned team Enabling team Complicated Subsystem team Platform team

Slide 64

Slide 64

Platform as a Product The Internal Dev Platform is the Product ● Conduct user research ○ Run friction logs ○ Empathy meetings ● Create a roadmap ● …

Slide 65

Slide 65

Slide 66

Slide 66

14 SEPTEMBRE 2023 Build your own Platform And becoming Platform Engineer

Slide 67

Slide 67

How to glue those all together ?

Slide 68

Slide 68

Kubernetes Operators A Kubernetes version of the human operator

Slide 69

Slide 69

Building operators Basic K8s elements: Controllers and Custom Resources

Slide 70

Slide 70

Extending Kubernetes API By defining new types of resources

Slide 71

Slide 71

A reconcile loop Strives to reconcile current state and desired state

Slide 72

Slide 72

Custom Controllers for Custom Resources Operators implement and manage Custom Resources using custom reconciliation logic

Slide 73

Slide 73

Operator SDK Three different ways to build an Operator

Slide 74

Slide 74

How to assemble all those building bricks ?

Slide 75

Slide 75

Platform Building Frameworks Custom Resource / Promise Pipeline 2 Custom Resource X Pipeline 1 “A framework for building platforms” Custom Resource Y

Slide 76

Slide 76

Slide 77

Slide 77

MERCI À NOS SPONSORS