PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan...
-
Upload
puppet -
Category
Technology
-
view
89 -
download
3
Transcript of PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan...
![Page 1: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/1.jpg)
Puppet Application Orchestration with Windows Ethan Brown, Principal Engineer, Puppet Iristyle ethanjbrown
Puppet Application Orchestration with Windows
![Page 2: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/2.jpg)
Core Agent / Types and Providers Ecosystem Integrations – PS, DSC Azure Extensions and Images
Puppet Application Orchestration with Windows
![Page 3: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/3.jpg)
Agenda
(Really) Brief v1 Recap
2016.4 Orchestration Enhancements
Code Manager
Concept Application
Demo
3 Puppet Application Orchestration with Windows
![Page 4: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/4.jpg)
Orchestration v1 Recap Initial 2015.3 Release
4
![Page 5: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/5.jpg)
Orchestration v1 Recap
Language Additions Services / Tooling
Framework for describing applications Tools for applying ordered configuration spanning nodes
5 Puppet Application Orchestration with Windows
![Page 6: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/6.jpg)
2016.4 Enhancements It’s All About Control
6
![Page 7: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/7.jpg)
2016.4 New Features
Direct Puppet PE Client Tools OSX + Windows
Arbitrary Nodes (PQL Support)
Manage Puppet without the PE console Expressly Dictate Change
7 Puppet Application Orchestration with Windows
![Page 8: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/8.jpg)
Code Manager Managing and Deploying Environments
8
![Page 9: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/9.jpg)
Conceptual Code Promotion Workflow
Commit Code Branch Per
Environment
Deploy / Sync Code Enforce Code Deterministically
Or Eventually
9 Puppet Application Orchestration with Windows
![Page 10: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/10.jpg)
A Bit of Advice
Let Code Manager manage code
10 Puppet Application Orchestration with Windows
![Page 11: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/11.jpg)
Puppetfile Module dependencies
11
![Page 12: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/12.jpg)
Let’s Talk About Apps Yes, it’s an ASP.NET MVC app running under IIS. Please bear with me.
12
![Page 13: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/13.jpg)
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
13 Puppet Application Orchestration with Windows
![Page 14: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/14.jpg)
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
14 Puppet Application Orchestration with Windows
![Page 15: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/15.jpg)
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
15 Puppet Application Orchestration with Windows
![Page 16: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/16.jpg)
Choco Package Install Script
16 Puppet Application Orchestration with Windows
![Page 17: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/17.jpg)
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
17 Puppet Application Orchestration with Windows
![Page 18: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/18.jpg)
Puppet Job Run No applications defined Nodeset specified with –nodes 5 nodes updated over 2.5 minutes
18
![Page 19: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/19.jpg)
Clustered Blue Green Deployment
19 Puppet Application Orchestration with Windows
v1
v2
LB
![Page 20: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/20.jpg)
Live Demo The Main Event
20
![Page 21: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/21.jpg)
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
21 Puppet Application Orchestration with Windows
![Page 22: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/22.jpg)
Thanks! (Special thanks to Charlie and Alex!)
22
![Page 23: PuppetConf 2016: Deploying Multi-Tier Windows Applications with Application Orchestrator – Ethan Brown, Puppet](https://reader031.fdocuments.net/reader031/viewer/2022021922/58edc93b1a28ab88328b45ad/html5/thumbnails/23.jpg)