Presentation de la solution de déploiement logiciel Kelkoo intégrant Puppet pour favoriser une approche devops.
Version actualisée pour Agile Grenoble 2012
Vous allez, ou vous venez d'installer TFS? Cette session vous présente ce qu'il faut savoir pour utiliser efficacement TFS 2010 et partir dans la bonne direction: utilisation des collections de projets, organisation du contrôleur de sources, bien choisir et adapter son process template, utilisation des workitems, création de builds et gestion des serveurs de builds.
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...Microsoft Technet France
Pourquoi automatiser et orchestrer les processus IT, quels bénéfices pour l’entreprise et l’administrateur ? Quels gains de temps et productivité attendre ? Cette session sera l’occasion de répondre à ces questions au travers de plusieurs projets de mise en œuvre de System Center Opalis\Orchestrator (SCO) en entreprise
System Center Operations Manager et la supervision des applications (.Net et ...Microsoft Technet France
Cette session vous propose de venir découvrir les fonctionnalités offertes par SCOM dans la supervision des applciations .Net et Java: quel est le code qui pose problème, les requêtes qui doivent être optimisées, les performances des JVM...
Le début de l’année 2013 annonce le Service pack des solutions System Center 2012. Quand est-il ? Quels sont les nouveautés des composants de cette suite ? Venez découvrir le temps d’une heure les grandes nouveautés des différents composants System Center. Riche en démonstration, vous aurez l’occasion de voir le virage que prend Microsoft avec ces nouveautés. Que ce soit de l’ajout de fonctionnalités ou de gestion de système d’exploitation supplémentaire, le service pack 1 de System Center s’annonce des plus surprenants.
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab ManagementMicrosoft
Venez découvrir comment gérer vos environnements de tests virtuels via Visual Studio 2010 Lab Management et quels avantages cela apporte à vos testeurs fonctionnels et à votre IT : mise en place simplifiée, déploiement automatique de l’application, tests automatisés, snapshot, collecte de données en cas de bogues, … Nous ne manquerons pas non plus de parler des améliorations prévues pour Lab Manager dans TFS 11 !
Vous allez, ou vous venez d'installer TFS? Cette session vous présente ce qu'il faut savoir pour utiliser efficacement TFS 2010 et partir dans la bonne direction: utilisation des collections de projets, organisation du contrôleur de sources, bien choisir et adapter son process template, utilisation des workitems, création de builds et gestion des serveurs de builds.
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...Microsoft Technet France
Pourquoi automatiser et orchestrer les processus IT, quels bénéfices pour l’entreprise et l’administrateur ? Quels gains de temps et productivité attendre ? Cette session sera l’occasion de répondre à ces questions au travers de plusieurs projets de mise en œuvre de System Center Opalis\Orchestrator (SCO) en entreprise
System Center Operations Manager et la supervision des applications (.Net et ...Microsoft Technet France
Cette session vous propose de venir découvrir les fonctionnalités offertes par SCOM dans la supervision des applciations .Net et Java: quel est le code qui pose problème, les requêtes qui doivent être optimisées, les performances des JVM...
Le début de l’année 2013 annonce le Service pack des solutions System Center 2012. Quand est-il ? Quels sont les nouveautés des composants de cette suite ? Venez découvrir le temps d’une heure les grandes nouveautés des différents composants System Center. Riche en démonstration, vous aurez l’occasion de voir le virage que prend Microsoft avec ces nouveautés. Que ce soit de l’ajout de fonctionnalités ou de gestion de système d’exploitation supplémentaire, le service pack 1 de System Center s’annonce des plus surprenants.
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab ManagementMicrosoft
Venez découvrir comment gérer vos environnements de tests virtuels via Visual Studio 2010 Lab Management et quels avantages cela apporte à vos testeurs fonctionnels et à votre IT : mise en place simplifiée, déploiement automatique de l’application, tests automatisés, snapshot, collecte de données en cas de bogues, … Nous ne manquerons pas non plus de parler des améliorations prévues pour Lab Manager dans TFS 11 !
L'objectif est de présenter à l'aide d'outil pédagogique, le mode d'execution des applications séquencées pour App-V afin d'en maximiser la compatibilité. La gestion de la mémoire, de l'accès aux disques et à la base de registre seront abordées de maniére approfondie avec des exemples de debogage grâce aux outils Sysinternals. Cette session sera l'occasion de mieux comprendre la fonctionnement de App-V, les options présentes dans le fichier OSD et donc le contexte d'execution des applications virtualisés.
System Center 2012 | SCOM : Déploiement et migration Operations Manager 2012Microsoft Technet France
System Center Operations Manager vous permet de surveiller aisément vos services informatiques, applications, matériel, et ressenti utilisateur. Il englobe toutes les connaissances des applications et des systèmes d’exploitation (Windows, Unix, Linux) dont vous avez besoin pour anticiper et venir rapidement à bout des problèmes fonctionnels. Cette session vise à présenter les lignes directrices et les bonnes pratiques dans la migration et la définition de l'infrastructure qui vous permettront de tirer le meilleur parti de votre déploiement de System Center Operations Manager 2012
Scrum et le forfait incompatibles ? Pas si sûr. Lors du Scrumday 2011, Bertrand Pinel, directeur technique d'Ippon a présenté les retours d'expérience de la société
Comment combiner les AlwaysOn Availability Groups avec la Réplication dans SQ...Microsoft Technet France
Dans cette session, présentée en Français par le chef produit de l'équipe de développement de SQL Server, nous expliquerons comment on peut combiner la Réplication avec les Availability Groups de AlwaysOn. Apres avoir rappelés les attributs et les capacités de ces deux technologies nous expliquerons ce qui est supporté et ce qui n’est pas supporté lorsque l’on souhaite les combiner. Enfin, après avoir présenté les changements internes des mécanismes de la Réplication et des metadata qui permettent cette combinaison, nous en démontrerons la mise en œuvre : configuration, reprise après failover/bascule…
Comment identifier la cause réelle des problèmes impactant un cluster de basc...Microsoft Technet France
La majeure partie du temps, le service cluster subit les défaillances qui interviennent et réagit dans la mesure des moyens qui lui sont donnés. L’objectif de cette session est de comprendre comment utiliser les traces et outils de Windows pour identifier quel composant ou quel facteur a causé un dysfonctionnement au sein d’un cluster et comment mettre en place un plan d’action visant à anticiper d’éventuels futurs problèmes.
Java dans Windows Azure: l'exemple de JonasMicrosoft
Jonas, serveur d'application J2EE, a récemment été porté par Bull, avec l'aide de Microsoft, sur Windows Azure. Au-delà de la mixité des environnements Java et Microsoft, cette session démontrera par l'exemple la grande ouverture de Windows Azure à des technologies peu habituées à s'éxécuter en environnement Windows.
Avec SQL Server 2012 plusieurs solutions de disponibilité s'offrent à vous. Ces solutions vous permettent d'atteindre le niveau de disponibilité que vous souhaitez avec un TCO réduit. Au cours de cette session, nous verrons les nouveautés autour de la disponibilité des données avec SQL Server 2012. Nous aborderons aussi les scénarii possible en mixant plusieurs options pour permettre non seulement la disponibilité des données mais aussi leur redondance et la réparatition géographique pour des solutions de disaster recovery.
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...Microsoft
Construire une infrastructure virtuelle? Rien de plus simple quand les outils sont adaptés. Découvrez la palette d'outils mis à disposition par Aruba, dont l'interface graphique Visual Cloud. Celle-çi vous permet de concevoir et modéliser en drag & drop toute votre infrastructure répartie sur plusieurs de nos datacenters. Créer, activer, suspendre une VM, raccorder un switch virtuel, gérer les IP, choisir le type d'hyperviseur … autant d'actions possibles au sein d'une seule et même interface graphique: VisualCloud. Toutes les modifications sont mises en oeuvre instantanément et la mise en production de toute l'infrastructure en un seul clic, tout en contrôlant les coûts dès le départ. Venez découvrir en 1h chrono notre solution IAAS et ses outils de gestion.
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016Fabien Arcellier
Après maints périples, vous avez progressivement amélioré votre capacité à gérer des environnements au travers d'Infra as Code. Votre code initialement simple a pris de l'embonpoint et vous sentez la réalité vous rattraper implacablement : vous êtes en train de créer de la complexité, voire même de la dette.
Loin d'être une fatalité, à partir de notre expérience de développeur (Fabien) et d'ops (Alexandre), nous vous proposons un road trip dans des
pratiques de développement déclinées sur l'Infra as Code (Bash, Puppet et Ansible).
Nous présentons des pratiques, des plus simples activables immédiatement à des démarches plus complexes pour dessiner une big picture de l'Infra as Code, de ses contraintes, de ses forces et de ses pièges.
* Comment mettre en place des boucles de feedback les plus courtes possibles ?
* Comment faire du test driven development sur l'infrastructure ?
* Quels patterns et outils pour tester une configuration sans tirer toute votre infra et itérer plus rapidement ?
* Quel est le rapport entre Tetris, un ascenceur et l'Infra as Code ?
REX déploiement Ansible et Utilisation avec DockerYannig Perre
Présentation en deux parties :
- Difficultés rencontrées durant le déploiement d'Ansible au niveau technique et humain ;
- Exemple d'utilisation de Docker et Ansible pour permettre de prototyper rapidement des vrais faux environnements.
La présentation contient deux exemples de lancement d'Ansible :
- Une première démo d'installation de mediawiki sur une infra simple (1 frontal Apache, 1 container BDD MariaDB) ;
- Une seconde démo expliquant comment ajouter des machines et les gérer à l'aide d'un load balancer (1 load balancers Haproxy, 2 apaches, 1 MariaDB).
Presentation given at by Gary Larizza at Camp Devops in Chicago ( http://www.campdevops.com ) on agile deployments with Puppet.
Learn more about Puppet: www.puppetlabs.com
Subscribe to Gary on Speakerdeck: https://speakerdeck.com/glarizza
Alphorm.com Formation MySQL Administration(1Z0-883)Alphorm
La formation complète est disponible ici:
http://www.alphorm.com/tutoriel/formation-en-ligne-mysql-1z0-883
MySQL est devenu le serveur de bases de données issu du monde libre le plus largement adopté par les entreprises.
A l'issue de cette formation, vous saurez installer et administrer MySQL au quotidien, d'une manière efficace et sécurisée.
Cette formation traite aussi des notions avancées de MySQL : réplication, sécurité, sauvegarde, performances et optimisation.
L'objectif est de présenter à l'aide d'outil pédagogique, le mode d'execution des applications séquencées pour App-V afin d'en maximiser la compatibilité. La gestion de la mémoire, de l'accès aux disques et à la base de registre seront abordées de maniére approfondie avec des exemples de debogage grâce aux outils Sysinternals. Cette session sera l'occasion de mieux comprendre la fonctionnement de App-V, les options présentes dans le fichier OSD et donc le contexte d'execution des applications virtualisés.
System Center 2012 | SCOM : Déploiement et migration Operations Manager 2012Microsoft Technet France
System Center Operations Manager vous permet de surveiller aisément vos services informatiques, applications, matériel, et ressenti utilisateur. Il englobe toutes les connaissances des applications et des systèmes d’exploitation (Windows, Unix, Linux) dont vous avez besoin pour anticiper et venir rapidement à bout des problèmes fonctionnels. Cette session vise à présenter les lignes directrices et les bonnes pratiques dans la migration et la définition de l'infrastructure qui vous permettront de tirer le meilleur parti de votre déploiement de System Center Operations Manager 2012
Scrum et le forfait incompatibles ? Pas si sûr. Lors du Scrumday 2011, Bertrand Pinel, directeur technique d'Ippon a présenté les retours d'expérience de la société
Comment combiner les AlwaysOn Availability Groups avec la Réplication dans SQ...Microsoft Technet France
Dans cette session, présentée en Français par le chef produit de l'équipe de développement de SQL Server, nous expliquerons comment on peut combiner la Réplication avec les Availability Groups de AlwaysOn. Apres avoir rappelés les attributs et les capacités de ces deux technologies nous expliquerons ce qui est supporté et ce qui n’est pas supporté lorsque l’on souhaite les combiner. Enfin, après avoir présenté les changements internes des mécanismes de la Réplication et des metadata qui permettent cette combinaison, nous en démontrerons la mise en œuvre : configuration, reprise après failover/bascule…
Comment identifier la cause réelle des problèmes impactant un cluster de basc...Microsoft Technet France
La majeure partie du temps, le service cluster subit les défaillances qui interviennent et réagit dans la mesure des moyens qui lui sont donnés. L’objectif de cette session est de comprendre comment utiliser les traces et outils de Windows pour identifier quel composant ou quel facteur a causé un dysfonctionnement au sein d’un cluster et comment mettre en place un plan d’action visant à anticiper d’éventuels futurs problèmes.
Java dans Windows Azure: l'exemple de JonasMicrosoft
Jonas, serveur d'application J2EE, a récemment été porté par Bull, avec l'aide de Microsoft, sur Windows Azure. Au-delà de la mixité des environnements Java et Microsoft, cette session démontrera par l'exemple la grande ouverture de Windows Azure à des technologies peu habituées à s'éxécuter en environnement Windows.
Avec SQL Server 2012 plusieurs solutions de disponibilité s'offrent à vous. Ces solutions vous permettent d'atteindre le niveau de disponibilité que vous souhaitez avec un TCO réduit. Au cours de cette session, nous verrons les nouveautés autour de la disponibilité des données avec SQL Server 2012. Nous aborderons aussi les scénarii possible en mixant plusieurs options pour permettre non seulement la disponibilité des données mais aussi leur redondance et la réparatition géographique pour des solutions de disaster recovery.
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...Microsoft
Construire une infrastructure virtuelle? Rien de plus simple quand les outils sont adaptés. Découvrez la palette d'outils mis à disposition par Aruba, dont l'interface graphique Visual Cloud. Celle-çi vous permet de concevoir et modéliser en drag & drop toute votre infrastructure répartie sur plusieurs de nos datacenters. Créer, activer, suspendre une VM, raccorder un switch virtuel, gérer les IP, choisir le type d'hyperviseur … autant d'actions possibles au sein d'une seule et même interface graphique: VisualCloud. Toutes les modifications sont mises en oeuvre instantanément et la mise en production de toute l'infrastructure en un seul clic, tout en contrôlant les coûts dès le départ. Venez découvrir en 1h chrono notre solution IAAS et ses outils de gestion.
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016Fabien Arcellier
Après maints périples, vous avez progressivement amélioré votre capacité à gérer des environnements au travers d'Infra as Code. Votre code initialement simple a pris de l'embonpoint et vous sentez la réalité vous rattraper implacablement : vous êtes en train de créer de la complexité, voire même de la dette.
Loin d'être une fatalité, à partir de notre expérience de développeur (Fabien) et d'ops (Alexandre), nous vous proposons un road trip dans des
pratiques de développement déclinées sur l'Infra as Code (Bash, Puppet et Ansible).
Nous présentons des pratiques, des plus simples activables immédiatement à des démarches plus complexes pour dessiner une big picture de l'Infra as Code, de ses contraintes, de ses forces et de ses pièges.
* Comment mettre en place des boucles de feedback les plus courtes possibles ?
* Comment faire du test driven development sur l'infrastructure ?
* Quels patterns et outils pour tester une configuration sans tirer toute votre infra et itérer plus rapidement ?
* Quel est le rapport entre Tetris, un ascenceur et l'Infra as Code ?
REX déploiement Ansible et Utilisation avec DockerYannig Perre
Présentation en deux parties :
- Difficultés rencontrées durant le déploiement d'Ansible au niveau technique et humain ;
- Exemple d'utilisation de Docker et Ansible pour permettre de prototyper rapidement des vrais faux environnements.
La présentation contient deux exemples de lancement d'Ansible :
- Une première démo d'installation de mediawiki sur une infra simple (1 frontal Apache, 1 container BDD MariaDB) ;
- Une seconde démo expliquant comment ajouter des machines et les gérer à l'aide d'un load balancer (1 load balancers Haproxy, 2 apaches, 1 MariaDB).
Presentation given at by Gary Larizza at Camp Devops in Chicago ( http://www.campdevops.com ) on agile deployments with Puppet.
Learn more about Puppet: www.puppetlabs.com
Subscribe to Gary on Speakerdeck: https://speakerdeck.com/glarizza
Alphorm.com Formation MySQL Administration(1Z0-883)Alphorm
La formation complète est disponible ici:
http://www.alphorm.com/tutoriel/formation-en-ligne-mysql-1z0-883
MySQL est devenu le serveur de bases de données issu du monde libre le plus largement adopté par les entreprises.
A l'issue de cette formation, vous saurez installer et administrer MySQL au quotidien, d'une manière efficace et sécurisée.
Cette formation traite aussi des notions avancées de MySQL : réplication, sécurité, sauvegarde, performances et optimisation.
Retour d'expérience sur la mise en place d'usines logicielles chez MMA faite pour l'Ensim (Ecole Nationale Supérieure d'Ingénieurs du Mans), niveau Master. Contenu : définitions, processus de développement agile et étapes de déploiement.
Le Devops est un terme émergent qui décrit un ensemble de méthode et pratiques pour favoriser la collaboration et la communication entre les équipes de développement logiciel et les équipes d’exploitation. Il est une réponse au besoin des acteurs du Web qui, face à une course effreinée à la fonctionnalité et l’explosion de leur trafic, ont du modifier leurs méthodes et rassembler l’ensemble des protagonistes pour minimiser l’impact de l’applicatif sur l’infrastructure et maitriser les coûts ou améliorer la performance. Nous verons dans cette conférence comment ces différentes équipes peuvent avancer ensemble en gardant une relation de partenaire plutôt que de client/prestataire
C’est quoi DevOps ?
DevOps (Abrégé pour le développement et les opérations). comme toutes autre approche, il n’est qu’un buzzword pour la plupart des gens ...
System Center 2012 | Administrez vos clouds privé et public Windows Azure ave...Microsoft Technet France
Le cloud permet à la fois de transformer votre datacenter en Centre de Services mais aussi d'étendre son infrastructure et ses capacités en utilisant des services publics comme Windows Azure. Venez découvrir dans cette session, comment mettre en oeuvre ces concepts et assurer une gestion éfficace de l'infrastructure, des applications et des services associés qu'ils soient privés ou publics à l'aide de la nouvelle version de System Center Virtual Machine Manager et également du nouveau venu System Center App Controller. Cette session fera la part belle aux démonstrations
Gouvernance des données avec SQL Server et ETL en Self-Service avec Data Expl...Microsoft Décideurs IT
Maîtriser les données est l'une des clés de la réussite des entreprises. C'est pourquoi l'EIM (Enterprise Information Management) est devenu un challenge dans nos systèmes d'information. Pour cela, il faut des outils et des processus. Pour les outils, SQL Server nous met à disposition SSIS, DQS et MDS qui, ensemble, permettent une bonne gestion des données de l'entreprise. Pour les processus, il faut maintenant adopter une réelle gouvernance pour piloter les usages et garantir la qualité des données. Data Explorer, actuellement en version Preview offre aux utilisateurs le moyen de créer leurs propres mashup de données. Nettoyage, transformation, enrichissement, cet outil permet de préparer facilement ses données avant de les utiliser dans les outils de BI personnelle comme PowerPivot et Power View. Data Explorer est un ETL en mode Self-Service, la brique qui manquait dans la plate-forme SQL Server.
Le monde de l'informatique est divisé depuis toujours en deux univers : les personnes qui créent (Dev) et celles qui exploitent en production (Ops). Cette séparation peut générer stress et frustration. Les équipes n'ont pas l'impression d'aller dans le même sens et cela nuit à la productivité. Pour les réconcilier, un ensemble de pratiques et d'outils ont été imaginées: elles se cachent derrière le terme DevOps. Qu'est-ce que c'est exactement ? Quels problèmes est-ce que cela résout ? Quelle est la bonne approche pour le mettre en place? Nous vous proposons de découvrir notre vision sur ce sujet lors de cette session d'introduction.
Dans un contexte d’entreprise souvent perçu comme rigide, envisager des changements techniques et organisationnels peut sembler impossible. DevOps est un bon contre-exemple car il existe des façons progressives d’introduire une telle méthodologie à plusieurs niveaux de l’entreprise. Cette session revient sur les principes de bases de DevOps (infrastructure-as-code, continuous delivery, culture de collaboration) et leur application pas-à-pas dans différents contextes.
Cette session sera l'occasion d'un retour d’expérience par Microsoft Services d’un client (early adopter) ayant déployé 7000 postes de travail avec SCCM 2012, les fonctionnalités clés de SCCM 2012 à mettre en œuvre ainsi que les questions d'architecture et de migration seront abordées. La part belle sera faite aux démonstrations durant cette session
2. Introduction 2
= +
Présentation d’une intégration Zooms techniques
d’outils dans le contexte Kelkoo
@AlainDelafosse @ncapponi Vous ?
3. Kelkoo « Shopping Engine » 3
80M appels APIs / mois 220 personnes en Europe
Pic à 1600 req/S
dont 90 informaticiens à Grenoble
5000 marchands
10M UU / mois 100M offres
avec un turn-over quotidien de 15%
20 000 Produits 13 Pays
300 Catégories par pays
5000 revues
4. DevOps 4
Le mouvement devops casse le mur entre les dev et les ops
Agile
Business Development DevOps Operations
Methodologies
Déploiement
Tests Release Changement
Monitoring
Gestion de
problème
Développement
Correction Correction Détection
et analyse et analyse d’incident
5. DevOps 5
Accompagner le changement et gérer le risque en construisant une intense
culture de collaboration et d'automatisation
Les 3 piliers du mouvement DEVOPS
PROCESS PEOPLE
Industrialisation du Faciliter la
processus de développement communication
OUTILS entre les équipes
Industrialisation déploiement et gestion Infrastructure
« devministration »
6. Contexte Kelkoo 6
400 serveurs
70+ DB
200 composants
10 serveurs
10+ DB
1 composant
TGZ + fichiers clefs valeurs
Solution YAHOO
Solution maison
7. Conception du projet 7
Idées Besoins
Outillage du dév. au déploiement Multi -instanciation des composants
BO de configuration Réutiliser outils Open Source
Gén.de composants installables
Automatisation
Déploiements standardisés
Commandes et interfaces simples
Outils Open Source
13. CONFIGURER 13
CONFIGURATION DES COMPOSANTS PAR SERVEUR
CLONER CONFIGURER DEVELOPPER PACKAGER CONFIGURER DEPLOYER
+ Serv1.comp1.clef1=A
Serv1.comp2.clef1=C
Serv2.comp1.clef1=A
Etc…
CONFIGURATION PAR ROLE
Un rôle regroupe et abstrait un déploiement
de composants et la configuration associée
Role1.clef1=A
Serv1=Role1
Serv2=Role1
Etc…
15. DEPLOYER 15
Outil en ligne de commande PUNCH
réalisant l’assemblage des
CLONER CONFIGURER DEVELOPPER PACKAGER CONFIGURER DEPLOYER
RPM DEPLOIEMENT RPM COMPOSANT VALEURS DE CONFIG
LIST Appliquer une configuration
Lister les composants déployés APPLY
RESTORE
Déployer et configurer
avec les données du BO
GET
Récupérer les valeurs de config
18. Processus: Déploiement chez Kelkoo
Développe, déploie,
teste dans les
environnements
SCRUM DEV
QA,DEV parfois DEV DEV DEV DEV
PRODTEAM TEAM TEAM TEAM TEAM
Communauté PACK/CONF
(gestion collective de l’outillage)
Développe plugins
de monitoring,
déploie dans tous
les environnements
Déploient dans tous
les environnements
OPS TEAM
Clone et configure INFRA TEAM
tous les serveurs
19. Résultat 19
Nombre de releases en production par semaine
Change management
dashboard
20. DevOps@Kelkoo 20
Industrialisation du Faciliter la communication
processus de développement entre les équipes
Reproductible, scalable, maitrisé Backlog et support communs
Même processus quel que soit la Industrialisation Pas de connaissance « tribale »
plateforme de l’infrastructure Inventaire, Visibilité
Bonne gestion des configurations et du déploiement
Améliorations sur gestion de l’infrastructure et
l’orchestration
21. Aller plus loin…. 21
Blue/green
Continous
Orchestration deployment
Component
Deployment & Configuration LoadBalancer
Infrastructure Filer
Nagios
OS Configuration Deployment & Change Tool
Configuration
Server Cloud & VM
Provisionning Provisionning
Private Cloud
22. Vos Options 22
Construire sa solution Prendre une solution du marché
Utilisation de paquets systèmes DeployIT (Xebia labs)
Nombreux outils à disposition Nolio (Nolio)
Gérer des images de déploiement
Image OS (Usharesoft)
S’adapter à une solution PAAS
Google App Engine, Cloudbees, Heroku
23. Zoom 5: 23
Les outils pour construire sa solution
Configuration
Management Orchestration
Puppet
CFEngine
Salt
Chef
Ansible Capistrano
Fabric
RunDeck
Glu
Control Tier
Func mCollective
Command FW
24. 24
MERCI……
To make error is human. To
propagate error to all
server in automatic way is
@DEVOPS_BORAT
#devops.
25. Bonus 25
CHOIX
• Utilisation des rôles sur une plateforme complexe
• Approfondir évolution DevOps versus SCRUM chez Kelkoo
26. Configuration puppet 26
class synonym_ws::synonym_ws_1_0_6 {
$application_name = "synonymWS"
synonym_ws_1_0_6_type { "synonymWS" :
template1 => template("synonym_ws/1.0.6/docBase/WEB-
INF/classes/applicationContext.xml.erb") }
class instances {
if $synonym_ws_instance_webapps {
synonym_ws::synonym_ws_1_0_6::instance_webapps{
$synonym_ws_instance_webapps: }}
if $synonym_ws_deinstall_instance_webapps {
synonym_ws::synonym_ws_1_0_6:disabled::instance_webapps{
$synonym_ws_deinstall_instance_webapps: }}
}
include "instances"
}
28. Synthèse 28
ETAPES-> CLONAGE OS CONFIG. DEV. PACKAGING APP CONFIG. DEPLOIEMENT
OS
Kickstarts Classes
Artefacts RPMs RPM de
ARTEFACTS Classes Puppets DNS, RPMs
Maven REPOS YUM Déploiement
puppet DNS, LDAP, etc
LDAP, etc
Plugin
Maven
Cobbler Puppet Maven Puppet Puppet
OUTILS maison
Puppet Kermit Gepetto Punch
YUM
Jenkins
INFRA INFRA DEV
DEV DEV
SA SA DEV SA
ACTEURS SA SA
DEV DEV SA OPS
OPS
OPS OPS
SUPPORT COMMUNAUTE PACK/CONF
30. Responsabilités
Embedded SA Embedded Embedded Transversal SA Ops contact No integration
OPS OPS + SA
SCRUM SA part of the Ops part of the Both part of SA supporting Dedicated OPS
SCRUM SCRUM SCRUM SCRUM contact
Release SA OPS Various Various Ops contact OPS
L1 / L2 /L3 L1 OPS L1/L2 OPS L1/L2 OPS+SA L1 OPS L1/L2 OPS L1 OPS/SCRUM
support L2/L3 SA L3 SCRUM L3 SA+SCRUM L2/L3 SA/SCRUM L3 SCRUM L2/L3 SCRUM
Changes SA OPS OPS / SA SA / OPS OPS OPS
Monitoring SA Producing SA/SCRUM OPS/SA/SCRUM SA/SCRUM OPS
plugins Producing Producing Producing plugins /SCRUM
plugins plugins
Problem mgt
Capacity mgt
Notes de l'éditeur
ADFObjectif 2’L’objectif de cette présentation est de vous donner un retour d’expérience la manière dont Kelkoo a mis en oeuvre les outils: Cobbler, Puppet, jenkins, Maven, RPM, Gepetto (BO maison), Punch (surcouche puppet) pour simplifier la création, la configuration et le déploiement de ses applications de manière industrielle... Contenu1. Donner une vision générale sur ce que sont Kelkoo, le mouvement devops et l’impact sur l’organisation et l’outillage kelkoo.2. Faire des zooms sur quelques aspects techniques des outils mis en œuvre par kelkooContratCe que vous verrez-Le contexte DevOps @Kelkoo (a reformuler)-Présentation d’une solution globale faite maison de configuration et déploiement-Détail de certain choix structurants et d’implémentation d’outillageCe que vous ne verrez pas-Comment utiliser Puppet, Jenkins, Cobbler en pratique-Une présentation détaillée du mouvement devopsQui sommes nous-Alain-NicolasQui êtes vous (Faire monter la main a tout le monde)-Qui connait devops-Qui a déjà manipulé un outil de gestion de config style Puppet, Chef
ADF
CAMS: culture, automation, mesure, sharing
CAMS: culture, automation, measure, sharingPas un role, une equipe,des outilsExtension au dela devops (lean startup -> le plus vite possible cash)
Parler organisation silo chez yahoo
Attention au discours: + simpleLe but/projet ? Notre projetReprendre les bonnes idées YahooChaine du dev au déploiement: blahblahblahBO de config : blahblahblahGénération de composants installablesMais les adapter a notre besoin et les améliorer Serveurs multi instances (meme composant instancié plusieurs fois) Standardisation répertoire et user Réutiliser maximum outil open sourceDéploiement un srv en une ligne de commande: ops doivent le faire en 24/7, réinstall de serveur, raz le bol des release notes de 20 pagesLes ops déploient comme les devs quel que soit l’environnementAutomatiser /Outiller du clonage en passant par le codage jusqu’au déploiementPas d’anticipation mode d’utilisation Outiller le déploiement sans préjuger du modèle final (DEV OPS efficace et collaboratif)Infrastructure API est venu plus tard
NCIAccroche : Voici les différentes étapes de notre solutionSéparation infrastructure/os et applications
Phrase d’intro pour introduire puppetPkoi puppetOptions a l’époqueMaintenantZapper central/localNCIAccroche : Nous avons choisi Puppet pour batir notre solution, a la fois pour la partie applicative et la partie infrastructurePuppet est un outil industriel de configuration et de déploiement flexible Choix de Puppet - à l’époque (2009) - maintenantChoix de Puppet sans mode client-serveur - souplesse : possibilité de tout faire localement, sans infrastructure - rendu possible par notre approche (génération automatique de la config Puppet)
ADFParler provisionningVolonté d’industrialiser la gestion des confs systèmesObjectif: cloner et configurer un serveur (Vm) en une commande S’attacher plutôt à la couverture: DNS, ce que l’on veur (classe puppet sur MAXFILE), scriptable (a vérifier utilisation ?)Pas gestion des utilisateurs car annuaire LDAPApplication simple des outils Puppet+ cobbler (+ bo de config)Cobber + Boot réseau + ClonageRPM / classe puppet de création utilisateur Kelkoo
NCIAccroche : Pour la partie développement/packaging de notre solution, notre objectif était de construire des paquets prêts à installerChoix de Maven naturel à cause de JavaNotre solution se démarque sur 2 aspects 1) génération de squelettes de composants 2) générations de paquets prêts à installer - choix RPM + versions - beaucoup plus puissant que génération de jar/war - appli complète - embarque tout ce qu’il faut pour déployer l’appli
NCISources: - Pom.xml : description du composant => on l’étend avec des infos de déploiements (type, rép., dépendances) - Contenu du composant => ce qui est packagé + template reconnus automatiquementRésultats: - Composant prêt à fonctionner - Composant pour installer
ADFQQCHOSE en + pour se raccrocher ?Simplification du discours mots clefs ?Pbs actuelsPas assez concret – illustrer ?Configuration des applicationsConfiguration du déploiementConfiguration couvre deux aspects - fournir des valeurs aux clefs de configuration pour instancier les templates utilisés dans les composants - associer à chaque serveur sa propre configuration (quels composants / quelles valeurs pour les clefs)Pour chaque serveur => 1 fichier de configurationPour gérer la complexité, besoin de mutualiser et organiser les configurationsCréation de rôles plus ou moins abstraitsBack-Office pour faciliter la gestion des rôlesLa configuration concerne de la même façon devs et ops. Même fonctionnement, même outils.
NCIMette BO Configuration=GepettoComposants + couples clé/valeurHéritage multiple : composition de rôlesParticularité : gestion des instancesBO vs fichier
ADFDéploiement consiste a rapatrier les RPMS mais collecter les valeurs de configOn se base sur Puppet pour le déploiement mais - dans notre contexte, besoin de 2 appels pour désinstaller version N-1 puis installer version N - besoin d’un fonctionnement simpleDonc création d’un wrapper : PunchPunch = Outil d’intégration d’assemblage des différents artefacts pour aboutir au déploiement - RPMs de config - valeurs de configuration - RPMS de composants (pris en charge par puppet)1 Ligne de commande localeScripts ad-hoc par ops pour gérer opérations pré/post déploiement (arrêt du srv, mise à jour vip, multi-serveurs)LIMITATION: on ne peut pas installer deux versions d’un même composant sur un même serveur (différent du mutiinstance qui lui est autorisé)
NCIRemplacer clef1 par searchFeederxxxDétail des appelsPUNCH ecrit en rubyEcriture de plugins Puppet pour intégrer les étapes d’install en une transaction(exemple)Plugin généré par Maven dans le RPM de ConfigRemplacer la partie install composant manifest file Puppet par une classe ruby
NCI
ADF
ADFUne relaqse plein de composants et plein de serversCe qui manque next step: blue/green ; déploiement continu ; api infrastructure
AdfMonitoringFaciliter la communication entre dev et ops Utilisation de méthodes agiles, intercommunication).Industrialiser le processus de développement Intégration continue, déploiement continu, etc ...).Industrialiser l’infrastructureEn utilisant des outils (Puppet, Chef, Vagrant , fabric, etc ...) pour l’industrialisation de l’infrastructure.
NCINotre vision: + subjectif Nous on pense que
NCINotre vision: + subjectif Nous on pense que
duo
DUOMettre une ligne support/Maintenance de la solution sous forme de communauté (devops)Fait les outils d’abord et la communauté s’est construite ensuite