SlideShare une entreprise Scribd logo
1  sur  27
Ma boîte à outils DevOps
Noël Bardelot
Architecte DevOps et Java
chez Valeuriad
BONSOIR !
Avant toute chose
Le déroulement
Durée : 20 minutes
Questions : volontiers après la
présentation 
Le contexte : tant de missions où j’ai
appris à automatiser,
casser, réparer,
apprendre…
Le fil rouge : ma cartographie
mentale des outils DevOps
Qui suis-je pour en parler ?
Noël Bardelot
Ingénieur chez Valeuriad
Architecte DevOps et Java
« couteau-suisse »
11 ans d’amélioration continue
11 ans d’automatisation des processus
mais seulement 2 ans depuis que les gens appellent ça DevOps…
Dev ps ?
Choisir
les bons outils
Automatiser
les processus
Fédérer
les équipes
Dev ps
Ce soir, parlons
des bons outils !
SYSTÈME
Organiser le
yum
EPEL
Fedora
RHEL
piloter les installations
&
gérer les dépendances
Docker
cloisonne tout !
iptables + cgroups + chroot + …
RÉSEAU
Naviguer dans le
SSH
Des connexions sécurisées
avec système à clef publique
IPTables
FirewalldFirewalld
✓
✘
Fail2Ban
NAT
Docker
Filtrer & Router
des paquets sur le réseau
Requêter un serveur HTTP
curl http://webserver/
Vérifier qu’un flux passe le firewall
curl –v telnet://host:port
… et vérifier le code retour?
-X HEAD -w %{http_code}
Tester un Webservice SOAP
-X POST –d @request.xml
… ou REST avec jq
DONNÉES
Manipuler les
sed
Travailler sur
un document
au format complexe,
pour, par exemple,
rechercher ou remplacer
des mots ou des motifs
à l’aide d’une
expression rationnelle.
awk
WR O
C
L
U
M
N
JSON avec du map filter reduce
et un peu d’amour…
PROGRAMMES
Rédiger des
Avantages Limitations/Inconvénients
Outils du système à portée de main :
/proc, ps, ss, mkfifo …
Bashismes
Scripts simple à écrire, porter, exécuter Limité à la programmation impérative
Démons faciles à écrire : nohup … & Pas adapté à la programmation concurrente
BOURNE AGAIN SHELL
Bash
Automated
Testing
System
$ man bats
[07:48 PM] noel@webserver :tests> bats poststart.bats
✓ le processus doit être up
✓ option -Xmx de la JVM à la valeur prévue
✓ port en écoute : tcp 8080
3 tests, 0 failures
Golang sur Github
Données pour Q3 2017, vues sur https://madnight.github.io/githut/
CONCLURE
Il est temps de
« Mauvais outil, mauvais ouvrier. »
Alain Autin
professeur à l’ENSIIE,
issus d’un proverbe du 13ème siècle
ces propos précèdent le plus souvent
un sale moment…
Ma boîte à outils DevOps
Ma boîte à outils DevOps

Contenu connexe

Similaire à Ma boîte à outils DevOps

Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Ludovic Piot
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide
 
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Normandie Web Xperts
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
Clement Bouillier
 

Similaire à Ma boîte à outils DevOps (20)

Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)
 
Votre mission ? Découvrir Haskell et le mettre en prod
Votre mission ? Découvrir Haskell et le mettre en prodVotre mission ? Découvrir Haskell et le mettre en prod
Votre mission ? Découvrir Haskell et le mettre en prod
 
Devoxx 2017 : toutes les actualités technologiques à surveiller !
Devoxx 2017 : toutes les actualités technologiques à surveiller !Devoxx 2017 : toutes les actualités technologiques à surveiller !
Devoxx 2017 : toutes les actualités technologiques à surveiller !
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
BBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - PuppetBBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - Puppet
 
VDLT - Retour DevFest 2023
VDLT - Retour DevFest 2023VDLT - Retour DevFest 2023
VDLT - Retour DevFest 2023
 
.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous
 
Ecrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenableEcrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenable
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Cours Ynov JS B1_1
Cours Ynov JS B1_1Cours Ynov JS B1_1
Cours Ynov JS B1_1
 
Multi-Threading Et Cocoa
Multi-Threading Et CocoaMulti-Threading Et Cocoa
Multi-Threading Et Cocoa
 
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
 
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
Conférence #nwx2014 - Maxime Mauchaussée - Partager du code maintenable et év...
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
 
Road map to DevOps engineering - Elie Sirius
Road map to DevOps engineering -  Elie SiriusRoad map to DevOps engineering -  Elie Sirius
Road map to DevOps engineering - Elie Sirius
 
Server Side Javascript in the cloud
Server Side Javascript in the cloudServer Side Javascript in the cloud
Server Side Javascript in the cloud
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
 
JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?JavaScript aussi sur le serveur et jusque dans le cloud?
JavaScript aussi sur le serveur et jusque dans le cloud?
 
20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven
 

Ma boîte à outils DevOps

Notes de l'éditeur

  1. Trois composantes à DevOps : l’humain à travers la collaboration des équipes, la technique à travers le choix des outils, et l’organisation à travers les processus et leur automatisation.
  2. Trois composantes à DevOps : l’humain à travers la collaboration des équipes, la technique à travers le choix des outils, et l’organisation à travers les processus et leur automatisation.
  3. Il faut séparer déploiement et installation. Malgré la tentation d’utiliser des outils « modernes » pour piloter des installations et gérer des dépendances, la solution historique reste cependant souvent la meilleure : les gestionnaires de paquets. Yum (et les paquets au format RPM) combinent le meilleur des mondes : pour le poste de développeur il y a moyen d’utiliser Fedora/CentOS et les outils communautaires, et pour la production il est possible d’opter pour le support RedHat avec RHEL.
  4. Docker constitue l’assemblage au sein d’un même outil de nombreuses techniques de cloisonnement applicatives : réseau, processus, fichiers… Sa force est d’avoir apporté une API, et un outillage relativement simple d’utilisation.
  5. SSH est au cœur de l’utilisation de Linux. Il permet notamment l’authentification par clé publique, et donc par extension les traitements à distance à l’aide de comptes système de manière plus pérenne et automatisée qu’avec des mots de passe, et sans la lourdeur qui consiste à devoir installer des agents.
  6. IPTables est une brique « firewall » fondamentale sous Linux. Elle permet de filtrer/traiter les flux réseaux entrants, sortants, et internes au serveur. C’est sur cette brique que s’appuient les outils les plus utilisés comme Fail2Ban pour se protéger contre les intrusions et/ou les attaques, ou firewalld. On l’utilise aussi pour réaliser le NAT (Network Address Translation) sur les routeur qui délimitent les zones réseau. Même si Firewalld est installé par défaut sous CentOS, il faut envisager de lui préférer IPTables pour des raisons de compatibilité avec Docker.
  7. « "
  8. Ma vision des outils DevOps que j’utilise quasiment au quotidien.