SlideShare uma empresa Scribd logo
1 de 30
Michel Hubert – MVP Azure
Idriss Selhoum
Infrastructure as a Code
Sommaire
• Infra-as-code, kesako ?
• PowerShell DSC
• Azure Resource Manager
• PowerShell v5 : OneGet et JEA
• Q&A
Kesako ?
Infrastructure as Code
Infrastructure as Code
• Automatisation des procesus
▪ Provisioning d’infrastructure (Compute, Network and Storage)
▪ Installation et configuration
• Versioning des scripts de provisioning et d’automatisation
▪ Evolution des infrastructures
▪ Réduire les erreurs liées aux interventions humaines
• Réduire le temps de mise à disposition des plateformes 
DevOps
PowerShell DSC
6
Desired State Configuration (Intro)
Operating System
Middleware
Applications & Services
Virtualization
Application
Deployment
Desired State
Configuration
7
Windows OS
PowerShell v4
Local Configuration Manager WINRM
DSC Resources
DSC
Desired State Configuration (Composants)
8
IIS
IIS
SQL
APP
Web Server
Master Deployment
Push
IIS
IIS
SQL
APP
Server
Master Deployment
Pull
Release Manage Deployment Agent
WinRM (HTTP & HTTPS)
Desired State Configuration
9
Authoring Managed Object Framework Apply configuration
1- Vérifier que les ressources DSC
sont installées
2- Vérifier les pré-requis sur la
machine (EnableRemoting et
WinRM)
2- Création de script DSC (fichier
powershell .ps1)
3 - Création du fichier de
configuration (.psd1)
4- Lancement de la configuration
5 - Génération du fichier .MOF 6 - Exécution de la configuration
souhaitée par le LCM (Start-
DSCConfiguration)
Desired State Configuration (Etapes)
10
Authoring
Managed Object Framework
Apply configuration
demo
12
Ressources
• Les modules PowerShell utilisées par le LCM pour appliquer une
configuration
• Get-TargetResource
• Set-TargetResource
• Test-TargetResource
• Microsoft fournit des modules (ex: xWebAdmininstation, xWebSite)
• Les modules DSC sont extensibles
demo
Infra-as-a-code pour Azure
Azure Resource Manager
Resource Group
Resource Group est une unité
de gestion
 Lifecycle: déploiement, mise à jour,
suppression, statut
 Identity: devient une partie de l’identité des
ressources contenues
 Grouping: Mesures, factration, quota:
appliqué à un groupe
 Access Control: Support des permissions
RBAC
RESOURCE GROUP
Cycle de vie
Question:
Dois-je mettre mes ressources dans un
seul groupe ou plusieurs?
Indice:
Ont-ils le même cycle de vie et le même
niveau de management ?
Réponse:
A vous de decider .
Templates
Azure Templates permettent de :
• Assurer l’idempotence
• Simplifier l’Orchestration des ressources
• Simplifier le Roll-back
• Fournir une configuration Cross-Ressource
Azure Templates sont :
• Des fichiers sources, checked-in
• Décrivent les ressources et leurs dépendances
(VMs, WebSites, DBs) e les connexions (config,
LB sets)
• Paramétrables (input/output)
SQL - A Website Virtual
Machines
SQL-A
Website
[SQL CONFIG] VM (2x)
DEPENDS ON SQLDEPENDS ON SQL
SQL Config
Resource Tag
• Assigner des notes aux ressources
• Tag = Clé / Valeur
• Exemple :
▪ Environnement = {Dev, Staging, Prod}
▪ Owner = « … »
▪ Cost Center = 12345
Role Based Access
demo
Azure Resource Manager
OneGet et JEA
PowerShell v5 - preview
OneGet
• Le chainon manquant ? Un compagnon indispensable à
PowerShell DSC
• OneGet est un jeu de comdlets powershell
• OnetGet permet d’installer des packages logiciels à partir
de bibliothèques internes ou externes (ex : Chocolatey)
• OneGet efficace pour se constituer un « Master »
OneGet
• Import-Module –Name OneGet
• Get-Command –Module OneGet
• register-packagesource -Name chocolatey -
Provider PSModule -Trusted -Location
http://chocolatey.org/api/v2/ -Verbose
• Find-Package -Name paint.net,
notepadplusplus |
Install-Package -Force
demo
PowerShell OneGet
PS> Enter-PSSession Server1
FAIL! – Talk to your supervisor for assistance
“Jeffrey I need to be admin on Server1 to restart SQL”
“No Eddie.
Just connect to the ‘Maintenance’ EndPoint”
PS> Enter-PSSession Server1 –Config Maintenance
Server1> Restart-Service MSSQLSERVER

Server1
Server1> Steal-Secrets
Error: You are not authorized to Steal-Secrets
JEA – Just Enough Administration
• La plus grande faille de sécurité : les administrateurs !
• Objectif : Réduire les droits admin
▪ Réduire le nb de personnes avec les droits Admin
▪ Réduire le périmètre des privileges admin
▪ Fournir au plus juste des besoins des privileges admin
• Basé sur PowerShell DSC
▪ JeaToolkit
– Définir les jeux de commandes supportés
▪ JeaEndPoint
– Point de Management où les utilisateurs sont autorisés
▪ JeaEndPointAccount
– Compte local avec les privileges admin
Exemple
JeaToolkit SQLMaintenace
{ Name = ‘SQLMaintenance’
CommandSpecs = @'
Module,Name,Parameter,ValidateSet,ValidatePattern
SQL,GET-*
,Get-Process
,Get-Service
,Stop-Process,Name,calc;notepad
,Restart-Service,Name,,^SQL
'@
}
demo
PowerShell JEA
Merci pour votre attention
Q & A
© 2012 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marques déposées ou des marques commerciales de Microsoft aux États-Unis et/ou dans d'autres pays.
Les informations contenues dans ce document sont fournies uniquement à titre indicatif. Elles représentent l'opinion actuelle de Microsoft Corporation sur les points cités à la date de cette présentation. Microsoft s'adapte aux conditions fluctuantes du marché et ce document ne doit
pas être interprété comme un engagement de la part de Microsoft ; de plus, Microsoft ne peut pas garantir la véracité de toute information présentée après la date de la présentation. MICROSOFT EXCLUT TOUTE GARANTIE, EXPRESSE, IMPLICITE OU STATUTAIRE, EN CE QUI
CONCERNE CETTE PRÉSENTATION.

Mais conteúdo relacionado

Mais procurados

Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Microsoft Technet France
 
SharePoint et SQL Server sur Windows Azure
SharePoint et SQL Server sur Windows AzureSharePoint et SQL Server sur Windows Azure
SharePoint et SQL Server sur Windows Azure
Microsoft Technet France
 
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
Christophe Laporte
 
Active Directory Sur Windows 2008 R2
Active  Directory Sur  Windows 2008  R2Active  Directory Sur  Windows 2008  R2
Active Directory Sur Windows 2008 R2
SIMOES AUGUSTO
 

Mais procurados (20)

SQL Server et la sécurité
SQL Server et la sécuritéSQL Server et la sécurité
SQL Server et la sécurité
 
Comment intégrer une application ASP.NET dans Windows Azure
Comment intégrer une application ASP.NET dans Windows AzureComment intégrer une application ASP.NET dans Windows Azure
Comment intégrer une application ASP.NET dans Windows Azure
 
Plan de Reprise d'Activité avec Azure Site Recovery
Plan de Reprise d'Activité avec Azure Site RecoveryPlan de Reprise d'Activité avec Azure Site Recovery
Plan de Reprise d'Activité avec Azure Site Recovery
 
Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)Alphorm.com : Formation Active directory 2008 R2 (70-640)
Alphorm.com : Formation Active directory 2008 R2 (70-640)
 
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
Windows Azure Active Directory, SSO étendu et services d’annuaire pour les ap...
 
Bonnes pratiques pour la gestion des opérations de sécurité AWS
Bonnes pratiques pour la gestion des opérations de sécurité AWSBonnes pratiques pour la gestion des opérations de sécurité AWS
Bonnes pratiques pour la gestion des opérations de sécurité AWS
 
SharePoint et SQL Server sur Windows Azure
SharePoint et SQL Server sur Windows AzureSharePoint et SQL Server sur Windows Azure
SharePoint et SQL Server sur Windows Azure
 
Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)
 
Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012Active Directory : nouveautés Windows Server 2012
Active Directory : nouveautés Windows Server 2012
 
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
Tout sur les solutions de haute disponibilité et disaster recovery de sql ser...
 
[Dev/Testday] Dev testazure infra-arm - Manon Pernin
[Dev/Testday] Dev testazure infra-arm - Manon Pernin[Dev/Testday] Dev testazure infra-arm - Manon Pernin
[Dev/Testday] Dev testazure infra-arm - Manon Pernin
 
Sql saturday 323 paris 2014 azure migration iaas et paas
Sql saturday 323 paris 2014   azure migration iaas et paasSql saturday 323 paris 2014   azure migration iaas et paas
Sql saturday 323 paris 2014 azure migration iaas et paas
 
[Tuto] Big datatrack : Web Tracker
[Tuto] Big datatrack : Web Tracker[Tuto] Big datatrack : Web Tracker
[Tuto] Big datatrack : Web Tracker
 
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
Migration vers Active Directory 2012 et 2012 R2 : les meilleures pratiques
 
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
Techdays 2009 - Active Directory Domain Services : bonnes pratiques et princi...
 
Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2Les nouveautés stockage dans Windows Server 2012 R2
Les nouveautés stockage dans Windows Server 2012 R2
 
Active Directory Sur Windows 2008 R2
Active  Directory Sur  Windows 2008  R2Active  Directory Sur  Windows 2008  R2
Active Directory Sur Windows 2008 R2
 
Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...Windows Server 2012, quelles évolutions pour les services de stockage et de c...
Windows Server 2012, quelles évolutions pour les services de stockage et de c...
 
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
 
Pgbadger
PgbadgerPgbadger
Pgbadger
 

Destaque

CAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemplesCAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemples
Clément OUDOT
 
2014 NAC candidate orientation presentation
2014 NAC candidate orientation presentation 2014 NAC candidate orientation presentation
2014 NAC candidate orientation presentation
MedCouncilCan
 
Network Access Control as a Network Security Solution
Network Access Control as a Network Security SolutionNetwork Access Control as a Network Security Solution
Network Access Control as a Network Security Solution
Conor Ryan
 
Le BPM facile avec Bonita Open Solution
Le BPM facile avec Bonita Open SolutionLe BPM facile avec Bonita Open Solution
Le BPM facile avec Bonita Open Solution
Bonitasoft
 
Atelier9 gestion des_identites_et_sso
Atelier9 gestion des_identites_et_ssoAtelier9 gestion des_identites_et_sso
Atelier9 gestion des_identites_et_sso
Said Benadir
 
Architecture of a Modern Web App
Architecture of a Modern Web AppArchitecture of a Modern Web App
Architecture of a Modern Web App
scothis
 

Destaque (20)

PACE-IT: Network Access Control
PACE-IT: Network Access ControlPACE-IT: Network Access Control
PACE-IT: Network Access Control
 
ASFWS 2011 : CAS, OpenID, SAML concepts, différences et exemples
ASFWS 2011 : CAS, OpenID, SAML  concepts, différences et exemplesASFWS 2011 : CAS, OpenID, SAML  concepts, différences et exemples
ASFWS 2011 : CAS, OpenID, SAML concepts, différences et exemples
 
CAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemplesCAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemples
 
2014 NAC candidate orientation presentation
2014 NAC candidate orientation presentation 2014 NAC candidate orientation presentation
2014 NAC candidate orientation presentation
 
Clusif 2014 scada panorama des referentiels sécurité système information ind...
Clusif 2014  scada panorama des referentiels sécurité système information ind...Clusif 2014  scada panorama des referentiels sécurité système information ind...
Clusif 2014 scada panorama des referentiels sécurité système information ind...
 
Network Access Control as a Network Security Solution
Network Access Control as a Network Security SolutionNetwork Access Control as a Network Security Solution
Network Access Control as a Network Security Solution
 
Physical/Network Access Control
Physical/Network Access ControlPhysical/Network Access Control
Physical/Network Access Control
 
Clusif 2014 Annexes référentiels de sécurité système information industriel /...
Clusif 2014 Annexes référentiels de sécurité système information industriel /...Clusif 2014 Annexes référentiels de sécurité système information industriel /...
Clusif 2014 Annexes référentiels de sécurité système information industriel /...
 
BPM & Workflow
BPM & WorkflowBPM & Workflow
BPM & Workflow
 
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemplesCAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
 
Génération d'applications web avec Bonita
Génération d'applications web avec BonitaGénération d'applications web avec Bonita
Génération d'applications web avec Bonita
 
Introduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling NotationIntroduction à BPMN 2.0 - Business Process Modeling Notation
Introduction à BPMN 2.0 - Business Process Modeling Notation
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 
AWS Deployment Best Practices
AWS Deployment Best PracticesAWS Deployment Best Practices
AWS Deployment Best Practices
 
Le BPM facile avec Bonita Open Solution
Le BPM facile avec Bonita Open SolutionLe BPM facile avec Bonita Open Solution
Le BPM facile avec Bonita Open Solution
 
LES SYSTEMES DE GESTION DES IDENTITES ET DES ACCES : MISE EN ŒUVRE ET APPORT ...
LES SYSTEMES DE GESTION DES IDENTITES ET DES ACCES : MISE EN ŒUVRE ET APPORT ...LES SYSTEMES DE GESTION DES IDENTITES ET DES ACCES : MISE EN ŒUVRE ET APPORT ...
LES SYSTEMES DE GESTION DES IDENTITES ET DES ACCES : MISE EN ŒUVRE ET APPORT ...
 
Le processus de gestion des habilitations
Le processus de gestion des habilitationsLe processus de gestion des habilitations
Le processus de gestion des habilitations
 
Atelier9 gestion des_identites_et_sso
Atelier9 gestion des_identites_et_ssoAtelier9 gestion des_identites_et_sso
Atelier9 gestion des_identites_et_sso
 
Best Practices in PHP Application Deployment
Best Practices in PHP Application DeploymentBest Practices in PHP Application Deployment
Best Practices in PHP Application Deployment
 
Architecture of a Modern Web App
Architecture of a Modern Web AppArchitecture of a Modern Web App
Architecture of a Modern Web App
 

Semelhante a DevOps Day - Infrastructure As A Code

Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)
Microsoft
 
Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)
Microsoft Technet France
 

Semelhante a DevOps Day - Infrastructure As A Code (20)

Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmedia
 
myLittleAdmin and myLittleBackup Presentation
myLittleAdmin and myLittleBackup PresentationmyLittleAdmin and myLittleBackup Presentation
myLittleAdmin and myLittleBackup Presentation
 
Techdays Par219
Techdays Par219Techdays Par219
Techdays Par219
 
Azure SQL Database, approche et retours d'expérience
Azure SQL Database, approche et retours d'expérienceAzure SQL Database, approche et retours d'expérience
Azure SQL Database, approche et retours d'expérience
 
Azure SQL Database, approche et retours d'expérience
Azure SQL Database, approche et retours d'expérienceAzure SQL Database, approche et retours d'expérience
Azure SQL Database, approche et retours d'expérience
 
2018-10-17 J1 4B - Présentation METSYS débuter avec PowerShell DSC- Thomas Il...
2018-10-17 J1 4B - Présentation METSYS débuter avec PowerShell DSC- Thomas Il...2018-10-17 J1 4B - Présentation METSYS débuter avec PowerShell DSC- Thomas Il...
2018-10-17 J1 4B - Présentation METSYS débuter avec PowerShell DSC- Thomas Il...
 
DevCon 2 ; Infra as Code avec Azure
DevCon 2  ; Infra as Code avec AzureDevCon 2  ; Infra as Code avec Azure
DevCon 2 ; Infra as Code avec Azure
 
Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
 
La sécurité avec SQL Server 2012
La sécurité avec SQL Server 2012La sécurité avec SQL Server 2012
La sécurité avec SQL Server 2012
 
Stockage et Cloud [#CloudAccelerate 13/06/2014 @ IBM CC Paris]
Stockage et Cloud [#CloudAccelerate 13/06/2014 @ IBM CC Paris]Stockage et Cloud [#CloudAccelerate 13/06/2014 @ IBM CC Paris]
Stockage et Cloud [#CloudAccelerate 13/06/2014 @ IBM CC Paris]
 
Infrastructure As Code
Infrastructure As CodeInfrastructure As Code
Infrastructure As Code
 
Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008Les 11 bonnes raisons de migrer vers Windows Server 2008
Les 11 bonnes raisons de migrer vers Windows Server 2008
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)
 
Ce que tout dba doit savoir sur la configuration et l'optimisation de SQL Ser...
Ce que tout dba doit savoir sur la configuration et l'optimisation de SQL Ser...Ce que tout dba doit savoir sur la configuration et l'optimisation de SQL Ser...
Ce que tout dba doit savoir sur la configuration et l'optimisation de SQL Ser...
 
Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)
 
Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)Construire des applications supportant la montée en charge avec SQL Azure (300)
Construire des applications supportant la montée en charge avec SQL Azure (300)
 
Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?
 
Azure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides KeynoteAzure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides Keynote
 
Re build Nantes 2013 SQL Server monitoring
Re build Nantes 2013   SQL Server monitoringRe build Nantes 2013   SQL Server monitoring
Re build Nantes 2013 SQL Server monitoring
 
22462A_01.pptx
22462A_01.pptx22462A_01.pptx
22462A_01.pptx
 

Mais de Cellenza

Mutualisation des développements avec VS2012
Mutualisation des développements avec VS2012Mutualisation des développements avec VS2012
Mutualisation des développements avec VS2012
Cellenza
 
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
Cellenza
 

Mais de Cellenza (20)

Global AI Night - Azure ML visual interface
Global AI Night - Azure ML visual interfaceGlobal AI Night - Azure ML visual interface
Global AI Night - Azure ML visual interface
 
Soirée de lancement Visual Studio - .Net Core 3 et ASP.Net Core 3
Soirée de lancement Visual Studio - .Net Core 3 et ASP.Net Core 3Soirée de lancement Visual Studio - .Net Core 3 et ASP.Net Core 3
Soirée de lancement Visual Studio - .Net Core 3 et ASP.Net Core 3
 
Soirée de lancement Visual Studio - VS for Mac & Xamarin
Soirée de lancement Visual Studio - VS for Mac & XamarinSoirée de lancement Visual Studio - VS for Mac & Xamarin
Soirée de lancement Visual Studio - VS for Mac & Xamarin
 
Soirée de lancement Visual Studio - Live Share
Soirée de lancement Visual Studio - Live ShareSoirée de lancement Visual Studio - Live Share
Soirée de lancement Visual Studio - Live Share
 
Soirée de lancement Visual Studio - Le développement sous VS19
Soirée de lancement Visual Studio - Le développement sous VS19Soirée de lancement Visual Studio - Le développement sous VS19
Soirée de lancement Visual Studio - Le développement sous VS19
 
Soirée de lancement Visual Studio - Introduction
Soirée de lancement Visual Studio - IntroductionSoirée de lancement Visual Studio - Introduction
Soirée de lancement Visual Studio - Introduction
 
Qu'est ce qu'une api en 2019 ?
Qu'est ce qu'une api en 2019 ? Qu'est ce qu'une api en 2019 ?
Qu'est ce qu'une api en 2019 ?
 
Gouvernance Azure - Mettre en place sa politique de Gouvernance
Gouvernance Azure - Mettre en place sa politique de GouvernanceGouvernance Azure - Mettre en place sa politique de Gouvernance
Gouvernance Azure - Mettre en place sa politique de Gouvernance
 
Gouvernance Azure - Comprendre la facture Azure
Gouvernance Azure - Comprendre la facture AzureGouvernance Azure - Comprendre la facture Azure
Gouvernance Azure - Comprendre la facture Azure
 
Gouvernance Azure - La charte de nommage
Gouvernance Azure - La charte de nommageGouvernance Azure - La charte de nommage
Gouvernance Azure - La charte de nommage
 
Continuous monitoring : Dev to Ops
Continuous monitoring : Dev to OpsContinuous monitoring : Dev to Ops
Continuous monitoring : Dev to Ops
 
MobileDay - Parcours 2 Crossplateform
MobileDay - Parcours 2 CrossplateformMobileDay - Parcours 2 Crossplateform
MobileDay - Parcours 2 Crossplateform
 
MobileDay - Session 3 La Mobilité selon Microsoft
MobileDay - Session 3 La Mobilité selon MicrosoftMobileDay - Session 3 La Mobilité selon Microsoft
MobileDay - Session 3 La Mobilité selon Microsoft
 
MobileDay - Parcours 1 Hybride (Cordova)
MobileDay - Parcours 1 Hybride  (Cordova)MobileDay - Parcours 1 Hybride  (Cordova)
MobileDay - Parcours 1 Hybride (Cordova)
 
MobileDay - Parcours 3 : Natif (Universal Apps)
MobileDay - Parcours 3 : Natif (Universal Apps)MobileDay - Parcours 3 : Natif (Universal Apps)
MobileDay - Parcours 3 : Natif (Universal Apps)
 
MobileDay - Session 2 REX IDEX
MobileDay - Session 2 REX IDEXMobileDay - Session 2 REX IDEX
MobileDay - Session 2 REX IDEX
 
Biztalk summit - IOT
Biztalk summit - IOTBiztalk summit - IOT
Biztalk summit - IOT
 
DevOps Day - Continuous Delivery
DevOps Day - Continuous DeliveryDevOps Day - Continuous Delivery
DevOps Day - Continuous Delivery
 
Mutualisation des développements avec VS2012
Mutualisation des développements avec VS2012Mutualisation des développements avec VS2012
Mutualisation des développements avec VS2012
 
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
Applications "legacy": testez-les avec Visual Studio 2012 sans modifier leurs...
 

DevOps Day - Infrastructure As A Code

  • 1. Michel Hubert – MVP Azure Idriss Selhoum Infrastructure as a Code
  • 2. Sommaire • Infra-as-code, kesako ? • PowerShell DSC • Azure Resource Manager • PowerShell v5 : OneGet et JEA • Q&A
  • 4. Infrastructure as Code • Automatisation des procesus ▪ Provisioning d’infrastructure (Compute, Network and Storage) ▪ Installation et configuration • Versioning des scripts de provisioning et d’automatisation ▪ Evolution des infrastructures ▪ Réduire les erreurs liées aux interventions humaines • Réduire le temps de mise à disposition des plateformes  DevOps
  • 6. 6 Desired State Configuration (Intro) Operating System Middleware Applications & Services Virtualization Application Deployment Desired State Configuration
  • 7. 7 Windows OS PowerShell v4 Local Configuration Manager WINRM DSC Resources DSC Desired State Configuration (Composants)
  • 8. 8 IIS IIS SQL APP Web Server Master Deployment Push IIS IIS SQL APP Server Master Deployment Pull Release Manage Deployment Agent WinRM (HTTP & HTTPS) Desired State Configuration
  • 9. 9 Authoring Managed Object Framework Apply configuration 1- Vérifier que les ressources DSC sont installées 2- Vérifier les pré-requis sur la machine (EnableRemoting et WinRM) 2- Création de script DSC (fichier powershell .ps1) 3 - Création du fichier de configuration (.psd1) 4- Lancement de la configuration 5 - Génération du fichier .MOF 6 - Exécution de la configuration souhaitée par le LCM (Start- DSCConfiguration) Desired State Configuration (Etapes)
  • 11. demo
  • 12. 12 Ressources • Les modules PowerShell utilisées par le LCM pour appliquer une configuration • Get-TargetResource • Set-TargetResource • Test-TargetResource • Microsoft fournit des modules (ex: xWebAdmininstation, xWebSite) • Les modules DSC sont extensibles
  • 13. demo
  • 15. Resource Group Resource Group est une unité de gestion  Lifecycle: déploiement, mise à jour, suppression, statut  Identity: devient une partie de l’identité des ressources contenues  Grouping: Mesures, factration, quota: appliqué à un groupe  Access Control: Support des permissions RBAC RESOURCE GROUP
  • 16. Cycle de vie Question: Dois-je mettre mes ressources dans un seul groupe ou plusieurs? Indice: Ont-ils le même cycle de vie et le même niveau de management ? Réponse: A vous de decider .
  • 17. Templates Azure Templates permettent de : • Assurer l’idempotence • Simplifier l’Orchestration des ressources • Simplifier le Roll-back • Fournir une configuration Cross-Ressource Azure Templates sont : • Des fichiers sources, checked-in • Décrivent les ressources et leurs dépendances (VMs, WebSites, DBs) e les connexions (config, LB sets) • Paramétrables (input/output) SQL - A Website Virtual Machines SQL-A Website [SQL CONFIG] VM (2x) DEPENDS ON SQLDEPENDS ON SQL SQL Config
  • 18. Resource Tag • Assigner des notes aux ressources • Tag = Clé / Valeur • Exemple : ▪ Environnement = {Dev, Staging, Prod} ▪ Owner = « … » ▪ Cost Center = 12345
  • 21. OneGet et JEA PowerShell v5 - preview
  • 22. OneGet • Le chainon manquant ? Un compagnon indispensable à PowerShell DSC • OneGet est un jeu de comdlets powershell • OnetGet permet d’installer des packages logiciels à partir de bibliothèques internes ou externes (ex : Chocolatey) • OneGet efficace pour se constituer un « Master »
  • 23. OneGet • Import-Module –Name OneGet • Get-Command –Module OneGet • register-packagesource -Name chocolatey - Provider PSModule -Trusted -Location http://chocolatey.org/api/v2/ -Verbose • Find-Package -Name paint.net, notepadplusplus | Install-Package -Force
  • 25. PS> Enter-PSSession Server1 FAIL! – Talk to your supervisor for assistance “Jeffrey I need to be admin on Server1 to restart SQL” “No Eddie. Just connect to the ‘Maintenance’ EndPoint” PS> Enter-PSSession Server1 –Config Maintenance Server1> Restart-Service MSSQLSERVER  Server1 Server1> Steal-Secrets Error: You are not authorized to Steal-Secrets
  • 26. JEA – Just Enough Administration • La plus grande faille de sécurité : les administrateurs ! • Objectif : Réduire les droits admin ▪ Réduire le nb de personnes avec les droits Admin ▪ Réduire le périmètre des privileges admin ▪ Fournir au plus juste des besoins des privileges admin • Basé sur PowerShell DSC ▪ JeaToolkit – Définir les jeux de commandes supportés ▪ JeaEndPoint – Point de Management où les utilisateurs sont autorisés ▪ JeaEndPointAccount – Compte local avec les privileges admin
  • 27. Exemple JeaToolkit SQLMaintenace { Name = ‘SQLMaintenance’ CommandSpecs = @' Module,Name,Parameter,ValidateSet,ValidatePattern SQL,GET-* ,Get-Process ,Get-Service ,Stop-Process,Name,calc;notepad ,Restart-Service,Name,,^SQL '@ }
  • 29. Merci pour votre attention Q & A
  • 30. © 2012 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marques déposées ou des marques commerciales de Microsoft aux États-Unis et/ou dans d'autres pays. Les informations contenues dans ce document sont fournies uniquement à titre indicatif. Elles représentent l'opinion actuelle de Microsoft Corporation sur les points cités à la date de cette présentation. Microsoft s'adapte aux conditions fluctuantes du marché et ce document ne doit pas être interprété comme un engagement de la part de Microsoft ; de plus, Microsoft ne peut pas garantir la véracité de toute information présentée après la date de la présentation. MICROSOFT EXCLUT TOUTE GARANTIE, EXPRESSE, IMPLICITE OU STATUTAIRE, EN CE QUI CONCERNE CETTE PRÉSENTATION.