deploiement continu agileffrance 2011
DESCRIPTION
Présentation Déploiement Continu à Agile FranceTRANSCRIPT
Déploiement continu en production
Claude FalguièreAgile France le 26 Mai 2011
Continuous deployment - Falguière 2
Copyright notice
● Vous êtes libre de :● Reproduire, distribuer et communiquer cette création au public● Modifier cette création
● Selon les conditions suivantes :● Paternité. Vous devez citer le nom de l'auteur original de la
manière indiquée par l'auteur de l'oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre).
● Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.
http://creativecommons.org/licenses/by/3.0/
Continuous deployment - Falguière 3
Claude Falguière
@cfalguiereArchitecte Technique
Déploiement
Usines logiciellesPerformances
Devops
Java
Continuous deployment - Falguière 4
Continu
Continuous deployment - Falguière 5
Déploiement
Continu
Pas seulement automatisé
Pas forcément sans intervention humaine
Continuous deployment - Falguière 6
Batch & queue
Produire un lotLivrer le lot
DélaiExceptionnelVolume
Continuous deployment - Falguière 7
Livrer au fur et à mesure
RéactivitéBanaliseCiblé
Continuous Flow
Continuous deployment - Falguière 8
ContinuousIntegration
ContinuousDelivery
ContinuousDeployment
Continuous deployment - Falguière 9
REX
Continuous deployment - Falguière 10
Continuous deployment - Falguière 11
Contexte
StartupRefonteDomaine complexeDifficile tester en simulationGrand nombre de serveurs
Continuous deployment - Falguière 12
DEVOPS
DEVOPS
Continuous deployment - Falguière 13
Une application ne rend le service
prévu aux utilisateurs que si
elle est
déployée
devops
Continuous deployment - Falguière 14
devops
Peur des déploiements
Ça marche chez moi !
Continuous deployment - Falguière 15
Coopérer dès le début
Abattre les silos
devops
Peur des déploiements
Ça marche chez moi !
Continuous deployment - Falguière 16
devops
http://parisdevops.fr/http://devops.fr
Des Blogs
Continuous deployment - Falguière 17
Des User Groups
Lille-devopsParis-devops
devops
Et chez vous ?
Continuous deployment - Falguière 18
Production
Continuous deployment - Falguière 19
Deploiement
mvn deploy
mettre à disposition des utilisateurs Avertir les utilisateurs Arrêter le service Installer Vérifier Avertir les utilisateurs
Continuous deployment - Falguière 20
Vous êtes Vous êtes iciici
La cible
L'environnement de dev
Continuous deployment - Falguière 21
Provisioning
L'affectation plus ou moins automatisée de ressources à un utilisateur
Packages LinuxRepo Maven
<votre-smartphone-préféré>Store
Approvisionnement
Continuous deployment - Falguière 22
Test / Production
Nombre : Clusters & Fermes
Sécurité & Confidentialité
Rollback
Continuous deployment - Falguière 23
ResponsabilitésConfidentialité, Sécurité
InterdépendancesOpérations planifiées
assembler → approvisionner
→ installer → déployer
Continuous deployment - Falguière 24
Jusque là tout va bien
Continuous deployment - Falguière 25
Livrer au plus tôt
Livrer des features
Feature flags → par environnementFeature flippers → par user
Continuous deployment - Falguière 26
Tester au plus tôt
Smoke test Tests automatisés (raisonnablement)
Déploiement progressif / green-blueTests en production
Continuous deployment - Falguière 27
Evaluer au plus tôt
Inclure les retours des utilisateurs
Tests beta (feature flippers)
A/B testings (feature flags)
Continuous deployment - Falguière 28
Processus Fast Fail
Analyser les causes
AméliorerPrévenirImpliquer
Continuous deployment - Falguière 29
Automatiser
Continuous deployment - Falguière 30
Installer Facilement
1) Processus clair2) Outillé3) Automatisé
Etape par étapeLaisser la place à l'humain (BdD)
Continuous deployment - Falguière 31
Installer au plus tôt
Env Tests/Recette ≅ Env Production
Déminer Simplifier
Continuous deployment - Falguière 32
Qui déclenche ?
PO + SM + OPS
Autopromote#deploy #env
Continuous deployment - Falguière 33
Surveiller
Pendant Juste après
Après
MonitoringAutodiagnostic, journaux
Continuous deployment - Falguière 34
Changement
Continuous deployment - Falguière 35
Résistances
Application installableStop the line pour la production
Croyances Tout doit être testé Ma raison d'être est d'installer
Continuous deployment - Falguière 36
Outils utiles
Cfengine/MCollective/RunDeck/Fabric/Capistrano vs Hudson/Jenkins
Git vs SVN
Script vs Maven
Continuous deployment - Falguière 37
L'usine
Continuous deployment - Falguière 38
Continuous deployment - Falguière 39
Blueprint
Continuous deployment - Falguière 40
Merci pour votre attention
Vos questions ?Vos questions ?
@cfalguiere
Continuous deployment - Falguière 41
Quelques Lectureshttp://continuousdelivery.com/
http://continuousdelivery.com/2011/05/make-large-scale-changes-incrementally-with-branch-by-abstraction/
http://continuousdelivery.com/2010/08/continuous-delivery-vs-continuous-deployment/
http://www.slideshare.net/ashmaurya/continuous-deployment-startup-lessons-learned
http://programmerjoe.com/2009/02/19/the-hard-part-of-continuous-deployment/
http://programmerjoe.com/2009/02/12/continuous-deployment-with-thick-clients/
http://www.codemanship.co.uk/parlezuml/blog/?postid=955
http://www.tvagile.com/2010/08/04/continuous-integration-pipelines-and-deployment/
http://www.slicedbreaddesign.com/blog/index.php/2009/11/is-continuous-deployment-good-for-users
http://code.flickr.com/blog/2009/12/02/flipping-out/
http://martinfowler.com/bliki/BlueGreenDeployment.html
http://eng.wealthfront.com/2010/05/deployment-infrastructure-for.html
Continuous deployment - Falguière 42
Crédits photo
http://www.flickr.com/photos/jurvetson/5126137767
http://www.flickr.com/photos/pjb2332/1892076224
http://www.flickr.com/photos/wirralwater/3304595702
http://www.flickr.com/photos/deltamike/112665695
http://www.flickr.com/photos/grill/5704051872
http://www.flickr.com/photos/hugo90/5360024969
http://www.flickr.com/photos/theplanetdotcom/4878815037
http://www.flickr.com/photos/edvvc/1972546648
Continuous deployment - Falguière 43
Crédits photohttp://www.flickr.com/photos/ecru76/2709226929
http://www.flickr.com/photos/seeminglee/3929959851
http://www.flickr.com/photos/publicresourceorg/4245550588
http://www.flickr.com/photos/pjb2332/2209369645
http://www.flickr.com/photos/theleticiabertin/5344450700
http://www.flickr.com/photos/abbot45/309058972
http://www.flickr.com/photos/pjb2332/2095801220