Du craft chez les OPS

Preview:

Citation preview

1OCTO TECHNOLOGY > THERE IS A BETTER WAY

50 AVENUE DES CHAMPS-ÉLYSÉES 75008 PARIS > FRANCE > WWW.OCTO.COM

Agile Tour Lille 2016

13 octobre 2016Francois-Xavier VendeMathieu Herbert

Du Craft chez les OPS

2OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les speakers

François-Xavier VendeArchitecte Technique

@vendefx

Mathieu HerbertExpert Cloud

@MathieuHerbert

3OCTO TECHNOLOGY > THERE IS A BETTER WAY

“Construction avec des pratiques de développement

et des méthodes visant à créer

une solution adaptée, maintenable et évolutive”

Notre définition du Craft

4OCTO TECHNOLOGY > THERE IS A BETTER WAY

☉ De gestion du “run” en mode Kanban

☉ De transformation d’organisation

Les sujets suivants, on n’abordera pas !

5OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une infrastructure en cycle long….très long !

Opérations

• Durée : 2 - 3 semaines • Durée : 2 mois à 1 an

Design architecture

Provision infrastructure

Deploy application

Operate

Code

Bui

ld

Test

DEV

Pack

age

Développement Agile

6OCTO TECHNOLOGY > THERE IS A BETTER WAY

Un produit pour “agiliser” l’infrastructure

Notre produit : un “SI as a Service”

Capacité à fournir à la demande un ensemble intégré de composants d’infrastructure nécessaires au build “applicatif”

7OCTO TECHNOLOGY > THERE IS A BETTER WAY

Produitd’infrastructure

Une interface numérique entre DEV et OPS...

Interface unifiéeEngagement sur le SLA

APIs

Scripts

SDK

Développement Agile

Opérations

Application A

Application B

Application C

...

8OCTO TECHNOLOGY > THERE IS A BETTER WAY

Produitd’infrastructure

..nécessitant une évolution des responsabilités

Interface unifiéeEngagement sur le SLA

APIs

Scripts

SDK

Développement Agile

Opérations

Application A

Application B

Application C

...Build

ApplicatifBuild

Produit d’infrastructure

Run Applicatif Run Infrastructure

9OCTO TECHNOLOGY > THERE IS A BETTER WAY

“SI as a Service” : des interfaces

API / SDK / Scripts

10OCTO TECHNOLOGY > THERE IS A BETTER WAY

“SI as a Service” : des briques à automatiser

Briques à instancier automatiquement

API / SDK / Scripts

Tomcat WebSphere AS WebLogic JBoss

Oracle Monitoring

Relais serveur de temps Relais serveur de mails Collecte de logs

Système d’exploitation durci

Gestionnaire de paquetsDB2

11OCTO TECHNOLOGY > THERE IS A BETTER WAY

SI as a Service : une intégration avec le SI Historique

Briques à instancier automatiquement

SI Historique Entreprise

API / SDK / Scripts

Tomcat WebSphere AS WebLogic JBoss

Oracle Monitoring

Relais serveur de temps Relais serveur de mails Collecte de logs

Système d’exploitation durci

Serveur de temps Serveur de mails ...

Gestionnaire de paquetsDB2

12OCTO TECHNOLOGY > THERE IS A BETTER WAY

SI as a Service : en global

SI as a Service

Briques à instancier automatiquement

SI Historique Entreprise

API / SDK / Scripts

Tomcat WebSphere AS WebLogic JBoss

Oracle Monitoring

Relais serveur de temps Relais serveur de mails Collecte de logs

Système d’exploitation durci

Serveur de temps Serveur de mails ...

Gestionnaire de paquetsDB2

13OCTO TECHNOLOGY > THERE IS A BETTER WAY

Un produit tu construiras !

SI as a Service

Usine de Développ-

ement et de Déploiement

Securité

Liens au SI entreprise

Monitoring

APIs / IHM

Gestion des utilisateurs et

des droits

Niveau de service

Exploitation

14OCTO TECHNOLOGY > THERE IS A BETTER WAY

Avec tes trois piliers tu feras !

15OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

16OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

Utilisateurstechniques

17OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Utilisateurstechniques

18OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Développeurs OPS

Utilisateurstechniques

19OCTO TECHNOLOGY > THERE IS A BETTER WAY

Le vocabulaire tu adapteras !

PODéveloppeur

OPS

20OCTO TECHNOLOGY > THERE IS A BETTER WAY

Le vocabulaire tu adapteras !

Est-ce que vous pourriez monter un un Gitlab et un Jenkins avec le plugin Maven ?

PODéveloppeur

OPS

21OCTO TECHNOLOGY > THERE IS A BETTER WAY

Le vocabulaire tu adapteras !

PODéveloppeur

OPS

Du Redhat ou de l’Ubuntu ? Doivent-elles être enrollées dans un AD ? Quels ports doivent être ouverts ? Dans quelle zone reseau ?

22OCTO TECHNOLOGY > THERE IS A BETTER WAY

PODéveloppeur

OPS

Heu, je veux juste un Jenkins et un Gitlab

Le vocabulaire tu adapteras !

23OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Développeurs OPS

Utilisateurstechniques

Co-PO

24OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Développeurs OPS

Intervenants techniques

externesUtilisateurstechniques

Co-PO

25OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Développeurs OPS

Intervenants techniques

externesUtilisateurstechniques

Liens avec les intervenants

externes

Co-PO

26OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PO

Développeurs OPS

Intervenants techniques

externesUtilisateurstechniques

Liens avec les intervenants

externes

Expertise ponctuelle

Co-PO

27OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une organisation tu définiras !

PODelivery Manager

Développeurs OPS

Intervenants techniques

externesUtilisateurstechniques

Liens avec les intervenants

externes

Expertise ponctuelle

Co-PO

28OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des pratiques tu maintiendras !

29OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des pratiques tu maintiendras !

Maturité Technique

Maturité Fonctionnelle

Release 1

Création de VMs

DNSServeur de mail

30OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des pratiques tu maintiendras !

Création de VMs

DNS

Création de VMs

DNS lié au SI interne

Serveur de mail résilient

Serveur de temps

Active Directory

Centralisation des logs

Release 4

Release 1

Serveur de mail

Certificats SSL

Connexion via SSO

Maturité Technique

Maturité Fonctionnelle

31OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des pratiques tu maintiendras !

32OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des pratiques tu maintiendras !

33OCTO TECHNOLOGY > THERE IS A BETTER WAY

La définition de backlog tu réaliseras !

Je dispose du code permettant de

déployer le SMTP

Je mets en place règles de filtrages pour sécuriser le

SMTP

Création du code Puppet pour

configurer le SMTP

Création du code Terraform pour

déployer l’infrastructure pour

le SMTP

OPSUsers

Composants Tâches Sous-tâches

PO PO

34OCTO TECHNOLOGY > THERE IS A BETTER WAY

La définition de backlog tu réaliseras !

Je dispose du code permettant de

déployer le SMTP

Je mets en place règles de filtrages pour sécuriser le

SMTP

Création du code Puppet pour

configurer le SMTP

Création du code Terraform pour

déployer l’infrastructure pour

le SMTP

OPS

Composants Tâches Sous-tâches

CO-POPO CO-PO

35OCTO TECHNOLOGY > THERE IS A BETTER WAY

De la technique tu feras !

36OCTO TECHNOLOGY > THERE IS A BETTER WAY

Ton infrastructure avec du code tu décriras !

Décrire sous forme de code exécutable et testable la configuration de l’architecture

technique d’infrastructure

Orchestrateur de déploiement

d’infrastructure

Infraas Code

Infrastructure

APIInfra

37OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les couches de déploiement tu organiseras et tu automatiseras !

Environnements

Env.PRODUCTION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

TESTS

Env.TEST / DEMOEnv.TEST / DEMOEnv.INTEGRATION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

PREPROD

38OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les couches de déploiement tu organiseras et tu automatiseras !

Environnements

Env.PRODUCTION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

TESTS

Env.TEST / DEMOEnv.TEST / DEMOEnv.INTEGRATION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

PREPROD

Orchestrateur

Infrastructure as a Service

Private Cloud

Public Cloud

3Pilote les APIs du IaaS pour déployer

l’infrastructure

39OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les couches de déploiement tu organiseras et tu automatiseras !

Environnements

Env.PRODUCTION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

TESTS

Env.TEST / DEMOEnv.TEST / DEMOEnv.INTEGRATION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

PREPROD

Orchestrateur

Infrastructure as a Service

Private Cloud

Public Cloud

System Configuration

3

4Déclenche la configuration des systèmesPilote les APIs du

IaaS pour déployer l’infrastructure

40OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les couches de déploiement tu organiseras et tu automatiseras !

Environnements

Env.PRODUCTION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

TESTS

Env.TEST / DEMOEnv.TEST / DEMOEnv.INTEGRATION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

PREPROD

Orchestrateur

Infrastructure as a Service

Private Cloud

Public Cloud

System Configuration

3

4Déclenche la configuration des systèmesPilote les APIs du

IaaS pour déployer l’infrastructure

Tests

5Tests des environnements

41OCTO TECHNOLOGY > THERE IS A BETTER WAY

Les couches de déploiement tu organiseras et tu automatiseras !

Environnements

Code Repository

Env.PRODUCTION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

TESTS

Env.TEST / DEMOEnv.TEST / DEMOEnv.INTEGRATION

Env.TEST / DEMOEnv.TEST / DEMOEnv.

PREPROD

Orchestrateur

Infrastructure as a Service

Private Cloud

Public Cloud

System Configuration

UDDL’UDD appelle l’orchestrateur

3

4Déclenche la configuration des systèmes

21

Récupération du code d’orchestration et de

configuration système

Pilote les APIs du IaaS pour déployer

l’infrastructure

Tests

5Tests des environnements

42OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des bonnes pratiques pour coder tu adopteras !

Clean CodeCode

Review

KISS

YAGNI

DRY

TESTS

Refactoring

TDD

Pair Programming

43OCTO TECHNOLOGY > THERE IS A BETTER WAY

La “pair review” tu systématiseras !

Production

SMTP

NTPPR SMTP

PR NTP

Cas nominal

44OCTO TECHNOLOGY > THERE IS A BETTER WAY

La “pair review” tu systématiseras !

Production

Cas dégradé

45OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des tests tu feras !

Tests d’intégration

Tests unitaires

Testsfonctionnels

UDD

UDD

UDD

Avant chaque Push

Après chaque modification de code

Après chaque Push

Après chaque Push

Chaque nuit / avant chaque passage en

production

46OCTO TECHNOLOGY > THERE IS A BETTER WAY

Des tests tu feras !

< 10 min

< 10 s

> 10 min

UDD

UDD

UDD

Avant chaque Push

Après chaque modification de code

Après chaque Push

Après chaque Push

Chaque nuit / avant chaque passage en

production

47OCTO TECHNOLOGY > THERE IS A BETTER WAY

En mode OPS tu les déclineras !

Je teste que mon code compile,et unitairement il fait ce que j’attends

Je teste la feature sur une plateforme indépendante

Je teste la feature avec une intégration complète

(iso-prod)

48OCTO TECHNOLOGY > THERE IS A BETTER WAY

Autant que possible tu testeras unitairement !

< 1 seconde

49OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

50OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

VM

Création

51OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

Configuration

Serveur de mails

52OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

Serveur de mails

TestEst-ce que mon service tourne bien ?Est-ce que la configuration est bonne ?...

53OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

Serveur de mails

Destruction

54OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes composants d’infrastructure indépendamment tu testeras !

< 10 minutes

55OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes services au moins chaque nuit globalement tu testeras

UDD

56OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes services au moins chaque nuit globalement tu testeras

NTP

Applicationtémoin

Auth ...SMTP

Dépendancessimulées

Création

UDD

57OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes services au moins chaque nuit globalement tu testeras

NTP

Applicationtémoin

Auth ...SMTP

Dépendancessimulées

Tests

UDD

Est-ce que mon Application témoin est bien reliée au serveur de mail ?Est-ce que mon Application témoin peut envoyer des mails ?...

58OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes services au moins chaque nuit globalement tu testeras

NTP

Applicationtémoin

Auth ...SMTP

Dépendancessimulées

Destruction

UDD

59OCTO TECHNOLOGY > THERE IS A BETTER WAY

Tes services au moins chaque nuit globalement tu testeras

UDD

> 10 minutes

60OCTO TECHNOLOGY > THERE IS A BETTER WAY

Une CI avec des pipelines en oeuvre tu mettras !

61OCTO TECHNOLOGY > THERE IS A BETTER WAY

Takeway!

1 Une vision produit tu construiras !

2 L’organisation du projet tu adapteras !

3 Des processus de développement tu maintiendras !

3 Des tests avant tout tu feras !

4 Les environnements pour valider l’infrastructure tu auras !

6 Nooooon, l’ingénieur “DevOps” tu ne chercheras pas !

62OCTO TECHNOLOGY > THERE IS A BETTER WAY 62

OCTO TECHNOLOGY > THERE IS A BETTER WAY

recrutement@octo.com

Vous croyez que les technologies changent le monde ?

Nous aussi ! Rejoignez-nous !

Recommended