TIAD 2016 : Accenture Devops Platform dans Microsoft Azure
•Télécharger en tant que PPTX, PDF•
1 j'aime•1,895 vues
Talk @ TIAD, 04/10/2016, Paris by Pascal Saulière, Architecte Infrastructure Microsoft and Régis Allègre DevOps Lead Accenture.
#tiadparis
1 sur 27
Contenu connexe
TIAD 2016 : Accenture Devops Platform dans Microsoft Azure
1. TIAD 2016
Accenture DevOps Platform dans
Microsoft Azure
Pascal Sauliere
Architecte Infrastructure
Microsoft France
@psauliere
Regis Allegre
DevOps Lead France
Accenture
@HappyKing
4. Infrastructure agile
Penser l’infrastructure comme un développeur pense son code
Langages de scripts
Langages déclaratifs
Appliquer les méthodes des développeurs : gestion des sources, versions
Associer le dev et l’infra dans les dépôts de code
Grouper les tâches automatisées – Orchestrator, Azure Automation
6. Azure Resource Manager (ARM)
Groupes de ressources : frontière du cycle de vie d’une application
Ressources : tout ce que l’on peut trouver dans Azure – VM, Web app, base SQL Azure…
RBAC : groupes d’utilisateurs, rôles, permissions sur groupes de ressources
Tags : (clés, valeurs) sur ressources ou groupes de ressources
Policy : restrictions sur ressources
Templates : définition déploiement et configuration de vos application
Simplicité de l’administration – tags pour reporting, facturation, conformité, audit
Template déclaratif – qualité et simplicité
Idempotence – déploiements répétables et cohérents
Passage à l’échelle et parallélisme
12. What is ADOP?
Collection of pre-configured Open Source development tools
to mobilize software development projects in a fast, robust and
consistent way
Cloud-hosted development
environment integrated to
source code repository via
code review server
Autonomous build and
testing of code submissions
Continuous Integration
Quality gates enforced
using standardized tests
against re-usable
components and libraries
Continuous Delivery
Managed roll-out of new
features via A/B testing
Continuous Deployment
Cloud-based hosting and access to application services through Accenture Cloud Platform
Code Analysis
(Sonar and Black
Duck)
Integrated
Development
Environment
(Eclipse, X-code)
Source Code
Repository
(Git / Gerrit)
Continuous
Integration
(Jenkins)
Deploy
(Chef and Docker)
Test
(Selenium, Grid,
Cucumber)
Development
Source
Control
Code
Review
Build
Code
Quality
Deploy Testing
A/B
Test
Release
14. 3 flavours of ADOP
“M” : The managed multi-tenancy platform
“F” : Fleet, the managed single-tenancy platform
“B” : B…, on your own infrastructure and managed
by you
2 new sub-flavors upcoming
Community Edition: Full OSS
Enterprise Edition: Includes Atlassian
16. Component Overview
Three main components:
Core – the bundle of pre-
configured tools in ADOP/B
Cartridges
Platform Extensions
Platform Extensions
Provides the ability to extend the Core and add
new tools or extensions to existing tools
For example:
• Jenkins plugins
• Sonar plugins
• Tools (via Docker or EC2)
• …the list goes on
Cartridges
• Standardised approach of packaging and
sharing reusable software delivery assets
• Defines the Git repositories with sample code,
Jenkins jobs and pipelines that define a
reference implementation for a particular
technology
If it’s not in the Core and it could be used by multiple cartridges, it is probably a platform extension
17. Upstream Contributions
Projects are welcome to contribute plugins or platform
extensions:
Cartridge examples: FOSS Java, FOSS JavaScript, Drupal,
Oracle, Mule, SAP, etc.
Platform Extension examples: AWS, DockerSwarm, Ms ARM,
CucumberPlugin,
20. Objectif
Ajouter Azure comme option de déploiement
d’ADOP
Respecter les principes d’ADOP :
Déploiement automatisé
Shell scripts, Docker Machine, Docker Compose, template de déploiement
Open Source
Quelques jours de collaboration
21. Résultats
Méthode 1 : Script et Docker Machine
Modification du script quickstart.sh de ADOP
Méthode 2 : ARM Template
Template, fichier de paramètres, script, documentation
Méthode 3 : cluster Azure Container Service en
mode Docker Swarm
Expérimental, pas de modification de l’existant
Reste à faire : documentation et pull request
23. Méthode 2 : ARM Template
Un template JSON
VM Extensions :
DockerExtension – installe le moteur Docker
CustomScriptForLinux – exécute un script :
Installation de Docker Compose
Récupération de ADOP (git clone)
Déploiement de ADOP en local : ./adop compose init
Déploiement « en un clic »
..ou en deux ligne de commande :
27. Retrouvez-nous sur Twitter et autres
Pascal Sauliere
http://aka.ms/pascals
http://aka.ms/itcast
Twitter : @psauliere
Régis Allègre
Twitter : @HappyKing
Notes de l'éditeur
S
Get-AzureResourceGroupGalleryTemplate
https://github.com/Azure/azure-quickstart-templates
<template>.json - This is the main template file
<tempalte>.parameters.json - The parameters that can be passed to the template and while optional provides a way to prepopulate values that can be passed when creating an instance of the template
metadata.json - Data about the template used by Azure to enable its use and publication
README.md - Information about the template and often a button that deploys the template to Azure by loading the template into the template editor in the Azure portal
http://windowsitpro.com/azure/how-do-i-use-template-create-vms-azure-iaas-v2-arm
P
Taken from https://adlm.accenture.com/wiki/display/DOT/Architecture - is this out of date?