FORUM PHP PARIS 2014FORUM PHP PARIS 2014
- 24/10/2014
1
La mesure, ce n'est pas que pour le
DEVOPS
06/02/2015 2
• Pourquoi mesurer ?
• Quel type de mesure ?
• Comment mesurer ?
La mesure, pourquoi ?
06/02/2015 3
●
Pourquoi mesurer ?Pourquoi mesurer ?
– En LEAN Startup, comme en DEVOPS, le feedbackf...
La mesure, le type
06/02/2015 4
●
Pourquoi mesurer ?
●
Quel type de mesure ?Quel type de mesure ?
– AAA : Actionnable, Aud...
La mesure, comment
06/02/2015 5
●
Pourquoi mesurer ?
●
Quel type de mesure ?
●
Comment mesurer ?Comment mesurer ?
– Le plu...
La mesure, exemples
06/02/2015 6
Analytics
Graphite
Grafana
Tessera
La mesure, comment
06/02/2015 7
●
Pourquoi mesurer ?
●
Quel type de mesure ?
●
Comment mesurer ?Comment mesurer ?
– Les au...
La mesure, chez Techsys
06/02/2015 8
●
Que retenir pour Techsys?
– Une bonne métrique est AAA (*)
– Une bonne métrologie e...
Industrialisation des environnements de dev
avec Puppet et Amazon
06/02/2015 9
●
Définition du besoin
●
Retour d'expérienc...
Industrialisation, le besoin à la demande
06/02/2015 10
●
Définition du besoinDéfinition du besoin
– Environnements techni...
Industrialisation : faciliter le provisionning
06/02/2015 11
●
Définition du besoin
●
Retour d'expérience, les succèsRetou...
Industrialisation : les erreurs à éviter
06/02/2015 12
●
Définition du besoin
●
Retour d'expérience, les succès
●
Retour d...
Industrialisation : une spécialité Techsys ?
06/02/2015 13
●
Que retenir pour Techsys ?
– Amazon est mature, mais pas les ...
PHP dans les distributions RPM
06/02/2015 14
●
PHP et les RPM
●
Les distributions RPM professionnelles
●
Les distributions...
RPM : quel problème avec PHP ?
06/02/2015 15
●
PHP et les RPMPHP et les RPM
– Évolutions rapides, beaucoup de dépendancesd...
RPM, rappel des distributions
06/02/2015 16
●
PHP et les RPM
●
Les distributions RPM professionnellesLes distributions RPM...
RPM, rappel des distributions
06/02/2015 17
●
PHP et les RPM
●
Les distributions RPM professionnelles
●
Les distributions ...
RPM, rappel des distributions
06/02/2015 18
●
PHP et les RPM
●
Les distributions RPM professionnelles
●
Les distributions ...
RPM, Techsys sait faire.
06/02/2015 19
●
Que retenir pour Techsys ?
– Techsys est partenaire RedHat
– Nous DEVONS répondre...
Laisse pas traîner ton log
06/02/2015 20
●
Un log, pour quoi faire ?
●
Les bonnes méthodes ELK, ce qui
marche
●
Le cas Bla...
Les logs : définition
06/02/2015 21
●
Un log, pour quoi faire ?Un log, pour quoi faire ?
– Les activités systèmes et appli...
Les logs : bonnes méthodes
06/02/2015 22
●
Un log, pour quoi faire ?
●
Les bonnes méthodes ELK, ce qui marcheLes bonnes mé...
Les logs : ce qui n'est pas encore prêt
06/02/2015 23
●
Un log, pour quoi faire ?
●
Les bonnes méthodes ELK, ce qui marche...
Les logs, une spécialité Techsys ?
06/02/2015 24
●
Que retenir pour Techsys ?
– ELK est très mature et est une référence
–...
Architecture d'une application Full API
orientée micro service
06/02/2015 25
●
Pourquoi faire un micro service ?
●
Comment...
Les micro services, pourquoi
06/02/2015 26
●
Pourquoi faire un micro service ?Pourquoi faire un micro service ?
– Pour la ...
Les micro services, comment
06/02/2015 27
●
Pourquoi faire un micro service ?
●
Comment intégrer les micro service ?Commen...
Les micro services, pourquoi
06/02/2015 28
●
Pourquoi faire un micro service ?
●
Comment intégrer les micro service ?
●
Et...
Les micro services, Techsys, déjà ?
06/02/2015 29
●
Que retenir pour Techsys ?
– Cette présentation est trop en avance sur...
Faster Application Development
with CakePHP 3.0
06/02/2015 30
●
Qu'est-ce que CakePHP
●
A quoi ça sert
●
Les outils associ...
CakePHP : c'est quoi
06/02/2015 31
●
Qu'est-ce que CakePHPQu'est-ce que CakePHP
– C'est l'ancêtre des framework PHP
– Anno...
CakePHP : pour quoi faire
06/02/2015 32
●
Qu'est-ce que CakePHP
●
A quoi ça sertA quoi ça sert
– A développer des sites we...
CakePHP : les outils
06/02/2015 33
●
Qu'est-ce que CakePHP
●
A quoi ça sert
●
Les outils associésLes outils associés
– Mig...
CakePHP : pour Techsys
06/02/2015 34
●
Que retenir pour Techsys ?
– C'est un framework que l'on peut conseiller
– Le proje...
Retour d'expérience ARTE GIE :
développement API
06/02/2015 35
●
Les besoins
●
Les choix techniques
●
Le reste à faire
ARTE : les besoins
06/02/2015 36
●
Les besoinsLes besoins
– Interface multi-langues
– Diffusion de contenu vidéo : Arte +7...
ARTE : les choix
06/02/2015 37
●
Les besoins
●
Les choix techniquesLes choix techniques
– Symfony 2, REST, MongoDB, Rabbit...
ARTE : le reste à faire
06/02/2015 38
●
Les besoins
●
Les choix techniques
●
Le reste à faireLe reste à faire
– Être en ca...
ARTE : pour Techsys
06/02/2015 39
●
Que retenir pour Techsys ?
– Retour sur des choix architecturaux
– Importance du respe...
Déploiement continu :
un pas de plus vers le DEVOPS
06/02/2015 40
●
Rappels sur le mouvement DEVOPS
●
Bonnes pratiques d'i...
DEVOPS : le mouvement
06/02/2015 41
●
Rappels sur le mouvement DEVOPSRappels sur le mouvement DEVOPS
– Réunion des Dévelop...
DEVOPS : intégration continue
06/02/2015 42
●
Rappels sur le mouvement DEVOPS
●
Bonnes pratiques d'intégrationBonnes prati...
DEVOPS : techniques
06/02/2015 43
●
Rappels sur le mouvement DEVOPS
●
Bonnes pratiques d'intégration continue
●
Solutions ...
DEVOPS : conclusions
06/02/2015 44
●
Rappels sur le mouvement DEVOPS
●
Bonnes pratiques d'intégration continue
●
Solutions...
DEVOPS : Techsys est prêt
06/02/2015 45
●
Que retenir pour Techsys ?
– Le métier d'adminsys laisse peu à peu la place au D...
Conclusions
06/02/2015 46
●
Que retenir pour Techsys ?
– Les mouvements DEVOPS et LEAN Startup permettent l'intégration
co...
Conclusions
06/02/2015 47
●
A lire
– Lean Startup par Eric Ries
– State Of DevOps Reports par PuppetLabs
●
Le clou de la j...
FORUM PHP PARIS 2014
06/02/2015 48
Avez-vous des questions ?
FORUM PHP PARIS 2014
06/02/2015 49
Vos idées sont les bienvenues
Merci !
+33.6.32.19.76.71
o.duquesne@techsys.fr
@techsys_...
Prochain SlideShare
Chargement dans…5
×

Forum PHP 2014 day 1

373 vues

Publié le

Quelques notes d'un administrateur système pas encore DevOps à un cycle de conférence très orienté PHP, mais aussi bonnes pratiques de développement ou architecture.

Publié dans : Ingénierie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
373
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • <numéro>
  • Forum PHP 2014 day 1

    1. 1. FORUM PHP PARIS 2014FORUM PHP PARIS 2014 - 24/10/2014 1
    2. 2. La mesure, ce n'est pas que pour le DEVOPS 06/02/2015 2 • Pourquoi mesurer ? • Quel type de mesure ? • Comment mesurer ?
    3. 3. La mesure, pourquoi ? 06/02/2015 3 ● Pourquoi mesurer ?Pourquoi mesurer ? – En LEAN Startup, comme en DEVOPS, le feedbackfeedback est primordial pour – L'Amélioration continue ● Quel type de mesure ? ● Comment mesurer ?
    4. 4. La mesure, le type 06/02/2015 4 ● Pourquoi mesurer ? ● Quel type de mesure ?Quel type de mesure ? – AAA : Actionnable, Auditable, Accessible – Efficace / Vanité ● Ex : % de code actif / nombre de ligne de code – AARR : Acquisition, Activation, Rétention, Refère, Revenue ● 1 utilisateur, s'enregistre, reviens, fait de la pub, achète le produit ● Comment mesurer ?
    5. 5. La mesure, comment 06/02/2015 5 ● Pourquoi mesurer ? ● Quel type de mesure ? ● Comment mesurer ?Comment mesurer ? – Le plus connu : Google Analytics : simple, génération de dashboard, Query Explorer pour export JSON, les données chez Google – Le plus « in » : statsDstatsD + Graphite : évolué, collectes via UDP donc non intrusif, maîtrise les données.
    6. 6. La mesure, exemples 06/02/2015 6 Analytics Graphite Grafana Tessera
    7. 7. La mesure, comment 06/02/2015 7 ● Pourquoi mesurer ? ● Quel type de mesure ? ● Comment mesurer ?Comment mesurer ? – Les autres : MixPanels, PirateMetrics (hébergés) – Dans l'application : AppDynamicsAppDynamics, Catchy.io
    8. 8. La mesure, chez Techsys 06/02/2015 8 ● Que retenir pour Techsys? – Une bonne métrique est AAA (*) – Une bonne métrologie est AARR (*) – L'analyse permet de s'améliorer (donc de s'enrichir) ● Quels outils regarder ? – StatsD / Graphite / Grafana ● Et nos clients ?Et nos clients ? – Ils sont encore frileux, soyons prêts avant eux !
    9. 9. Industrialisation des environnements de dev avec Puppet et Amazon 06/02/2015 9 ● Définition du besoin ● Retour d'expérience, les succès ● Retour d'expérience, les erreurs
    10. 10. Industrialisation, le besoin à la demande 06/02/2015 10 ● Définition du besoinDéfinition du besoin – Environnements techniques complexes et variés ● PHP, Symphony, RabbitMQ, MongoDB, Reddis, MySQL, ... – BDD ou images non identiques à la production ● bug, erreur normale, à cause de l'expression de besoin, ... – Réactivité : maquettes pour le marketting – Se rapprocher de l'hébergeur historique ● Retour d'expérience, les succès ● Retour d'expérience, les erreurs
    11. 11. Industrialisation : faciliter le provisionning 06/02/2015 11 ● Définition du besoin ● Retour d'expérience, les succèsRetour d'expérience, les succès – Offre Amazon énoOorme et adaptable – Connaissances internes Puppet, gestion des dépendances (puis utilisation de Foreman) – Utilisation de packer.iopacker.io pour faciliter les workflows de provisionning – Les alertes de budget d'AWS sont indispensables – Kitchen, un framework pour Chef : « Infrastructure as codeInfrastructure as code » – Opérationnel en 3 mois ! ● Retour d'expérience, les erreurs
    12. 12. Industrialisation : les erreurs à éviter 06/02/2015 12 ● Définition du besoin ● Retour d'expérience, les succès ● Retour d'expérience, les erreursRetour d'expérience, les erreurs – Abandon de Puppet au profit de ChefChef utilisé en production – Chef est moins contraignant, mieux documenté pour Amazon EC2 (via : CloudFormation) – Réfléchir aux synchro de BDD (ex est-ce bien utile de répliquer une instance qui ne bouge jamais comme les résultats d'élection ?) – Attention, qui dit « à la demande » dit « éteindre les services inutiles » sous peine de dépassement de budget !dépassement de budget !
    13. 13. Industrialisation : une spécialité Techsys ? 06/02/2015 13 ● Que retenir pour Techsys ? – Amazon est mature, mais pas les utilisateurs, et encore moins les collaborateurs : penser à monter un labo Techsys « pour se faire la main » ? – Bien étudier le besoin avant de répondre : puppet vs chef par exemple, AWS vs Rackspace ou OVH, ... ● Quels outils regarder ? – Chef, Kitchen, Packer.io sont indispensables pour AWS (en 2014) ● Et nos clients ?Et nos clients ? – Ils ont du mal à identifier un prestataire Amazon de qualité. – Ils ne savent pas encore que le Cloud à la demande revient vite plus cher que l'hébergement illimité traditionnel en cas de mauvais réglage. – Ils en veulent tous tout de suite.
    14. 14. PHP dans les distributions RPM 06/02/2015 14 ● PHP et les RPM ● Les distributions RPM professionnelles ● Les distributions RPM personnelles ● Le futur pour les satisfaire tous
    15. 15. RPM : quel problème avec PHP ? 06/02/2015 15 ● PHP et les RPMPHP et les RPM – Évolutions rapides, beaucoup de dépendancesdépendances : PECL, PEAR, … – PHP et les modules, combien de RPMs ? ● Les distributions RPM professionnelles ● Les distributions RPM personnelles ● Le futur pour les satisfaire tous
    16. 16. RPM, rappel des distributions 06/02/2015 16 ● PHP et les RPM ● Les distributions RPM professionnellesLes distributions RPM professionnelles – RHEL / CentOS / OracleLinux – Stabilité (13 ans), packages anciens mais avec les patchs de sécurité – Backports sans support ● Les distributions RPM personnelles ● Le futur pour les satisfaire tous
    17. 17. RPM, rappel des distributions 06/02/2015 17 ● PHP et les RPM ● Les distributions RPM professionnelles ● Les distributions RPM personnellesLes distributions RPM personnelles – Fedora (labo à faire monter en RHEL) – Packages très récents (parfois trop) – Maximum 1 an pour une distribution ● Le futur pour les satisfaire tous
    18. 18. RPM, rappel des distributions 06/02/2015 18 ● PHP et les RPM ● Les distributions RPM professionnelles ● Les distributions RPM personnelles ● Le futur pour les satisfaire tous – Les Software CollectionSoftware Collection ! « versionnées » par version majeure d'application : la toute dernière version de PHP est dispo en RHEL 5 ! – Supportée 100 % RedHat et Satellite – Cohabitation possible de plusieurs versions sans virtualisation (scl enable / VHOST par version / surcharge du shebang) – Intégration continue de la stack PHP grâce à Koschei
    19. 19. RPM, Techsys sait faire. 06/02/2015 19 ● Que retenir pour Techsys ? – Techsys est partenaire RedHat – Nous DEVONS répondre « Software Collection » sur les questions de maintenance – Nous DEVONS répondre « Erratas » sur les questions de sécurité uniquement ● Quels outils regarder ? – http://www.softwarecollections.org – Debian cherche une solution similaire ● Et nos clients ?Et nos clients ? – Ils utilisent massivement RedHat en physique ou virtualisé – Ils ont des contraintes de maintenance de version ou de tests multiples – Nous avons des réponses logicielles légitimes et supportées
    20. 20. Laisse pas traîner ton log 06/02/2015 20 ● Un log, pour quoi faire ? ● Les bonnes méthodes ELK, ce qui marche ● Le cas Bla Bla Car, ce qui n'est pas traité
    21. 21. Les logs : définition 06/02/2015 21 ● Un log, pour quoi faire ?Un log, pour quoi faire ? – Les activités systèmes et applicatives – L'analyse d'erreurs – L'amélioration continue – Lire un log à travers ssh avec grep, tail, awk : c'est juste pénible et pas pratique ● Les bonnes méthodes ELK, ce qui marche ● Le cas Bla Bla Car, ce qui n'est pas traité
    22. 22. Les logs : bonnes méthodes 06/02/2015 22 ● Un log, pour quoi faire ? ● Les bonnes méthodes ELK, ce qui marcheLes bonnes méthodes ELK, ce qui marche – ElasticSearch, Logstash, Kibana : un standard, un seul prod et hors-prod pour comparer facilement – rsyslog pour le système – monologmonolog pour l'application PHP ● Surcharge du contexte PSR3 (ex : via les processors ajout du user-id) ● 1 channel monolog par application (1 pour Symfony, 1 pour Security, 1 pour une doctrine) – Graylog Extended Log Format (GELFGELF) pour alimenter Logstash – Une seule machine Amazon et 1 % de loadav pour 200000 event/min ● Le cas Bla Bla Car, ce qui n'est pas traité
    23. 23. Les logs : ce qui n'est pas encore prêt 06/02/2015 23 ● Un log, pour quoi faire ? ● Les bonnes méthodes ELK, ce qui marche ● Le cas Bla Bla Car, ce qui n'est pas traitéLe cas Bla Bla Car, ce qui n'est pas traité – La redondance de l'infra ou l'extension du stockage pour la rétention ● rapatriement en local en cours d'étude – Le volume autorise la perte de logs ● Transfert en UDP, peu intrusif sur l'application ou la charge OS – Pas d'anonymisation des logs – ELK n'est pas utilisé pour ou par le monitoring, les consoles sont ouvertes en permanence – Pas encore d'utilisation par les équipes marketing – Le framework Heka (Mozilla) est encore trop jeune et trop complexe pour remplacer le trio de référence ElasticSearch / Logstash / Kibana
    24. 24. Les logs, une spécialité Techsys ? 06/02/2015 24 ● Que retenir pour Techsys ? – ELK est très mature et est une référence – Il faut définir QUOI loguer AVANT de dire COMMENT. – C'est un outil formidable mais sans valeur ajoutée – Notre valeur ajoutée, sa configuration « facile » ● Quels outils regarder ? – ELK mais aussi monolog et GELF – Heka, plus tard ● Et nos clients ?Et nos clients ? – Ils veulent économiser SPLUNK et maîtriser leurs logs. – Ils ont déjà ELK mais ne savent pas encore exploiter les « dashboards » – Nous avons les bonnes méthodes d'intégration en main.
    25. 25. Architecture d'une application Full API orientée micro service 06/02/2015 25 ● Pourquoi faire un micro service ? ● Comment intégrer les micro service ? ● Et après ?
    26. 26. Les micro services, pourquoi 06/02/2015 26 ● Pourquoi faire un micro service ?Pourquoi faire un micro service ? – Pour la scalabilité & la robustesse d'une fonctionnalité – Pour les évolutions techniques d'uned'une fonctionnalité – Pour avoir une approche mobile / responsive – Un micro service pour : ● Un moteur de recherche ● Un sommaire ● Un moteur d'envoi de SMS (...) ● Comment intégrer les micro service ? ● Et après ?
    27. 27. Les micro services, comment 06/02/2015 27 ● Pourquoi faire un micro service ? ● Comment intégrer les micro service ?Comment intégrer les micro service ? – Communication en HTTP, format JSON – Gérer les erreurs et logs tout de suite ● Logentries (en gros c'est un ELK en mode SAS) ● Un tag par micro service (1 User-Agent) – Séparation lectures / écritures ● Traitements Asynchrones par IronMQ (JMS server en mode SAS) – Cache publique Varnish, pas de cache privé pour ne pas avoir à gérer les invalidations – Authentification mutuelle des micro services (SSL / OAuth2) – Équipes de développement humaine : 1 équipe par micro service ● Et après ?
    28. 28. Les micro services, pourquoi 06/02/2015 28 ● Pourquoi faire un micro service ? ● Comment intégrer les micro service ? ● Et après ?Et après ? – Passer de OpenVZ à DockerDocker ● Gaudi est un service SAS pour les micro services – Ne pas avoir peur de se tromper
    29. 29. Les micro services, Techsys, déjà ? 06/02/2015 29 ● Que retenir pour Techsys ? – Cette présentation est trop en avance sur son temps (KlubUp) – Elle donne de bonnes pistes sur ce que seront les infrastructures ● Quels outils regarder ? – Les applications SAS : Logentries, IronMQ, Gaudi.io ● Et nos clients ?Et nos clients ? – Ils en sont très loin dans la technique, mais sont prêts / près dans l'approche et leurs besoins – Il ne leur reste qu'à revoir le mode webservice Java vers du micro service en terme de design – Et donc à tout redéveloppertout redévelopper from scratch … (« ça tue pas le métier ») – Techsys a maintenant les bonnes pratiques
    30. 30. Faster Application Development with CakePHP 3.0 06/02/2015 30 ● Qu'est-ce que CakePHP ● A quoi ça sert ● Les outils associés
    31. 31. CakePHP : c'est quoi 06/02/2015 31 ● Qu'est-ce que CakePHPQu'est-ce que CakePHP – C'est l'ancêtre des framework PHP – Annoncé comme l'un des plus matures – Mais aussi très peu utilisé en France ● A quoi ça sert ● Les outils associés
    32. 32. CakePHP : pour quoi faire 06/02/2015 32 ● Qu'est-ce que CakePHP ● A quoi ça sertA quoi ça sert – A développer des sites web facilement – Sans connaissance – Transforme PHP en application Middleware – Object Relational Mapping natif (jointure SQL facilité) – Intégration de mapreduce et optimisation de querycache ● Les outils associés
    33. 33. CakePHP : les outils 06/02/2015 33 ● Qu'est-ce que CakePHP ● A quoi ça sert ● Les outils associésLes outils associés – Migration PHP facilité par phinx.org – « Let's baking, put the cake in the oven », Bake, générateur de code PHP pour CakePHP – DebugKit : barre d'outil intégrée pour … débugguer le code Bake – CRUD plugin pour ne plus avoir à gérer les exceptions et erreurs
    34. 34. CakePHP : pour Techsys 06/02/2015 34 ● Que retenir pour Techsys ? – C'est un framework que l'on peut conseiller – Le projet a l'air sympa pour notre futur intranet – Le mainteneur est cool (au sens ricain, pas au sens français) ● Quels outils regarder ? – CakePHP lui même, à la mode avec toutes ces émissions culinaires  dans le poste de télévision ... ● Et nos clients ?Et nos clients ? – Nos clients utilisateurs de PHP ont encore des produits tout faits (drupal, joomla, ….) et – Sont donc encore loin de ce besoinloin de ce besoin
    35. 35. Retour d'expérience ARTE GIE : développement API 06/02/2015 35 ● Les besoins ● Les choix techniques ● Le reste à faire
    36. 36. ARTE : les besoins 06/02/2015 36 ● Les besoinsLes besoins – Interface multi-langues – Diffusion de contenu vidéo : Arte +7, Arte Concert, mini-sites pour les émissions, ... – Accès multicanals : Browser, HBBTV, iOS, Android, FirefoxOS – Respect des droits d'auteurs, gestion de la QoS, cloisonnement et sécurité des applications … – OpenData ● Les choix techniques ● Le reste à faire
    37. 37. ARTE : les choix 06/02/2015 37 ● Les besoins ● Les choix techniquesLes choix techniques – Symfony 2, REST, MongoDB, RabbitMQ – OpenResty (Reverse Proxy Middleware pour le serveur Web NGINX) – Micro Services (une API par application) – Standard {json:api} : annotations, plusieurs documents en une requête – Sécurité ● Rôle et limites : OAuth2 => retour protocolaires HTTP ● NGINX + LUA (access_by_lua) => scripting pour les API ● Cache Varnish devant les API ● Le reste à faire
    38. 38. ARTE : le reste à faire 06/02/2015 38 ● Les besoins ● Les choix techniques ● Le reste à faireLe reste à faire – Être en capacité à accueillir plus de 1500 req/min si plus d'audience – Libération du code du JMSSerializer sur Github – Libération du code Serveur sur Github – Exploitation des métriques avec statsD – Intégration ArteTV dans un module Drupal (presque terminé) – Loadbalancing avec HHVM
    39. 39. ARTE : pour Techsys 06/02/2015 39 ● Que retenir pour Techsys ? – Retour sur des choix architecturaux – Importance du respect des standards ● Quels outils regarder ? – OpenResty et son NGINX « adapté » – Hip Hop Virtual Machine (HHVMHHVM) : la virtualisation du Middleware PHP par Facebook ™ ● Et nos clients ?Et nos clients ? – On n'en est pas encore là ….
    40. 40. Déploiement continu : un pas de plus vers le DEVOPS 06/02/2015 40 ● Rappels sur le mouvement DEVOPS ● Bonnes pratiques d'intégration continue ● Solutions techniques
    41. 41. DEVOPS : le mouvement 06/02/2015 41 ● Rappels sur le mouvement DEVOPSRappels sur le mouvement DEVOPS – Réunion des Développeurs et Opérationnels (sysadmin) pour : ● Réduction du « Time To Market » ● Diminution des risques ● Amélioration continue – « It is not the strongest of the species that survives, nor the most  intelligent, but rather the one most adaptable to change. » (Leon C. Megginson) ● Bonnes pratiques d'intégration continue ● Solutions techniques ● Conclusions
    42. 42. DEVOPS : intégration continue 06/02/2015 42 ● Rappels sur le mouvement DEVOPS ● Bonnes pratiques d'intégrationBonnes pratiques d'intégration continuecontinue – Méthode agile proche de SCRUM ou LEAN Startup : sprint de release – Équipe à taille humaine : « pizza team » de Jeff Bezos – Dans l'ordre : déploiement en assemblage, intégration continue, tests et livraison, déploiement en production en permanence – Répéter au maximum pour qu'une mise en production devienne banale ● Solutions techniques ● Conclusions
    43. 43. DEVOPS : techniques 06/02/2015 43 ● Rappels sur le mouvement DEVOPS ● Bonnes pratiques d'intégration continue ● Solutions techniquesSolutions techniques – Versionning du code : SVN, Git, … , Github – Se donner les moyens d'une « Infrastructure As A Code » avec Chef, Puppet, Ansible, … – Automatiser les phases de tests : Jenkins ou Travis (appli SAS) – Mettre du monitoring à chaque étape : ELK ou NewRelic (appli SAS) – Déploiement continu : Fabric, Capistrano ● Conclusions
    44. 44. DEVOPS : conclusions 06/02/2015 44 ● Rappels sur le mouvement DEVOPS ● Bonnes pratiques d'intégration continue ● Solutions techniques ● ConclusionsConclusions – Le DevOps permet le « feature flippingfeature flipping » : mise en production d'une et une seule fonctionnalité – Le DevOps permet le « Canary TestingCanary Testing » : montée par pallier – Le DevOps autorise le « Design to FailureDesign to Failure » : Netflix a inventé le job de « Chaos Monkey » pour optimiser la robustesse de son code
    45. 45. DEVOPS : Techsys est prêt 06/02/2015 45 ● Que retenir pour Techsys ? – Le métier d'adminsys laisse peu à peu la place au DevOps – Les bonnes pratiques ne sont que des rappels évidents et permettent l'amélioration continue et le gain d'argent ● Quels outils regarder ? – Travis, NewRelic, Capistrano ● Et nos clients ?Et nos clients ? – Ils sont à des années lumière de cette réflexion. Ils n'ont pas encore compris l'intérêt du versionning applicatif pour certains. – Les réalisations « Twitter / FlickR / NetFlix » leurs semblent inaccessibles
    46. 46. Conclusions 06/02/2015 46 ● Que retenir pour Techsys ? – Les mouvements DEVOPS et LEAN Startup permettent l'intégration continue – Un des moyens d'y arriver et de mesurer tous les indicateurs – De multiplier les services ou les micro services ● Quels outils regarder ? – Monolog, rSyslog, ElasticSearch, Logstash, Kibana, statsD, Graphite, Grafana, Puppet, Chef, packer.io, Kitchen, Capistrano, RabbitMQ, OpenResty, Varnish – MixPanels, Travis, NewRelic, Logentries, IronMQ – Amazon AWS, Docker, Gaudi, HHVM – Les Software Collections RPM, phinx.org
    47. 47. Conclusions 06/02/2015 47 ● A lire – Lean Startup par Eric Ries – State Of DevOps Reports par PuppetLabs ● Le clou de la journée – La démo par MicrosoftMicrosoft d'un déploiement agile de PHP dans un environnement AzureAzure, pour héberger en 5 minutes un VM versionnée avec GIT, son serveur Web Iis. Son administration se faisait via un browser Chrome dans une Virtualbox démarrée sur un MacOS. Le tout était permis grace à un HTC Android qui partageait la connexion 3G. J'ai bien lu Microsoft au début ? Oui oui …. – Le second, dans un registre différent, la « karaoke conferencekaraoke conference », une clôture en mode « match d'improvisation » sur des slides improbables.
    48. 48. FORUM PHP PARIS 2014 06/02/2015 48 Avez-vous des questions ?
    49. 49. FORUM PHP PARIS 2014 06/02/2015 49 Vos idées sont les bienvenues Merci ! +33.6.32.19.76.71 o.duquesne@techsys.fr @techsys_fr @oduquesne

    ×