Business Idea Development code Operations Product Development Checkin
Business Idea Development code $$$ Operations Product
Development Check-in Design Feature 1 Feature 2 Feature 3 Feature 4 Test Code Operations Feature 1 Feature 2 Feature 3 Feature 4 + Configuration Production
Dev. Ops Feature Design 1 Code + Config Test Deploy Check-in Automation
Simplicity Velocity Flexibility • Declarative management • Configuration data • Resource reusability • Automation releases • Push/Pull deployments • Integrated Azure Extension • Engine settings
Test Environment Prod Environment Data • New Theme • Test Data Execute Tests
Traditional Scripts (Imperative) Configuration (Declarative)
DSC Traditional Scripts Depende ncy Resol ution Int g n i en l nd t a H r rro E & R g eboot n i g Resilie ncy Log Rep eata ble Aut om atio n Technology Specific Configuration Intent DSC Engine Dependency Resolution Logging & Error Handling Reboot Resiliency Repeatable Automation Resources Technology Specific
Configuration Intent DSC Engine Dependency Resolution Logging & Error Handling Reboot Resiliency Repeatable Automation Resources Technology Specific Intent WHAT : Structural Configuration Stays same irrespective of the environment WHERE : Environmental Configuration Changes as system goes through different env. Dev Test Production Make It So HOW : DSC Resources Do the heavy lifting in an idempotent way
Configuration x. Remote. Files { … } x. Remote. Files Configuration x. Php. Provision { … } x. Php. Provision
Wave 0 Archive Environement File Group Log Package Registry Script Service User Windows. Feature Windows. Process Wave 2 Wave 1 x. ADDomain x. Computer x. DNSServer. Address x. ADDomain. Controller x. ADUser x. Dsc. Web. Service x. Cluster x. IPAddress x. Firewall x. VHD x. Smb. Share x. VMHyper. V x. Sql. Endpoint x. VMSwitch x. Sql. HAEndpoint x. Website x. Sql. HAGroup x. Sql. Server. Install x. Vhd. File x. Wait. For. Cluster x. Wait. For. Domain x. Wait. For. Sql. HAGroup Wave 3 x. Archive x. Database x. DBPackage x. Endpoint x. IEEsc x. Package x. RDRemote. App x. RDSession. Collection. Configuration x. RDSession. Deployment x. Remote. File x. Service x. UAC x. Web. Application x. Web. App. Pool x. Web. Config. Key. Value x. Web. Virtual. Directory x. Windows. Process
Wave 4 x. Azure. Affinity. Group x. Azure. Quick. VM x. Azure. Service x. Azure. Storage. Account x. Azure. Subscription x. Azure. VM x. Dhcp. Server. Option x. Dhcp. Server. Reservation x. Dhcp. Server. Scope x. Dns. Server. Secondary. Zone x. Dns. Server. Zone. Transfer x. Jea. Endpoint x. Jea. Tool. Kit x. Win. Event. Log Wave 5 x. Hotfix x. Iis. Module x. Iis. Wordpress. Site x. My. Sql. Database x. My. Sql. Grant x. My. Sql. Provision x. My. Sql. Server x. My. Sql. User x. Php x. Windows. Optional Feature x. Wordpress. Site Wave 6 Wave 7 x. Azure. Sql. Database. Serve x. Adcs. Certification. Authority r. Firewall. Rule x. Cred. SSP x. Chrome x. Dsc. Web. Enrollment x. Firefox x. Pending. Boot x. Group x. Remote. Desktop. Admin
Components & Phases Authoring Phase (May include imperative as well as declarative code) Power. Shell 3 rd party languages and tools Staging Phase - Fully declarative configuration representation using DMTF standard MOF instances - Configuration is calculated for all nodes Configuration Staging Area (Contains DSC data) “Make it So” Phase (Declarative configuration is reified through imperative providers. ) Local Configuration Store Parser and Dispatcher Resources When authoring in Power. Shell: • Declarative syntax extensions • Schema-driven Intellisense • Schema validation (early-binding) Resources implement changes: • Monotonic • Imperative • Idempotent
Push Authoring Phase (May include imperative as well as declarative code) Power. Shell 3 rd party languages and tools Staging Phase - Fully declarative configuration representation using DMTF standard MOF instances - Configuration is calculated for all nodes Configuration Staging Area (Contains DSC data) “Make it So” Phase (Declarative configuration is reified through imperative providers. ) Local Configuration Store Parser and Dispatcher Resources When authoring in Power. Shell: • Declarative syntax extensions • Schema-driven Intellisense • Schema validation (early-binding) Resources implement changes: • Monotonic • Imperative • Idempotent
Pull Authoring Phase (May include imperative as well as declarative code) Power. Shell Staging Phase - Fully declarative configuration representation using DMTF standard MOF instances - Configuration is calculated for all nodes Pull Server 3 rd party languages and tools (Contains DSC data and Modules) “Make it So” Phase (Declarative configuration is reified through imperative providers. ) Local Configuration Store Parser and Dispatcher Resources When authoring in Power. Shell: • Declarative syntax extensions • Schema-driven Intellisense • Schema validation (early-binding) Resources implement changes: • Monotonic • Imperative • Idempotent
DSC is the built-in configuration platform for Microsoft PS DSC Extension point
Azure • Manage Environment • VMs • Drives • Etc. • Json / xml DSC Azure Extension DSC • Manage Guest • Web Application • Operating system • Etc. • Power. Shell and MOF Continuous deployment tooling utilizing Azure and DSC Such as Visual Studio, Brewmaster, etc.
https: //www. aditicloud. com
Template Repo Step 1. Pull Template Step 2. Parse Template for Params Step 3. Validate and Combine Params + Template
Step 4. Provision Azure Resources by Deployment Group Affinity Group
Step 5. Bootstrap each VM with DSC, Remoting, etc. Affinity Group
Step 6. Pull Package from Git repo into each node Template Repo Affinity Group
Step 7. Dynamically generate DSC config and push to nodes Affinity Group
Step 8. Poll DSC operations and report progress Affinity Group
Heterogeneous DSC allows you to manage Linux and Windows configuration with common DSC infrastructure and syntax! Standards Resources DSC for Linux implemented the LCM (an OMI Provider) and Linux Resource Providers (Python) Set of “Built-In” Resource Providers for Linux: file, User, Group, Service, Script + more Download now Open-source CTP release at https: //github. com/MSFTOSSMgmt
Windows Management Framework (WMF) 4. 0 WMF 5. 0 previews Res. Kit: Online availability of “x” DSC resources
Simplicity Velocity Flexibility • Declarative management • Configuration data • Resource reusability • Automation releases • Push/Pull deployments • Integrated Azure Extension • Engine settings
http: //aka. ms/techeddevops http: //aka. ms/teched-eu http: //aka. ms/devopstl msdevops@microsoft. com
http: //technet. microsoft. com/library/dn 765472. aspx http: //technet. microsoft. com/en-us/library/hh 546785. aspx http: //www. microsoft. com/en-us/server-cloud/products/ windows-azure-pack http: //azure. microsoft. com/en-us/
http: //channel 9. msdn. com/Events/Tech. Ed www. microsoft. com/learning http: //microsoft. com/technet http: //developer. microsoft. com
- Slides: 57