Click here to load reader

Devoxx Devops University 2012

  • View
    361

  • Download
    3

Embed Size (px)

DESCRIPTION

Slides from the 3 hours University talk Dimitri Baeli, Henri Gomez, Arnaud Héritier, Gildas Cuisinier and I gave at Devoxx France 2012 in Paris.

Text of Devoxx Devops University 2012

  • 1.Les mercenairesdu Devops !lundi 23 avril 2012

2. En route pour Devops 1 : La rache 2 : La raison 3 : La srnit4 : Des ${ides} et ${outils} pour y arriver.lundi 23 avril 2012 3. SpeakersDimitri Baeli : Chien de berger agile chez CourtanetGildas Cuisinier : Hirondelle du Printemps chez Sfeir BeneluxHenri Gomez : Maitre CI deuxime dan chez AxwayPierre-Antoine Grgoire : Chewbacca chez Agile PartnerArnaud Hritier : PHD GIT chez eXo Platformlundi 23 avril 2012 4. Les principes Devops 4lundi 23 avril 2012 5. lundi 23 avril 2012 6. Development is about pushing changeslundi 23 avril 2012 7. lundi 23 avril 2012 8. lundi 23 avril 2012 9. lundi 23 avril 2012 10. lundi 23 avril 2012 11. 1 - La rachelundi 23 avril 2012 12. 1 - La rache Livrables fabriqus la main Sources non scurises Modication des livrables la mise en prod Binaire fabriqu juste temps Tests en prodlundi 23 avril 2012 13. Sh4rewith.me - V0.1Petite Application de partage de chiersWebapp (war) Systme de chier (/les)lundi 23 avril 2012 14. 1 - La racheSignaux dalarme : Ca marche chez moi ! Jusquici tout va bien ... Jai piscine Attends je regarde dans le codelundi 23 avril 2012 15. 1 - La racheSignaux dalarme : Ca marche chez moi ! Jusquici tout va bien ... Jai piscine Attends je regarde dans le codetir ? nsor en te m C omlundi 23 avril 2012 16. 2 - La raisonlundi 23 avril 2012 17. Le Joel Testhttp://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 18. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 19. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 20. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 21. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 22. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 23. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 24. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 25. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?8- Vos dveloppeurs sont-ils dans un lieu calme ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 26. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?8- Vos dveloppeurs sont-ils dans un lieu calme ?9- Avez-vous les meilleurs outils pour votre budget ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 27. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?8- Vos dveloppeurs sont-ils dans un lieu calme ?9- Avez-vous les meilleurs outils pour votre budget ?10- Avez-vous des testeurs ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 28. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?8- Vos dveloppeurs sont-ils dans un lieu calme ?9- Avez-vous les meilleurs outils pour votre budget ?10- Avez-vous des testeurs ?11- Les recrues crivent-il du code ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 29. Le Joel Test1- Utilisez-vous un gestionnaire de sources ?2- Vos binaires sont-ils assembls en une fois ?3- Vos binaires sont-ils produits quotidiennement ?4- Avez-vous un gestionnaire danomalies ?5- Le code est-il corrig avant dtre tendu ?6- Avez-vous un planning jour ?7- Avez-vous des spcifications ?8- Vos dveloppeurs sont-ils dans un lieu calme ?9- Avez-vous les meilleurs outils pour votre budget ?10- Avez-vous des testeurs ?11- Les recrues crivent-il du code ?12- Les dveloppeurs font-ils une dmonstration ?http://www.joelonsoftware.com/articles/fog0000000043.htmllundi 23 avril 2012 30. Le Joel TestMoins de 10 ?lundi 23 avril 2012 31. Le Joel Test Moins de 10 ?Alors vous avez de srieux problmeslundi 23 avril 2012 32. Le Joel Test Moins de 10 ?Alors vous avez de srieux problmes t2 000 Aolundi 23 avril 2012 33. 2 -La raisonPratiques Reproductibilit des binaires Livrables trs frquents (Intgration Continue) Intgration continue, Tests unitaires visibles Bonne gestion des bugs/taches Inspection du code dans lIDElundi 23 avril 2012 34. 2 -La raison Sh4rewith.me V1.0War fabriqu par Maven/Jenkins/nexus Mongo DB Tomcat install manuellementlundi 23 avril 2012 35. 2 -La raisonIl reste des gros soucis : La mise en production est un vnement rare Eux / nous (Marketing / Dev / QA / Prod) Pas de partage des risques Manque de vision sur les mtriques & Monitoringlundi 23 avril 2012 36. 3 - La srnitlundi 23 avril 2012 37. lundi 23 avril 2012 38. 3 - La srnitObjectifs : Cycle court entre demande et mise en production Contribution damlioration plutt que commit Gestion complte de la conguration (source, conf, OS) Gestion de la dette technique Automatisation des tapes risque Monitoring outill (dev & ops)lundi 23 avril 2012 39. 3 - La srnitSh4rewith.me V2.0Petite Application de partage de chiersDmonstrationlundi 23 avril 2012 40. Universit DevopsLe retourlundi 23 avril 2012 41. Rappel des principes Devops26lundi 23 avril 2012 42. 4 Des ides pour commencerlundi 23 avril 2012 43. 4 - Des ides pourcommencerLes meilleurs outils pour votre budget 28lundi 23 avril 2012 44. 4 - Des ides poureXo Software Factory commencerSubversionJiraGit Fisheye/CrucibleNexus SonarJenkins Conuence29lundi 23 avril 2012 45. 4 - Des ides pour commencerLive Acceptance Serverlundi 23 avril 2012 46. 4 - Des ides pourcommencerlundi 23 avril 2012 47. 4 - Des ides pour commencerElargir le cadre dutilisation de Jenkins Trigger plugin Un jenkins pour les Dev Un jenkins pour la QA Un jenkins pour les OPSlundi 23 avril 2012 48. 4 - Des ides pourProles Spring commencer Un livrable Un jeu de fonctionnalit Des ressources Une conguration33lundi 23 avril 2012 49. 4 - Des ides pourRessources : JNDIcommencer JNDI Dnition des ressources dans le serveur Rcupration de celle-ci par code dans lapplication Dlgation aux Ops de la conguration de production Conguration diffrentes en mode non dploi34lundi 23 avril 2012 50. 4 - Des ides pourImport + Proprit Systmecommencer 1 1 System.setProperty("env", "TEST"); 1 2id="dataSource"> 2 3 5 7 35lundi 23 avril 2012 51. 4 - Des ides [email protected] commencer 1 @Configuration 2 @Import(ApplicationDevConfig.class) 3 public class ApplicationConfig { 4 5 @Bean 6 DataSource dataSource(){ 7 JndiObjectFactoryBean result = new JndiObjectFactoryBean(); 8 result.setJndiName("jdbc/dataSource"); 9 return (DataSource) result.getObject();10 }11 } 36lundi 23 avril 2012 52. 4 - Des ides [email protected] commencer 1 @Configuration 2 @Profile("dev") 3 public class ApplicationDevConfig { 4 5 @Bean 6 DataSource dataSource() { 7 EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder(); 8 EmbeddedDatabase db = ... 9 return db;10 }11 } 37lundi 23 avril 2012 53. 4 - Des ides pour commencer1 2 345 6 38lundi 23 avril 2012 54. 4 - Des ides pour ActivationcommencerMode Dev1 System.setProperty("spring.profiles.active", "DEV");Mode Ops1 JAVA_OPTS="spring.profiles.active=DEV"39lundi 23 avril 2012 55. 4 - Des ides pour commencerLapproche packaging natif40lundi 23 avril 2012 56. 4 - Des ides pourPackaging Natifcommencer Coeur de la pile applicative des OS Gestion des dpendances Mise jour automatique ou slective Utilis par les Ops41lundi 23 avril 2012 57. 4 - Des ides pourPackaging sous Unix commencer RPM (Redhat Package Manager) sous RHEL/CentOS/ Fedora, SLES/OpenSuse,Mandriva DEB sous Debian/Ubuntu PKG sous Solaris 42lundi 23 avril 2012 58. 4 - Des ides pourQuest-ce quun package ?commencer Un chier (.rpm, .deb) Des donnes (chiers et programmes) Du code excut lors de linstallation, la mise jour ou la suppression du package Li une architecture (Intel, ARM, PowerPC en 32 ou 64bits) ou neutre (exemple: une applicatio

Search related