Réussir ses Déploiements Applicatifs Common Romandie - 13 mars 2012 Damien Terrien Solution Architect 2012 SERENA SOFTWARE INC.
Cartographie du S.I. en développement GESTION DE CONFIGURATION AMONT Cartographie du S.I. de référence GESTION DE CONFIGURATION AVAL Cartographie du S.I. en exploitation Versionnage & Signature Bases de stockage Binaires et Exécutables Versionnage & Signature Spécifications Demandes de changement Configurations en développement Produits livrables Produits installables Bordereau de livraison Procédures d'installation - Kim et Kit Tables - Fichiers paramètres Base descriptive Descriptif Applications - Produits Logiciels - Composants - Tables Descriptif conf. de référence applicative et Infras. Technique Diffusion des colis Colis S.I. FT Inventaire Infrastructures techniques des sites Applications - Produits Logiciels Tables - Kim ou Kit utilisé Description des sites Référentiel de développement Descriptif Kim ou Kit de référence / Infrastructure Référentiel de livraison Référentiel en exploitation Un référentiel de livraison de 72To 2 SERENA SOFTWARE INC.
Génération de package à partir d une DML (Definitive Media Library) 100 packages à l heure pour alimenter 39 caisses régionales 3 SERENA SOFTWARE INC.
Automatiser l installation de nouvelles releases vers plus de 300 serveurs 4 SERENA SOFTWARE INC.
Le long chemin vers la production Sécuriser Etre certain de déployer en production ce qui a été validé par les équipes amont Déployer plus vite et plus souvent Augmenter votre capacité de déploiement Auditer Automatiser Gestion de template Tracer et Planifier l exécution des tâches de mises en services Assurer la traçabilité entre les référentiels Amont et la production Lier les releases déployées avec les demandes métiers 5 SERENA SOFTWARE INC.
SERENA SOFTWARE Editeur de solutions dédiées à la gestion de vos processus ALM, RLM et ITSM Société indépendante +3000 clients 30 ans d existence 29 bureaux dans 14 pays CA : 220 Millions de $ +800 employés Capital détenu par 6 6
Dilemme entre centralisme et subsidiarité Processus Manuels Outils Disparates Business IT Processus Déconnectés Equipes réparties Visibilité par domaines Effet silo 7 SERENA SOFTWARE INC.
Orchestrated Application Delivery Accélérer la mise en service des applications qui accroissent la valeur Business» pour l entreprise Business PROCESS - IT Gap Métier Demandes Déploiement IT Apps Développement 8 SERENA SOFTWARE INC.
Orchestrated Apps + Orchestrated Ops IT Services Services Métier Requêtes Demandes P R O PROCESS C E S S Mise en place Déploiement IT Développement Apps 9 SERENA SOFTWARE INC.
Orchestrated Apps + Orchestrated Ops IT Services Services Incidents Infrastructure Changes Métier Requêtes Demandes Defect Fix Request P R O PROCESS C E S S Ops Change Requests Mise en place Déploiement IT Project & Enhancement Requests Développement App Releases Apps 10 SERENA SOFTWARE INC.
Cartographie fonctionnelle de l offre SERENA IT Business Users & Customers Front Office Request Center Demand Manager Orchestrated IT Dashboard Development Operations Requirements Manager Development Manager Release Manager Service Manager Serena Business Manager 11
Domaines Applicatifs Serena Solution OOTB Best Practices
Domaines applicatifs Serena Demand Management Release Management (RLM) IT Service Management (SSM) Requirements Management (RQM) Developer Management (DVM) Quality Management 13
Domaines applicatifs Serena
Gestion des Déploiements Demand Develop CAB De plus en plus de Release Customer Deploy Audits, Audits, Audits Multiples producteurs de codes Nouveaux processus : Agile Peu ou pas de structuration Rapports difficiles à produire Activité manuelle et fastidieuse Build Developers Qualité des Releases Scrum Master Auditor Development Teams Manual processes and scripts Production downtime Increased costs ITIL v3 Release Manager Customer Peu ou pas de Coordination QA Peu de visibilité avant le passage en production (réflexes ultraprotecteurs) Pas de trçabilité, difficulté de communication du suivi Changements non-autorisés Virtual Datacenter Production Test DevOps 16 On-Prem Release Bottleneck Operations (TriZetto) Long release times Limited operational agility Complexity Cloud
Gestion des Déploiements «Zone Grise» : pas de normes et standards Développement Applicatifs : CMMi, ISO 12207 Production : ITIL, ISO 15288 Livraisons peu structurées : en général juste un répertoire commun Pas de traçabilité, pas de gestion de versions Difficulté à créer des «deltas» de livraison, à gérer le retour arrière Nombreuses technologies Procédures manuelles, scripts difficiles à maintenir, peu évolutifs vis-à-vis de l infrastructure Problème de disponibilité des compétences rares Coordination des acteurs Mails, Feuilles de Calcul MS Excel Peu de coordination au long du cycle et goulot d étranglement au passage en production 17
Volumétrie et coûts La gestion des Déploiements pour un acteur majeur du Corporate Banking par exemple c est : Jusqu à 700 Releases par mois sur les environnements de Production 500 Releases Applicatives 200 Releases d Infrastructures Un «Release Management Board» se réunissant 2 fois par semaine Un temps «elapse» moyen d une semaine par release Une charge de travail de 2,5 jours ETP par release Un coût annuel de 10,5 millions d Euros Pour un coût moyen de 500 par jour ETP 18
Cartographie fonctionnelle de la solution Fonction Release Control Fonction Release Vault Fonction Release Automation Release Control Planifier, Suivre et Gérer les Releases Release Vault Référencement (DML) et contrôle des applications Release Automation Automatisation de l installation et de la configuration 19
20 Architecture générale de la solution
Release Vault Connaissance et structuration des applications Stockage des packages en provenance de producteurs de code multiples Contrôle des versions successives et droits Connaissance et organisation des environnements de tests successifs Livraisons Coffre-fort Etapes (configurables) jusqu en production Production Package Mainframe Package System Test Acceptance Test Pre Prod Unix / Linux Package Référentiel Dimensions Windows 21
Organiser les concepts en fonctions des rôles Développement : centré sur les applications Déploiement : centré sur les environnements SENSIBILITE - Code sensibilité 1,1 PRODUCTEUR - Code Fournisseur / Editeur - Code contrat responsable 0,1 APPLICATION - Code basicat 0,1 concerne 2,2 : Objet du modèle répété pour faciliter la représentation 0,1 impacte TYPE D'INTERFACEune structure par - Code type d'interface PRODUIT «Applications» LOGICIEL - Code produit logiciel SOUS-DOMAINE APPLICATIF - Code domaine - Code sous-domaine concerne version INTERFACE FONCTIONNELLE - Identifiant interface Chargement dans version : objet commun avec le référentiel d'exploitation MODULE - Code Module - Libellé module le référentiel selon version mini/maxi version 2,4 INTERFACE FONCTIONNELLE VERSION - Identifiant interface - n de version version COMPOSANT LOGICIEL - Code composant version 1,1 1,1 DOMAINE APPLICATIF - Code domaine CONFIGURATION DE REFERENCE - Code configuration 1,n regroupe - type de changement APPLICATION/ VERSION - Code basicat - Code GOROCO appli regroupe -Type de changement 1,n MODULE/VERSION - Code GOROCO module regroupe -Type de changement 1,n PRODUIT LOGICIEL /VERSION - Code produit logiciel - Code GOROCO PL regroupe -Type de changement 1,n COMPOSANT LOGICIEL/ VERSION - Code composant - SOFO composant 0,1 1,n 1,1 1,1 pour la représentation complète du contrat, se référer au schéma équipements gestion ARCHITECTURE DE REFERENCE - Code architecture ELEMENT D'ARCHITECTURE - Code élément d'architecture implantation gestion Extraction du référentiel selon une ETAPE OPERATION structure - Code étape par «Colis 0,1 et procédures 1,n package 1,n 1,1 package 1,1 composé d installation» DELTA CONFIGURATION - Code init/ Conf cible 1,n composé 0,1 LIVRAISON REF - Réf expéditeur - Dates 1,1 Gestion des Configurations du SI Gestion de configuration aval G0R0C2 - MCD (référentiel de livraison) 1,1 1,n PROJET - Intitulé projet - Intitulé oparation Etat du colis 0,1 COLIS D'INSTALLATION - Identifiant colis d'installation 1,1 1,n 0,1 dépôt package package package REFERENTIEL SI - REFERENTIEL DEVELOPPEMENT - TYPE DE PROCEDURE - Code type de procédure PROCEDURE D'INSTALLATION / VERSION - Code procédure - Version procédure décrit TABLE PARAMETRE/ VERSION - Code table - Version table 1,1 PROCEDURE D'INSTALLATION - Code procédure 1,1 TABLE PARAMETRE - Code Table 22
Release Control : Planifier les releases Types de Release (Majeures, Mineures, Urgentes) Approbations (par types) Calendrier (Dates, Etapes par types, Environnements) Contenu (Enveloppes, Applications, Packages) 23
Release Control : Planifier les releases Types de Release (Majeures, Mineures, Urgentes) Approbations (par types) Calendrier (Dates, Etapes par types, Environnements) Contenu (Enveloppe, Applications, Packages) 24
Release Control : Planifier les releases Types de Release (Majeures, Mineures, Urgentes) Approbations (par types) Calendrier (Dates, Etapes par types, Environnements) Contenu (Enveloppe, Applications, Packages) 25
Release Control : Run Book Liste des activités à exécuter Manuelles Automatiques Release Calendar 1..n Release Train Ordonnancement Application 1..n Application Release 1..n Component 1..n Release Package Deployment Process Template 1..n Deployment Unit Deployment Process 1..n Deployment Task Manual Automated 26 26
Release Control : Run Book Liste des activités à exécuter Manuelles Automatiques Release Calendar 1..n Release Train Ordonnancement Application 1..n Application Release 1..n Component 1..n Release Package Deployment Process Template 1..n Deployment Unit Deployment Process 1..n Deployment Task Manual Automated 27 27
Release Automation En finir avec la complexité des scripts et des multiples technologies Un langage graphique composé «d Actions pré-cablées» pour concevoir les automates 700+ Actions disponibles Stockage Base de données Serveur d application Editeur Graphique Variables intégrées aux automates directement valorisables Automates multi-tiers 28
Release Automation Multi-tiers Le déploiement multi-tiers est orchestré par les agents L enchaînement des opérations par serveur est construite graphiquement Les dépendances identifiées et les codes retours attendus Les reprises sur erreurs gérées 29
Généralisation : Automate Une fois l automate mis au point l appel est réalisé conformément au processus décrit par la solution Release Control L ensemble des paramètres nécessaires à un Déploiement Sans Intervention est passé au processus d exécution de l automate sur tous les serveurs cibles 30
Généralisation : Automate Passage de paramètres via webservices : User Websphere ou JBOSS Pwd Websphere ou JBOSS Nom du projet applicatif (= nom du répertoire) Nom du package à déployer Nom du package de backup à créer Nom du serveur où déployer Dépôt (chemin où déployer le package sur le serveur) Identifiant de la demande Script positionnant les variables locales à exécuter à la connexion Nom du cluster sur le serveur applicatif 31
Généralisation : Automate Utilisation des paramètres passés Récupération des paramètres passés par SBM via webservices : User Websphere ou JBOSS Pwd Websphere ou JBOSS Nom du projet applicatif (= nom du répertoire) Nom du package à déployer Nom du package de backup à créer Nom du serveur où déployer Dépôt (chemin où déployer le package sur le serveur) Identifiant de la demande Script positionnant les variables locales à exécuter à la connexion Nom du cluster sur le serveur applicatif Utilisation des paramètres 32
Un exemple Client : TRIZETTO Release Management Control Vault Automation SBM Hébergeur majeur pour les Organisations 39 Clients hébergés HP PPM Subversion Quality Ctr Service Ctr D un Processus 95% manuel à 90% automatisé De 98% de défauts dans le processus de relase à moins de 5% D une installation des Release en 8 heures à moins de 1h en moyenne D une mobilisation de 8 personnes par relase à 3 personnes en moyenne 33
TRIZETTO : Le projet de mise en œuvre Les grandes étapes du projet : 1. Analyse du processus de Release Management en place Identification des différents producteurs d applications à installer Identification des responsabilités et validations Identification des procédures de diffusion et d installation 2. Mise en place du Release Vault Modèle, SAS et procédure de livraison 3. Création des Automates de Déploiement Par filière technologique Abstraction et variables d environnement 4. Création des Workflows Décisionnels par types de releases Techniques avec appels et passage de paramètres aux automates 5. Tests, Validation et Pilotes 34
Release Management Maîtrise de bout en bout Planification et Traçabilité Contrôle et Autorisation Prise en comptes des perspectives des équipes de Développement : vue Applications Déploiement : vue Environnements Complète automatisation des activités sur les serveurs Fréquences et complexité des releases gérées Grand nombre de serveurs cibles (internes ou DMZ) gérés Passage des paramètres en complète transparence 35
Release Management Maîtrise de bout en bout Planification et Traçabilité Contrôle et Autorisation Prise en comptes des perspectives des équipes de Développement : vue Applications Déploiement : vue Environnements Complète automatisation des activités sur les serveurs Fréquences et complexité des releases gérées Grand nombre de serveurs cibles (internes ou DMZ) gérés Passage des paramètres en complète transparence 36
Questions et Réponses Réussir des Déploiements Applicatifs en mode «Zéro Intervention» Webcast Topic: Release Management Date/Time: Jeudi 29 Mars de 16h à 17h - Mardi 3 Avril de 10h à 11h Questions? 37