SlideShare a Scribd company logo
Puppet Application
Orchestration with Windows
Ethan Brown, Principal Engineer, Puppet
Iristyle
ethanjbrown
Puppet Application Orchestration with Windows
Core Agent / Types and Providers
Ecosystem Integrations – PS, DSC
Azure Extensions and Images
Puppet Application Orchestration with Windows
Agenda
(Really) Brief v1 Recap
2016.4 Orchestration Enhancements
Code Manager
Concept Application
Demo
3Puppet Application Orchestration with Windows
Orchestration v1 Recap
Initial 2015.3 Release
4
Orchestration v1 Recap
Language Additions Services / Tooling
Framework for describing applications
Tools for applying ordered configuration spanning nodes
5Puppet Application Orchestration with Windows
2016.4 Enhancements
It’s All About Control
6
2016.4 New Features
Direct Puppet PE Client Tools
OSX + Windows
Arbitrary Nodes
(PQL Support)
Manage Puppet without the PE console
Expressly Dictate Change
7Puppet Application Orchestration with Windows
Code Manager
Managing and Deploying Environments
8
Conceptual Code Promotion Workflow
Commit Code
Branch Per
Environment
Deploy / Sync Code Enforce Code
Deterministically
Or
Eventually
9Puppet Application Orchestration with Windows
A Bit of Advice
Let Code Manager manage code
10Puppet Application Orchestration with Windows
Puppetfile
Module dependencies
11
Let’s Talk About Apps
Yes, it’s an ASP.NET MVC app running under IIS.
Please bear with me.
12
Pushing the Envelope
8 VMS running under Vagrant 1.8.1 / VirtualBox 5.0.x on a 16GB MBP
Oscar plugin for managing PE installs
https://github.com/Iristyle/puppetconf2016
13Puppet Application Orchestration with Windows
Prep The 2016.4.0 Master
Enable Code
Manager
code_manager_auto_configure
Create RBAC user
rbac-api/v1/users
Point Code Manager
To Internal Git Repo
master::r10k_remote
Pointed to HTTP repo
Vagrant Setup
14Puppet Application Orchestration with Windows
Prep The Release Binaries
NuGet Packages
App asset packaging
format, parameterized
for Choco
ASP.NET MVC App
Typical MVC app built
with Visual Studio 15
Chocolatey Server
“Simple Server”
deployed with Puppet
Build Server
Not in demo, but
typically assets
produced by Jenkins /
TFS / TeamCity
A simulated release pipeline
15Puppet Application Orchestration with Windows
Choco Package Install Script
16Puppet Application Orchestration with Windows
Windows 10 Server
Generate token
Install PE tools
Config PE tools
puppet-access CLI
Host Control Repo Choco push
Stage app 0.0.1
Deploy Code
Puppet-code CLI
Standalone node not under Puppet control
17Puppet Application Orchestration with Windows
Puppet Job Run
No applications defined
Nodeset specified with –nodes
5 nodes updated over 2.5 minutes
18
Clustered Blue Green Deployment
19Puppet Application Orchestration with Windows
v1
v2
LB
Live Demo
The Main Event
20
Additional Resources
Orchestration Workflow Docs - https://docs.puppet.com/pe/latest/
app_orchestration_workflow.html
Wordpress App Demo - https://github.com/puppetlabs/puppetlabs-wordpress_app
App Modeling Module - https://forge.puppet.com/puppetlabs/app_modeling
Puppet Control Repo - https://github.com/puppetlabs/control-repo
RG Bank Demo – Docker + Orchestration -
https://github.com/puppetlabs/puppetlabs-rgbank
21Puppet Application Orchestration with Windows
Thanks!
(Special thanks to Charlie and Alex!)
22
PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet

More Related Content

PDF
PuppetConf 2016: Getting to the Latest Puppet – Nate McCurdy & Elizabeth Witt...
PDF
PuppetConf 2016: Docker, Mesos, Kubernetes and...Puppet? Don't Panic! – Deep...
PDF
PuppetConf 2016: Building Nano Server Images with Puppet and DSC – Michael Sm...
PDF
PuppetConf 2016: Puppet 4.x: The Low WAT-tage Edition – Nick Fagerlund, Puppet
PPTX
Plone deployment made easy
PDF
Capistrano deploy Magento project in an efficient way
PDF
Puppet evolutions
PPT
Python virtualenv & pip in 90 minutes
PuppetConf 2016: Getting to the Latest Puppet – Nate McCurdy & Elizabeth Witt...
PuppetConf 2016: Docker, Mesos, Kubernetes and...Puppet? Don't Panic! – Deep...
PuppetConf 2016: Building Nano Server Images with Puppet and DSC – Michael Sm...
PuppetConf 2016: Puppet 4.x: The Low WAT-tage Edition – Nick Fagerlund, Puppet
Plone deployment made easy
Capistrano deploy Magento project in an efficient way
Puppet evolutions
Python virtualenv & pip in 90 minutes

What's hot (20)

PDF
Building kubectl plugins with Quarkus | DevNation Tech Talk
PPTX
Zero to Continuous Delivery on Google Cloud
PDF
Gradle in 45min
PDF
Managing dependencies with gradle
PDF
Drone CI/CD 自動化測試及部署
PDF
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
PDF
Testing - Selenium? Rich-Clients? Containers?
PDF
Security Testing Using Infrastructure-As-Code
PDF
"How to Use Bazel to Manage Monorepos: The Grammarly Front-End Team’s Experie...
PDF
Ansible 2.2
PPTX
Introduction to node.js By Ahmed Assaf
ODP
Aug penguin16
PDF
Antons Kranga Building Agile Infrastructures
PDF
Gradle Introduction
PDF
Bgoug 2019.11 test your pl sql - not your patience
PPTX
OpenDaylight Developer Experience 2.0
PDF
Cool JVM Tools to Help You Test
PDF
OOP2017: Containerized End-2-End Testing – automate it!
PDF
jbang: Unleash the power of Java for shell scripting
PDF
Gradle build tool that rocks with DSL JavaOne India 4th May 2012
Building kubectl plugins with Quarkus | DevNation Tech Talk
Zero to Continuous Delivery on Google Cloud
Gradle in 45min
Managing dependencies with gradle
Drone CI/CD 自動化測試及部署
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...
Testing - Selenium? Rich-Clients? Containers?
Security Testing Using Infrastructure-As-Code
"How to Use Bazel to Manage Monorepos: The Grammarly Front-End Team’s Experie...
Ansible 2.2
Introduction to node.js By Ahmed Assaf
Aug penguin16
Antons Kranga Building Agile Infrastructures
Gradle Introduction
Bgoug 2019.11 test your pl sql - not your patience
OpenDaylight Developer Experience 2.0
Cool JVM Tools to Help You Test
OOP2017: Containerized End-2-End Testing – automate it!
jbang: Unleash the power of Java for shell scripting
Gradle build tool that rocks with DSL JavaOne India 4th May 2012
Ad

Similar to PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet (20)

PPTX
What's New in Puppet Enterprise 2015.3 (APAC)
PDF
Dep003 puppet enterprise_と_power_shell_dsc_の連携に
PPTX
What's New in Puppet Enterprise 2015.3
PPTX
Deliver on DevOps with Puppet Application Orchestration Webinar 11/19/15
PDF
PuppetConf track overview: Windows
PPTX
What's New in Puppet Enterprise 2015.3
PPTX
DevOps Workflows in the Windows Ecosystem - 21 April 2020
PPTX
DevOps Workflows in the Windows Ecosystem - April 21
PPTX
Webinar - Windows Application Management with Puppet
PPTX
Get Started on Azure with Puppet
PDF
Puppet latest and greatest
PPTX
Top Trends in Application Delivery Webinar 10.29.15
PDF
DevOps: Getting Started with Puppet on Windows
PPTX
Webinar - Auto-deploy Puppet Enterprise: Vagrant and Oscar
PPTX
Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...
PDF
Puppet overview
PDF
DevOps: What is This Puppet You Speak Of?
PDF
PuppetConf track overview: Puppet Applied
PPTX
Patch Management on Windows with Puppet
PPTX
What's New in Puppet Enterprise 2016.4
What's New in Puppet Enterprise 2015.3 (APAC)
Dep003 puppet enterprise_と_power_shell_dsc_の連携に
What's New in Puppet Enterprise 2015.3
Deliver on DevOps with Puppet Application Orchestration Webinar 11/19/15
PuppetConf track overview: Windows
What's New in Puppet Enterprise 2015.3
DevOps Workflows in the Windows Ecosystem - 21 April 2020
DevOps Workflows in the Windows Ecosystem - April 21
Webinar - Windows Application Management with Puppet
Get Started on Azure with Puppet
Puppet latest and greatest
Top Trends in Application Delivery Webinar 10.29.15
DevOps: Getting Started with Puppet on Windows
Webinar - Auto-deploy Puppet Enterprise: Vagrant and Oscar
Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...
Puppet overview
DevOps: What is This Puppet You Speak Of?
PuppetConf track overview: Puppet Applied
Patch Management on Windows with Puppet
What's New in Puppet Enterprise 2016.4
Ad

More from Puppet (20)

PPTX
Puppet Community Day: Planning the Future Together
PPTX
The Evolution of Puppet: Key Changes and Modernization Tips
PPTX
Can You Help Me Upgrade to Puppet 8? Tips, Tools & Best Practices for Your Up...
PPTX
Bolt Dynamic Inventory: Making Puppet Easier
PPTX
Customizing Reporting with the Puppet Report Processor
PPTX
Puppet at ConfigMgmtCamp 2025 Sponsor Deck
PPTX
The State of Puppet in 2025: A Presentation from Developer Relations Lead Dav...
PPTX
Let Red be Red and Green be Green: The Automated Workflow Restarter in GitHub...
PDF
Puppet camp2021 testing modules and controlrepo
PPTX
Puppetcamp r10kyaml
PDF
2021 04-15 operational verification (with notes)
PPTX
Puppet camp vscode
PDF
Modules of the twenties
PDF
Applying Roles and Profiles method to compliance code
PPTX
KGI compliance as-code approach
PDF
Enforce compliance policy with model-driven automation
PDF
Keynote: Puppet camp compliance
PPTX
Automating it management with Puppet + ServiceNow
PPTX
Puppet: The best way to harden Windows
PPTX
Simplified Patch Management with Puppet - Oct. 2020
Puppet Community Day: Planning the Future Together
The Evolution of Puppet: Key Changes and Modernization Tips
Can You Help Me Upgrade to Puppet 8? Tips, Tools & Best Practices for Your Up...
Bolt Dynamic Inventory: Making Puppet Easier
Customizing Reporting with the Puppet Report Processor
Puppet at ConfigMgmtCamp 2025 Sponsor Deck
The State of Puppet in 2025: A Presentation from Developer Relations Lead Dav...
Let Red be Red and Green be Green: The Automated Workflow Restarter in GitHub...
Puppet camp2021 testing modules and controlrepo
Puppetcamp r10kyaml
2021 04-15 operational verification (with notes)
Puppet camp vscode
Modules of the twenties
Applying Roles and Profiles method to compliance code
KGI compliance as-code approach
Enforce compliance policy with model-driven automation
Keynote: Puppet camp compliance
Automating it management with Puppet + ServiceNow
Puppet: The best way to harden Windows
Simplified Patch Management with Puppet - Oct. 2020

Recently uploaded (20)

DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Electronic commerce courselecture one. Pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Cloud computing and distributed systems.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Modernizing your data center with Dell and AMD
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
The AUB Centre for AI in Media Proposal.docx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Empathic Computing: Creating Shared Understanding
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
MYSQL Presentation for SQL database connectivity
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Electronic commerce courselecture one. Pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Chapter 3 Spatial Domain Image Processing.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Cloud computing and distributed systems.
Advanced methodologies resolving dimensionality complications for autism neur...
Modernizing your data center with Dell and AMD
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....

PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet

  • 1. Puppet Application Orchestration with Windows Ethan Brown, Principal Engineer, Puppet Iristyle ethanjbrown Puppet Application Orchestration with Windows
  • 2. Core Agent / Types and Providers Ecosystem Integrations – PS, DSC Azure Extensions and Images Puppet Application Orchestration with Windows
  • 3. Agenda (Really) Brief v1 Recap 2016.4 Orchestration Enhancements Code Manager Concept Application Demo 3Puppet Application Orchestration with Windows
  • 5. Orchestration v1 Recap Language Additions Services / Tooling Framework for describing applications Tools for applying ordered configuration spanning nodes 5Puppet Application Orchestration with Windows
  • 7. 2016.4 New Features Direct Puppet PE Client Tools OSX + Windows Arbitrary Nodes (PQL Support) Manage Puppet without the PE console Expressly Dictate Change 7Puppet Application Orchestration with Windows
  • 8. Code Manager Managing and Deploying Environments 8
  • 9. Conceptual Code Promotion Workflow Commit Code Branch Per Environment Deploy / Sync Code Enforce Code Deterministically Or Eventually 9Puppet Application Orchestration with Windows
  • 10. A Bit of Advice Let Code Manager manage code 10Puppet Application Orchestration with Windows
  • 12. Let’s Talk About Apps Yes, it’s an ASP.NET MVC app running under IIS. Please bear with me. 12
  • 13. Pushing the Envelope 8 VMS running under Vagrant 1.8.1 / VirtualBox 5.0.x on a 16GB MBP Oscar plugin for managing PE installs https://github.com/Iristyle/puppetconf2016 13Puppet Application Orchestration with Windows
  • 14. Prep The 2016.4.0 Master Enable Code Manager code_manager_auto_configure Create RBAC user rbac-api/v1/users Point Code Manager To Internal Git Repo master::r10k_remote Pointed to HTTP repo Vagrant Setup 14Puppet Application Orchestration with Windows
  • 15. Prep The Release Binaries NuGet Packages App asset packaging format, parameterized for Choco ASP.NET MVC App Typical MVC app built with Visual Studio 15 Chocolatey Server “Simple Server” deployed with Puppet Build Server Not in demo, but typically assets produced by Jenkins / TFS / TeamCity A simulated release pipeline 15Puppet Application Orchestration with Windows
  • 16. Choco Package Install Script 16Puppet Application Orchestration with Windows
  • 17. Windows 10 Server Generate token Install PE tools Config PE tools puppet-access CLI Host Control Repo Choco push Stage app 0.0.1 Deploy Code Puppet-code CLI Standalone node not under Puppet control 17Puppet Application Orchestration with Windows
  • 18. Puppet Job Run No applications defined Nodeset specified with –nodes 5 nodes updated over 2.5 minutes 18
  • 19. Clustered Blue Green Deployment 19Puppet Application Orchestration with Windows v1 v2 LB
  • 20. Live Demo The Main Event 20
  • 21. Additional Resources Orchestration Workflow Docs - https://docs.puppet.com/pe/latest/ app_orchestration_workflow.html Wordpress App Demo - https://github.com/puppetlabs/puppetlabs-wordpress_app App Modeling Module - https://forge.puppet.com/puppetlabs/app_modeling Puppet Control Repo - https://github.com/puppetlabs/control-repo RG Bank Demo – Docker + Orchestration - https://github.com/puppetlabs/puppetlabs-rgbank 21Puppet Application Orchestration with Windows
  • 22. Thanks! (Special thanks to Charlie and Alex!) 22