48
Agile Lille 2015: Agile Lille 2015: CI, DevOps et après Laurent Tardif

Agile lille 2015 devops etapres

Embed Size (px)

Citation preview

Page 1: Agile lille 2015 devops etapres

Agile Lille 2015:Agile Lille 2015:CI, DevOps et après

Laurent Tardif

Page 2: Agile lille 2015 devops etapres

Agile Lille 2015:Agile Lille 2015:CI, DevOps et après

Page 3: Agile lille 2015 devops etapres

CI, DevOps et après

Page 4: Agile lille 2015 devops etapres

Pour qui ?

∗ Vous connaissez (un peu) Devops

∗ Vous connaissez (une partie au moins) de la StackDevops

Page 5: Agile lille 2015 devops etapres

Quoi

∗ Un petit retour dans le passé pour comprendre ce qui ce passe aujourd’hui

∗ On essaiera de voir les tendances actuelles

Page 6: Agile lille 2015 devops etapres

∗ Le rapport Thery de 1994. Intitulé « Les autoroutes de l’information », il fut écrit

Toujours avoir un regard critique sur les prédictions …..

autoroutes de l’information », il fut écrit par Gérard Théry, Alain Bonnafé, Michel Guieysseet adressé au Premier ministre de l’époque, Édouard Balladur.

∗ Internet :

∗ « Son mode de fonctionnement coopératif n’est pas conçu pour offrir des services commerciaux. Sa large ouverture à tous types d’utilisateurs et de services fait apparaître ses limites, notamment son fait apparaître ses limites, notamment son inaptitude à offrir des services de qualité en temps réel de voix ou d’images. »

∗ « Ce réseau est donc mal adapté à la fourniture de services commerciaux. »

Page 7: Agile lille 2015 devops etapres

∗ Laurent Tardif

Qui suis-je ?

~2005 ∗ Laurent Tardif

~2000

~2005

Page 8: Agile lille 2015 devops etapres

∗ 1995 : 35M d’utilisateurs internet � 2014 : 2.8 Milliards (~40%)

Quelques changements récents

(~40%)

∗ 1995 : 80M de téléphones � 2014 5.2 Milliards (~75%)

∗ La fréquence (24/24) et l’utilisation (vidéo,…) des appareils changent.

∗ Gartner : en 2016, DevOps va passer d’une niche à une stratégie d’entreprise pour 25 % des 2000 plus grandes stratégie d’entreprise pour 25 % des 2000 plus grandes

entreprises.

∗ En cours ou à venir : IoT

∗ Ref : http://fr.slideshare.net/kleinerperkins/internet-trends-v1

Page 9: Agile lille 2015 devops etapres

Quelques dates pour les devs

2000 2004 2008 2012 2016

Agile

2000 2004 2008 2012 2016

Continuous Integration

2002 : Agile software development

2006 : Agile Project management

2007 : Entreprise Scrum

2006 : CI : Martin Fowler

2008 : JavaOne : Hudson/Jenkins

2012 : SAFe 1.0

Devops

2008 : JavaOne : Hudson/Jenkins

2013 : Docker2009 : Chef v1.0

2005 : Puppet

Page 10: Agile lille 2015 devops etapres

L’Intégration Continueou la fusion du dev et du test

Page 11: Agile lille 2015 devops etapres

CI & Tools • Build

• Maven, Gradle

• Plugin & qualité

• PMD, findbugs, sonar

• Tests • Junit,mockito, selenium,

• Version control & CI• Svn, Git, jenkins,

artifactory,nexusartifactory,nexus

• Virtualisation• Vmware, virtualbox, Xen,….

Page 12: Agile lille 2015 devops etapres

∗ Les bases

Points Clés

∗ Les bases ∗ Qualité du code du logiciel

∗ Robustesse du code

∗ Packaging

∗ évolution des outils: nombreux, une fonctionnalité, distribués et utilisables dans le cloud distribués et utilisables dans le cloud

Page 13: Agile lille 2015 devops etapres

∗ Tests unitaires : Karma + mocha (jasmine) + Chai.js + Sinon.js

Exemple d’évolution (Octo : http://fr.slideshare.net/OCTOTechnology/test-sur-tous-les-fronts)

Sinon.js∗ Tests fonctionnels : selenium + capybara∗ Tests de sécurité : skipfish∗ Tests IHM

∗ multi-navigateur (Saas) : Saucelabs, browserstack∗ Tests non régression visuelles : phantom(js/css), Casper∗ Tests de référencement : Woorank∗ Tests de référencement : Woorank

∗ Tests de charges∗ Performance : webpagetests, AgileLoad∗ Stress test : Gremlinsjs

Page 14: Agile lille 2015 devops etapres

Devopsou la fusion du dev(+tests) et des ops

Page 15: Agile lille 2015 devops etapres

DevOps : Pourquoi ?

Page 16: Agile lille 2015 devops etapres

Des exemples de motivation

F(x) = return …

Page 17: Agile lille 2015 devops etapres

DevOps c’est quoi ?

Page 18: Agile lille 2015 devops etapres

Devops … par les techos

1ère Définition :

DevOps est principalement une automatisation de l’infrastructure, du build, du processus de release, du monitoring, …….

Page 19: Agile lille 2015 devops etapres

Devops … Par le buisiness

2ème Définition :

une approche qui croit en l’expérimentation, à l’échec rapide, au produit viable minimal, et une décision prise sur des chiffres.

Ex: http://blog.xebia.fr/2015/10/08/revue-de-presse-xebia-2015-41/#RevuedePresseXebia-ImportanceofCulturalShiftinContinuousDeliveryModel

Page 20: Agile lille 2015 devops etapres

3éme définition

Page 21: Agile lille 2015 devops etapres

OPS

Delivery

•Flux•Lead Time•Déploiement continue

Outils

•Automatisation•Intégration continue

•Infrastructure as

Un peu plus détaillé

User Feedback

•A/B Testing•Feature Flags•UX Tests•Buisiness

OPS

•Run•Provisionning•Capacity Planning

•Déploiement continue

QA

•TDD•Qualité•Inspection continue

•Infrastructure as code

Virtualisation

Les équipiers

•Capacités•Feature Team•Connaissance•Responsabilités•No Ops Métriques

•Monitoring

•Docker.io•Puppet,Chef, Fabric, …

•{I|P|A}ASS

Processus

•Kanban•Amélioration continue

•Coopération

•Skills •Monitoring•Analyse des Logs •Disponibilité•Fiabilité•Alertes

Monitoring

•Time to market•Frequentdelivey

Page 22: Agile lille 2015 devops etapres

Les outils • Version control & Build• GitHub, jenkins, Rultor

• Configuration management • Puppet : gestion de configuration

(administrator based)• Ansible : syntaxe YAML , ‘agent less’• Chef : gestion de configuration

Saltstack : gestion de configuration, Chef : gestion de configuration

• Saltstack : gestion de configuration, client => client(s)

• Augeas : éditeur de configuration • Monitoring

• New relic : Monitoring pour les applicatons (Saas solution)

• LogZ.io : ELK (Elasticsearch, logstash, Kibana)

• Infrastructure • Vagrant : configuration pour les VM • Vagrant : configuration pour les VM

(intégration avec chef, puppet, docker,…)

• Docker : automatisationde la gestion des containers Linux

• Applicatif • Squid Cache• Atlassian : Management de project

management, et automatisation du build

Fgd

Page 23: Agile lille 2015 devops etapres

Docker

∗ Swarm : mechanism de cluster

∗ Kitematic : gestion d’image docker via une UI

∗ Registry : gestion (stockage) d’images docker∗ Registry : gestion (stockage) d’images docker

∗ Machine (beta) : create host + docker client

Page 24: Agile lille 2015 devops etapres

Monitoring

Page 25: Agile lille 2015 devops etapres

∗ Optimizely

∗ Google Analytics Content Experiments

User feedback

∗ Google Analytics Content Experiments

∗ Unbounce

∗ Wingify Visual Website Optimizer

∗ Genetify

∗ Convert

∗ Vanity∗ Vanity

Page 26: Agile lille 2015 devops etapres

Quelques remarques sur la stack

∗ Cloud

∗ SAAS

∗ Principalement orienté Ops et utilisateurs∗ Principalement orienté Ops et utilisateurs

∗ Pas encore de consolidation du marché … aura-t-elle lieu ?

Page 27: Agile lille 2015 devops etapres

Et donc fin 2015 ?

et technique

Page 28: Agile lille 2015 devops etapres

2015…

Multi -Clouds

Cloud publicMachine

MicroservicesOpen Source

Cloud public

Containers

Machine Learning

Page 29: Agile lille 2015 devops etapres

∗ L’Open source domine les changements technologiques.

open source

∗ Développement d’eco-systèmes autours de projet far : Docker, Hadoop, OpenStack, ….

∗ Le modèle open source -- collaboratif, auto-organisé, et distribué – commence à se propager en entreprise.distribué – commence à se propager en entreprise.

Page 30: Agile lille 2015 devops etapres

Le cloud public

Moins de gros projets de cloud privé, principalement à cause du coût et de la complexité à maintenir la stacklogicielle en interne.

Ex : http://www.dell.com/learn/fr/fr/frbsdt1/campaigns/revueit-cloud-pourquoi-echec-cloud-priveechec-cloud-prive

Page 31: Agile lille 2015 devops etapres

Des outils permettent le déploiement ou la gestion de

Management de clouds multiples

Des outils permettent le déploiement ou la gestion de plusieurs clouds.

Ex : CliQr, prétend être capable de choisir dynamiquement quel cloud doit faire tourner tel ou tel processus.

Ex : RightScale, permet de gérer et d’optimiser les ressources et les coûts d’un ensemble de clouds.ressources et les coûts d’un ensemble de clouds.

Page 32: Agile lille 2015 devops etapres

∗ Transformer une application en 1 container est simple.

La folie des Containers

∗ Gérer une application multi containers est plus difficile.

∗ L’ecosystem de Docker :∗ Kubernetes(google), Mesos, et StackEngine;

∗ Google Cloud Platform et Amazon Web Services ont leur propre mécanisme depuis quelques mois.Google Cloud Platform et Amazon Web Services ont leur propre mécanisme depuis quelques mois.

Page 33: Agile lille 2015 devops etapres

Les architectures Microservices

∗ Aujourd’hui les développeurs d’application Web et mobile appdev, tendent à développer/réutiliser des services plutôt que tout réécrire

∗ Ces services sont des microservices – une résponsabilitésimple, faite pour devenir des éléments d’applications plus complexes. complexes.

∗ Docker a accéléré le développement des microservices en fournissant un moyen simple et efficace de les déployer.

Page 34: Agile lille 2015 devops etapres

∗ Donner du sens à vos données

Machine learning

∗ La marche devient abordable, grâce à des projets comme Mahout , Spark/Mllib et Flink.

∗ Adaptation au comportement utilisateur en temps réel.réel.

Page 35: Agile lille 2015 devops etapres

Et après demain ?Et après demain ?

Page 36: Agile lille 2015 devops etapres

Flink en 3 slides

Data sourcesource

Data source

Data source

Operation

Data

Data

Operation

Data

Data

Data

Stream Operation

DataStream Data

Operation

Moteur d’optimisationExécuté sur un cluster

Page 37: Agile lille 2015 devops etapres

Flink

Page 38: Agile lille 2015 devops etapres

Flink

∗ Flink est optimisé pour les traitements cycliques et itératifs

∗ Flink traite les données en batch ou en flux de manière natives. Les données sont mises dans un flux dès qu’elles sont à disposition.dès qu’elles sont à disposition.

∗ Optimiseur intégré

Page 39: Agile lille 2015 devops etapres

∗ La Sécurité (cf IoT)

Les oubliés de Devops

∗ La Sécurité (cf IoT)∗ Monitoring / alertes

∗ Le passage à l’échelle de l’entreprise

∗ Le test en continu∗ Le test en continu

∗ Les Valeurs

Page 40: Agile lille 2015 devops etapres

Nouvelles idées

nouvelles organisations du travail comme par exemple l'intégration en nouvelles organisations du travail comme par exemple l'intégration en continu avec des équipes en parallèle: une mise en production par semaine, mais quatre équipes qui travaillent sur des lots fonctionnels indépendants

Page 41: Agile lille 2015 devops etapres

Les containers mobiles

∗ Situations extrêmes : coupure réseau

∗ Réduction des coûts

∗ Utilisation de « vos » ressources

Page 42: Agile lille 2015 devops etapres

Posted by Benjamin Wootton (http://devops.com/2015/05/07/great-legacy-code-crisis-2016/)…..∗ These modern approaches to software delivery such as DevOps,

The Great Legacy Code Crisis Of 2016

∗ These modern approaches to software delivery such as DevOps, Continuous Delivery, cloud, containers, infrastructure automation and polyglot MicroServices are exponentially better approaches than last generation technology. Those who are working on these modern platforms can move so quickly in comparison to more traditional enterprise environments that people working on older platforms don’t stand a chance. It’s at least a 5-10x uplift in speed of delivery.

∗ What is scary is that by legacy I am not even talking about ∗ What is scary is that by legacy I am not even talking about mainframes or Visual Basic desktop applications. I’m talking about last generation .NET and J2EE platforms which are too heavyweight, slow and bulky to change. Change, iteration and experimentation is what’s important in the new world and these platforms are just not optimized for that.

Page 43: Agile lille 2015 devops etapres

Architectures et lectures

∗ « Open containers » (DockerCon 2015)∗ Edge Computing∗ (multi-) Cloud natif

∗ des livres pour les managers

∗ “DevOps: A Software Architect’s Perspective”de Len Bass, Ingo Weber and Liming Zhu

∗ “Software Architecture in Practice”∗ Hybrid Cloud For Dummies

Page 44: Agile lille 2015 devops etapres

DevOps : mais il ne suffit pas d’outils pour que ca marche

Page 45: Agile lille 2015 devops etapres

Quelques commentaires

∗ Organizations with agile development will be slower to embrace DevOps across the entire application life cycle.

∗ Cultural resistance and low levels of process discipline will create significant failure rates for DevOps initiatives, particularly when waterfall processes are still a dominant portion of the development portfolio.portion of the development portfolio.

∗ Nevertheless, a majority of enterprises attempting to scale agile over the next five years will recognize the need for DevOps initiatives.

Page 46: Agile lille 2015 devops etapres

∗ Project Managers would ask Dev teams to revise their

Quelques exemples

∗ Project Managers would ask Dev teams to revise their

estimates until the estimates matched the pre-determined ‘story points’ available for the work!

∗ the programme sponsors (‘the business’) were of the view that limiting the work in progress would slow

down delivery;down delivery;

∗ Continuous Delivery was essentially ‘just’ a few

Jenkins pipelines

Page 47: Agile lille 2015 devops etapres

SO … Devops

http://dev2ops.org/2010/11/devops-is-not-a-technology-problem-devops-is-a-business-problem/

Page 48: Agile lille 2015 devops etapres