your cmdb and powershell dsc: devops techniques mms minnesota 2014 nathan lasnoski @nlasnoski...

13
Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Upload: susan-harris

Post on 23-Dec-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

MMS Minnesota 2014

Your CMDB and PowerShell DSC: DevOps Techniques

Nathan Lasnoski@nlasnoskiConcurrency

Page 2: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Configuration Management v1

How it works•Manual tracking of configuration data•Gathered from tools or physical inventory• Lives in spreadsheet or light CMDB

What it does• Facilitates asset and inventory functions

MMS Minnesota 2014

Page 3: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Configuration Management v2

How it works• Automated tracking of configuration data• Gathered exclusively from tools• Lives in a CMDB

What it does• Automation against CMDB data• Facilitates asset and inventory functions• Informs change management

MMS Minnesota 2014

Page 4: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Configuration Management v3

How it works• Declarative configuration to targets• Automated tracking of configuration data• Deployed and gathered from tools• Defined in scripts and managed in source control / CMDB

What it does• Normalized configuration is declaratively deployed or pulled by targets• Automation against CMDB data for outliers or processes• Facilitates asset and inventory functions• Informs change management

MMS Minnesota 2014

Page 5: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

MMS Minnesota 2014

How to build Configuration Management v3

• Source Control (TFS, GIT, etc.)• Source Staging (Orchestrator)• Configuration Management Database (SCSM)• Configuration Repository (Orchestrator + SCSM)• Configuration Language (PowerShell)• Configuration Deployment Mechanism (PowerShell DSC)

Page 6: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

MMS Minnesota 2014

Declarative Configuration in PowerShell DSC

•Microsoft’s platform for configuration management•Declarative configuration is applied on push or pull•Multi-vendor (Microsoft, Linux, Network…)• Facilitates re-application of configuration

Page 7: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Components of PowerShell DSC

Authoring• Written in PowerShell• Stored in a source repository

Staging• Declarative configuration creates MOF files• Configuration is built for all nodes requiring MOF

Apply• Configuration is “pulled” or “pushed” to targets of MOFs• Each configuration is declarative and will overwrite previous settings

MMS Minnesota 2014

Page 8: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

DSC Configuration

Traditional Scripts (Imperative) Configuration (Declarative)

Page 9: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Why integrate with the CMDB?Configuration Transparency• Teams supporting servers need to know when configurations are changed• Facilitate understanding of which servers are running what configuration• Change should be managed to ensure quality of releases

Automation• When deploying a new server, a configuration must be selected• Service management is the perfect place to select that configuration

Ownership• Understanding of allocation of resources to services• Identification of configuration owners

MMS Minnesota 2014

Page 10: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

How does the integration work?Configuration Class• Stores the standard configurations for the organization• Ex: “Concurrency Web Server, Concurrency DB Server”

GUID• Configuration tracked as a related item to the server• Tracked on a per-server basis

SMA• Script Repository for Configurations• Contains one or more recent versions of the script from source control

Request Offering• Used to request a new server or deploy a configuration to an existing server• Can be combined with other automation activities within SMA

MMS Minnesota 2014

Page 11: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

MMS Minnesota 2014

Let’s do this! …on to the demo!

•Walkthrough of classes and framework

• Review of applied configuration and DSC

… deploying it yourself

Page 12: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

MMS Minnesota 2014

Next Steps and Questions…

• Check out our online walkthrough and queries… https://gallery.technet.microsoft.com/scriptcenter/Deploying-and-DSC-35e4a7echttp://www.concurrency.com/blog/populating-cmdb-dsc-configuration-items-using-sma

[email protected]•@nlasnoski

Page 13: Your CMDB and PowerShell DSC: DevOps Techniques MMS Minnesota 2014 Nathan Lasnoski @nlasnoski Concurrency

Session Title

EvaluationsPlease provide session feedback by clicking the Eval button in the scheduler app. One lucky winner will get a free ticket to the next MMS!

Visit all of our sponsors in the expo area and online!

Platinum Sponsors:

Gold Sponsors:

MMS Minnesota 2014