A lire sur: http://cloud-experience.fr/devops-rencontre-avec-un-early-adopter-2.html#more-3192
le 11 mars 2013
Comment accélérer et sécuriser la mise en production de vos applications? Depuis quelques mois maintenant le sujet DevOps fait partie prenante des débats autour du Cloud Privé. Pour la Société Générale, le stade des réflexions est dépassé depuis plus de deux ans et la mise en pratique des concepts de « Continuous Delivery » est dorénavant une réalité. |
Mon habit d’évangéliste a cela d’excitant qu’il me donne l’occasion
de débattre de la pertinence des différentes approches du Cloud
appliquées au monde de l’entreprise. En contrepartie, il me faut
naturellement faire face à une certaine dose de scepticisme. Parfois
cependant, au détour d’un rendez-vous, j’ai la surprise et le plaisir de
découvrir un véritable pionnier. Quelqu’un qui, de son côté, a suivi le
même cheminement et est arrivé aux mêmes conclusions. Cette expérience
enthousiasmante je l’ai vécue en déjeunant avec Jérome Delabarre le
mardi 5 mars 2013.
Jérôme est en charge de l’équipe outils et industrialisation (RET/API/TDP) à la Société Générale. Et alors que je bats la campagne depuis maintenant quelques années pour parler Cloud et DevOps, lui et son équipe expérimentent avec succès le déploiement automatisé d’applications et d’infrastructures en faisant voler en éclats de façon très pragmatique la rigidité des silos entre développement et production. Sur le plan philosophique cela consiste à étendre la boucle du développement agile en rajoutant au principe de « Continuous Integration» un principe de « Continuous Delivery ».
Retour sur un projet qui date de juin 2010
A l’époque l’objectif consiste à accélérer le déploiement des applications en automatisant au maximum toute la chaine de fabrication des éléments constitutifs du SI, établissant de facto un pont entre les études et la production. L’enjeu est de réduire la durée du cycle Développement/Production et d’accélérer la livraison des releases applicatives. Dit plus simplement, l’objectif est de diminuer drastiquement le délai nécessaire à une ligne de code pour passer toutes les étapes entre le poste du développeur et la machine de production.
Pour cela trois éléments déterminants :
Un mantra : « De quoi mes applications ont-elles besoin pour fonctionner ? »
Une philosophie : l’Approche Top Down (c’est l’application qui commande)
Un arsenal : un outil de modélisation des processus de mise en production et du document d’architecture applicative, un orchestrateur et un référentiel de composants.
Bref une approche très, très DevOps, mise en pratique de la façon suivante :L’application et son mode de déploiement / instanciation sont modélisés pour tous les environnements nécessaire à la gestion du cycle de vie d’une application, de l’environnement d’homologation jusqu’à la production. Ce modèle s’appuie ensuite sur un moteur d’orchestration et le référentiel de composants pour enchainer sans aucune intervention humaine toutes les étapes de la mise en production. Lorsque la décision est prise de passer d’une étape à une autre (passage de QA à pré-prod par exemple), le processus automatisé récupère des packages applicatifs qui sortent des usines de développement (placés dans une DSL). Il les déploie ensuite en déposant sur l’infrastructure provisionnée pour l’occasion, et selon la séquence déterminée, toutes les briques logicielles, le code et les éléments de configuration. L’application est dans la même séquence « remontée » avec tous les pré- et post- traitements nécessaires. Les retours arrière sont même prévus !
Bilan des courses
A ce jour 80 applications métiers et les releases associées sont livrées de façon entièrement automatisée. Pour supporter cela, le catalogue de composants manipule aussi bien de l’Apache, que du Weblogic, du Weblogic portal, du Websphere, de Oracle (ddl, dml, plsql) , de Informatica, du Cristal, ou encore du Tibco. Cerise sur le gâteau, afin d’assurer un service à 360°, Jérôme et son équipe gèrent aussi avec le même outillage le cycle de vie et MCO des plateformes qui supportent les applications.
Les bénéfices ?
Réduction drastique du « time to value », augmentation du nombre de releases passées en production, amélioration significative de la productivité, diminution des erreurs et augmentation consubstantielle de la qualité des mises en production. Tant sur le plan des processus de collaboration inter-équipe que l’industrialisation complète de la chaine de mise en production, c’est tout bonnement impressionnant.
Jérôme est en charge de l’équipe outils et industrialisation (RET/API/TDP) à la Société Générale. Et alors que je bats la campagne depuis maintenant quelques années pour parler Cloud et DevOps, lui et son équipe expérimentent avec succès le déploiement automatisé d’applications et d’infrastructures en faisant voler en éclats de façon très pragmatique la rigidité des silos entre développement et production. Sur le plan philosophique cela consiste à étendre la boucle du développement agile en rajoutant au principe de « Continuous Integration» un principe de « Continuous Delivery ».
Retour sur un projet qui date de juin 2010
A l’époque l’objectif consiste à accélérer le déploiement des applications en automatisant au maximum toute la chaine de fabrication des éléments constitutifs du SI, établissant de facto un pont entre les études et la production. L’enjeu est de réduire la durée du cycle Développement/Production et d’accélérer la livraison des releases applicatives. Dit plus simplement, l’objectif est de diminuer drastiquement le délai nécessaire à une ligne de code pour passer toutes les étapes entre le poste du développeur et la machine de production.
Pour cela trois éléments déterminants :
Un mantra : « De quoi mes applications ont-elles besoin pour fonctionner ? »
Une philosophie : l’Approche Top Down (c’est l’application qui commande)
Un arsenal : un outil de modélisation des processus de mise en production et du document d’architecture applicative, un orchestrateur et un référentiel de composants.
Bref une approche très, très DevOps, mise en pratique de la façon suivante :L’application et son mode de déploiement / instanciation sont modélisés pour tous les environnements nécessaire à la gestion du cycle de vie d’une application, de l’environnement d’homologation jusqu’à la production. Ce modèle s’appuie ensuite sur un moteur d’orchestration et le référentiel de composants pour enchainer sans aucune intervention humaine toutes les étapes de la mise en production. Lorsque la décision est prise de passer d’une étape à une autre (passage de QA à pré-prod par exemple), le processus automatisé récupère des packages applicatifs qui sortent des usines de développement (placés dans une DSL). Il les déploie ensuite en déposant sur l’infrastructure provisionnée pour l’occasion, et selon la séquence déterminée, toutes les briques logicielles, le code et les éléments de configuration. L’application est dans la même séquence « remontée » avec tous les pré- et post- traitements nécessaires. Les retours arrière sont même prévus !
Bilan des courses
A ce jour 80 applications métiers et les releases associées sont livrées de façon entièrement automatisée. Pour supporter cela, le catalogue de composants manipule aussi bien de l’Apache, que du Weblogic, du Weblogic portal, du Websphere, de Oracle (ddl, dml, plsql) , de Informatica, du Cristal, ou encore du Tibco. Cerise sur le gâteau, afin d’assurer un service à 360°, Jérôme et son équipe gèrent aussi avec le même outillage le cycle de vie et MCO des plateformes qui supportent les applications.
Les bénéfices ?
Réduction drastique du « time to value », augmentation du nombre de releases passées en production, amélioration significative de la productivité, diminution des erreurs et augmentation consubstantielle de la qualité des mises en production. Tant sur le plan des processus de collaboration inter-équipe que l’industrialisation complète de la chaine de mise en production, c’est tout bonnement impressionnant.
Aucun commentaire:
Enregistrer un commentaire