Upload
francois-xavier-vende
View
73
Download
1
Embed Size (px)
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
Vous croyez que les technologies changent le monde ?
Nous aussi ! Rejoignez-nous !