Upload
xebia-france
View
539
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Vous n'avez pas pu assister à la journée DevOps by Xebia ? Voici la présentation de Benoit Moussaud (XebiaLabs) : "Les piliers du déploiement applicatif avec XL Deploy "
Citation preview
Les piliers du déploiement applicatif avec XL Deploy Benoit Moussaud @bmoussaud Journée Devops – 10 Juin 2014
2 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Responsabilité “Application”
BUILD RUN
3 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Responsabilité “Infrastructure”
RUN BUILD
4 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le « Build » Dev
▪ Principe: Transformer du code en Binaire
▪ Outils => Build répétable − Make − ANT / MS-Build − Maven / Gradle / SBT
▪ Intégration Continue => Build répétable, environement sain − Jenkins − TFS − Bamboo − …
▪ Livrable : une version d’une application
5 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le « Build » Dev
Le Package regroupe l’ensemble des éléments qui constituent une version d’une application. Ces éléments sont : ▪ des artefacts, les fichiers ou les
répertoires de fichiers : .exe, .war, fichiers SQL, fichier de configuration .properties ▪ des ressources, les éléments de
configuration tels que les datasources, virtualhost… ▪ des méta-données telles le nom de
l’application et sa version.
6 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le « Build » Ops
▪ Principe: Installer & configurer (OS, Middleware, Sécurité..)
▪ Outils − Script Shell (.bat ,.ps1, .sh) − Package natif : rpm, deb, msi
▪ Build répétable − Séquentiel : « installer ceci , puis cela »
• « Old School »
− Spécification : « cette machine doit avoir un serveur Web sur le port 9090 avec un utilisateur dédié » • Puppet, Chef, Ansible.
▪ Livrable : un environnement
7 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le « Build » Ops
▪ Principe: Installer & configurer (OS, Middleware, Sécurité..)
▪ Outils − Script Shell (.bat ,.ps1, .sh) − Package natif : rpm, deb, msi
▪ Build répétable − Séquentiel : « installer ceci , puis cela » − Spécification : « cette machine doit avoir un serveur Web sur le port 9090 avec un utilisateur dédié »
▪ Livrable : un environnement
8 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le « Build » Ops
L’environnement est caractérisé par : ▪ un ensemble de containers, des éléments
d’infrastructure ou de middleware décrits du point de vue du déploiement (machine, serveur d’application, serveur web, base de données …) sur lesquels on va déployer l’application, ▪ un ensemble de dictionnaires qui décrivent la
configuration à appliquer. Exemple : username, password, répertoire, ports, placeholders à remplacer dans les fichiers de configuration.
9 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Classique échange entre Dev & Ops
10 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Comment je déploie ?
« J’écrase la version précédente » « Hey Ops, file moi les accès root »
« Il est ou le document Word d’installation ? » « Hey Dev! donne moi un script pour installer ton application »
11 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Le déploiement : Le « Build » DevOps
▪ Spécification de l’état final − Une version de l’application − Un environnement − Chaque élément du package est associé avec un ou plusieurs cibles − Chaque élément peut être configuré
12 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
XL Deploy: un modèle de déploiement unifié
Package de Déploiement Environnement
Applica4on Déployée
Déploiement
Mappe les artefacts et resources du Package de Déploiement sur l’Environnement pour les rendre spécifiques à
l’Environnement
Indépendant de l’Environnement
13 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Périmètre fonctionnel de XL Deploy
GERER UN ETAT
o Basé sur un modèle (UDM)
o Référen.el
o des environnements
o des applica4ons
o des versions applica4ves installées o Point central de configura.on et de paramétrage de ressources
o Ges4on complète de la traçabilité
ANALYSER LES CHANGEMENTS
o Moteur de calcul automa.que des
plans de déploiement (“AutoFlow”)
o Calcul des deltas entre packages
TRANSPORTER et EXECUTER
o Automate de déploiement
des packages applica4fs sur
les serveurs
o Exécu.on des commandes
14 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Architecture XL Deploy
15 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Plugins et points d’extensions
U.liser Out of the Box
o Apportent le savoir-‐faire (les règles) de
déploiement
o Travaillent de concert pour cons4tuer la tâche de déploiement Plugins payants Plugins inclus Plugins
communautaires
IBM WAS 6, 7, 8 et 8.5 IBM WebSphere MQ IBM WebSphere Process Server Oracle Weblogic Server 9, 10, 11g, 12c Oracle Service Bus 10 et 11 JBoss Applica4on Server 4, 5, 6 ,7 Tomcat Server Microsoc Windows / IIS / Biztalk F5 Networks Big IP Citrix Netscaler
Command File Web Server Database No4fica4on Release Authoriza4on Maven Bamboo Jenkins TFS
Test Applica4on Lock Change Management Apache mod_jk Scheduler / SLA Generic Load Balancer DataPower RPM Personal Creden4als Puppet
Etendre/paramétrer/modifier
o Les plugins par simple configura4on
(XML) pour refléter ses propres règles
Créer simplement
o Sa propre règle de déploiement avec le
“Generic Plugin”
16 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
XL Deploy, solution d’entreprise transverse sécurisée
17 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
XL Deploy : réconcilier Dev et Ops
XL Dep
loy
Developer
System Administrator
Importent
Déclarent Découvrent
18 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Solution type « Livraison Continue »
Development Test Acceptance Produc.on
App B V 3.3
App B V 3.2
App B V 3.1
App B V 3.0
Development Test
Acceptance Produc.on
App A V 2.0
App A V 1.2
App A V 1.1
App A V 1.0
Projets en développement
Intégration Continue
Provisioning d’infrastructure
Automatisation des déploiements
19 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Proposition de valeur et différentiateurs XebiaLabs
AutoFlow Pas de scripts à écrire / à maintenir
Plugins out of the box
Modèle puissant, ouvert et extensible
Rapidité de mise en oeuvre
Architecture sans agents
Licensing
20 Copyright 2014. Confiden4al – Distribu4on prohibited without permission
Démo
21 Copyright 2014. Confiden4al – Distribu4on prohibited without permission