SlideShare a Scribd company logo
1 of 16
Download to read offline
Puppet, Hyper-V
And OpenStack
PETER POULIOT, CISSP
MICROSOFT N.E.R.D., CAMBRIDGE, MA
Bio
u  Peter Pouliot, CISSP
u  Email: ppouliot@microsoft.com
u  Education:
u  BA Philosophy - Rhode Island College
u  Certificate Windows NT Administration - Boston University CEC
u  Oracle DBA 8i – Oracle University
u  MS Telecommunication Security - Boston University MET College
u  Graduate Certificate Digital Forensics - Boston University MET College
u  Certifications:
u  CISSP, MCSE+I, MCT (NT4/2000), OCP (8i), Network+
u  9 years working on Datacenter/Network Infrastructure and Linux/Windows interoperability for
Ximian/Novell/SuSE.
u  May 2011 Deployed first Openstack/Hyper-V cloud while working in the Novell/Microsoft Joint
Interoperability Lab
u  March 2012 Started working for Microsoft to return Hyper-V support to Folsom release
u  Currently tasked with building a CI infrastructure to support Hyper-V in OpenStack
Agenda
u  Puppet at MS
u  Brief introduction to Hyper-V and OpenStack
u  Why Puppet?
u  A history of the OpenStack Hyper-V puppet modules
u  Challenges of Using Puppet on Windows.
u  State of Devops for Windows IT Pros
OpenStack/Hyper-V
u  Nova: Hyper-V can be used as a compute node in OpenStack
u  Python application running on Hyper-V
u  Publically Available MSI
u  MSI Includes Neutron/(formerly Quantum) agent for Hyper-V
u  Neutron
u  Currently has VLAN Support
u  OpenVSwitch for Hyper-V coming
u  Cinder: Windows can be used as a block storage node.
u  Cloudinit functionality for windows provided by Cloudbaseinit.
u  Public MSI available.
Puppet at MS
u  Currently using puppet to build the OpenStack CI Infrastructure for
Hyper-V
u  Puppet 3.2+ on Windows and Linux.
u  Running Puppetmaster/Passenger
u  Using Kickstart/Preseed/Unattend.xml/Cloudinit as entry for puppet
deployment and registration
u  Using both centralized and decentralized puppet.
Puppet on Windows?
u  Needed a way to configure Windows Hyper-V nodes consistently
and rapidly.
u  OpenStack deployments on Hyper-V using public binaries is
complicated.
u  Lots of Hyper-V tidbits need to be configured.
u  Lots of additional software requirements.
u  Manual process does not scale.
u  Wanted to help CERN deploy Hyper-V into their OpenStack
infrastructure.
Brief History of Puppet and
Openstack on Hyper-V
u  8 months ago Began automating deployment and configuration of
Hyper-V using puppet 2.7+ on windows server 2012.
u  Created a basic framework for deploying OpenStack nova using
public python binaries, with locally served files on Windows.
u  Included Windows configuration, vswitch creation and nova
configuration.
u  Deployment of additional software. (Git, 7zip, Python, python Modules)
u  After initial configuration moved to building supporting linux
deployment automation.
u  Development pace quickened and skill level increased.
Hyper-V/Puppet History Continued
Began automation of windows PE creation for windows pxe
automation, including integration with Linux PXE infrastructure.
Refactor of original Hyper-V/OpenStack module to automatically
retrieve all components with help from Octavian Ciuhandu from
Cloudbase Solutions.
Inclusion of deployment from MSI using Cloudbase Solutions prebuilt
MSI for Nova Compute on Hyper-V
A move to puppet 3.2+ on Windows 2012 and Hyper-V Server 2012
Major refactor including a Virtual Switch type/provider from Luis
Fernández Álvarez of CERN including dependency on Josh Cooper’s
Powershell Modules
Puppet Projects
Puppet-quartermaster: A pxe provisioning infrastructure for deploying linux (kickstart,
preseed, unattend.xml) based installations of linux and windows puppetized nodes.
https://github.com/ppouliot/puppet-quartermaster
Puppet-petools: Generates a x86_64 Windows PE image using the Automated
Deployment Kit. Includes retrieval and installation of the adk. Slipstreaming of virtio-
drivers for windows and other
https://github.com/ppouliot/puppet-petools
Puppet-openstack_hyper_v: hyper-v compute node configuration and openstack nova
deployment.
https://github.com/ppouliot/puppet-openstack_hyper_v
puppet-openstack_hyper_v
u  Installs a complete Python environment
u  Creates external virtual switches
u  Enables live migration
u  Enables the iScsi initiator service
u  Enables RDP Remote access
u  Configures NTP
u  Joins node to Domain
u  Installs Git, 7zip, and other dependancies
u  Installs OpenStack (Package, Public Binaries, Source)
puppet-quartermaster
u  Creates a basic PXE infrastructure
u  TFTP, HTTP, Samba, NFS
u  Squid-Proxy (package caching)
u  DNSMasq (Proxy DHCP)
u  Puppetmaster
u  Retrieves necessary pxe kernels and files, generates menus, and
necessary automation (kickstart, preseed, unattend.xml) for
deploying operating system
u  Includes as OS automation retrieval and installation of puppet and
registration with puppetmaster.
Puppet-petools
u  Downloads and Installs Microsoft’s Automated Deployment Kit
u  Creates a Windows PE x86_64 image
u  Mounts the Windows PE Image
u  Installs necessary Windows PE Packages
u  Retrieves and Installs KVM VirtIO drivers into WinPE Images
u  Installs additional Windows Drivers into winpe image.
u  Modifies startnet.cmd to map appropriate drives to launch a script
on a windows share.
u  Finalizes WinPE image and Copies all necessary files to allow for
WinPE to PXE onto a windows file share.
Challenges of Puppet on Windows
u  Windows isn’t Linux.
u  Lack of public modules for Windows.
u  No windows package management
u  Spaces in path naming
u  Reboots
u  Previously was no powershell provider for puppet/windows.
u  Move from using native .exe commands to the powershell
equivalent.
Windows IT Professionals and
Devops: A problem
u  Problem:
u  Devops is a new concept for the Windows IT Pro
u  Continuous Integration and Delivery are also new concepts for Windows
IT Pro
u  Skills need to updated
u  Enterprise shops usually have highly segregated skill sets.
u  Typical windows workflows are not automated or automation
How do we fix the problem?
u  Organize the Windows Puppet Community.
u  Share experiences
u  Share code
u  Create a rich catalog of public Puppet Modules for the Windows IT
Pro
u  Evangelism: Windows can be automated too
u  Education:
u  Remember, It’s only computer science!
More information
u  http://wiki.openstack.org/Hyper-V
u  IRC: Freenode: #openstack-hyper-v
u  Meetup: OpenStack Boston
u  Hyper-V MSIs for OpenStack:
u  http://www.cloudbase.it
u  Email: ppouliot@microsoft.com

More Related Content

What's hot

Don't be the bottleneck of your open source project!
Don't be the bottleneck of your open source project!Don't be the bottleneck of your open source project!
Don't be the bottleneck of your open source project!Julien Pivotto
 
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...NETWAYS
 
DevOps and Drupal
DevOps and DrupalDevOps and Drupal
DevOps and DrupalAarno Aukia
 
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...OpenShift Origin
 
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...eNovance
 
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....?
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....? Puppet Camp Sydney 2015: Puppet and AWS is easy right.....?
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....? Puppet
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemDocker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemVan Phuc
 
TripleO Lightning Talk
TripleO Lightning TalkTripleO Lightning Talk
TripleO Lightning Talkcmsj1
 
State of the Jenkins Automation
State of the Jenkins AutomationState of the Jenkins Automation
State of the Jenkins AutomationJulien Pivotto
 
Become An OpenStack TripleO ATC - Easy As ABC
Become An OpenStack TripleO ATC - Easy As ABCBecome An OpenStack TripleO ATC - Easy As ABC
Become An OpenStack TripleO ATC - Easy As ABCK Rain Leander
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners HubSpot
 
Azure container service docker-ha noi com
Azure container service   docker-ha noi comAzure container service   docker-ha noi com
Azure container service docker-ha noi comVan Phuc
 
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해Opennaru, inc.
 
E D - Environmental Dependencies in Python
E D - Environmental Dependencies in PythonE D - Environmental Dependencies in Python
E D - Environmental Dependencies in PythonAdam Englander
 
Lessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionLessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionShingo Omura
 
Build A Private Developer's Cloud Using TripleO
Build A Private Developer's Cloud Using TripleOBuild A Private Developer's Cloud Using TripleO
Build A Private Developer's Cloud Using TripleOK Rain Leander
 
Velero search & practice 20210609
Velero search & practice 20210609Velero search & practice 20210609
Velero search & practice 20210609KAI CHU CHUNG
 
Continuous Delivery di una WebApp - by example
Continuous Delivery di una WebApp - by exampleContinuous Delivery di una WebApp - by example
Continuous Delivery di una WebApp - by exampleFabio Mora
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Daniel Krook
 

What's hot (20)

Don't be the bottleneck of your open source project!
Don't be the bottleneck of your open source project!Don't be the bottleneck of your open source project!
Don't be the bottleneck of your open source project!
 
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...
OpenNebula Conf 2014 | Understanding the OpenNebula Model for Cloud Provision...
 
DevOps and Drupal
DevOps and DrupalDevOps and Drupal
DevOps and Drupal
 
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...
From Zero to Cloud: Revolutionize your Application Life Cycle with OpenShift ...
 
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...
OpenStack in Action 4! Vincent Untz - Running multiple hypervisors in your Op...
 
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....?
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....? Puppet Camp Sydney 2015: Puppet and AWS is easy right.....?
Puppet Camp Sydney 2015: Puppet and AWS is easy right.....?
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemDocker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
 
TripleO Lightning Talk
TripleO Lightning TalkTripleO Lightning Talk
TripleO Lightning Talk
 
State of the Jenkins Automation
State of the Jenkins AutomationState of the Jenkins Automation
State of the Jenkins Automation
 
Become An OpenStack TripleO ATC - Easy As ABC
Become An OpenStack TripleO ATC - Easy As ABCBecome An OpenStack TripleO ATC - Easy As ABC
Become An OpenStack TripleO ATC - Easy As ABC
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners
 
Azure container service docker-ha noi com
Azure container service   docker-ha noi comAzure container service   docker-ha noi com
Azure container service docker-ha noi com
 
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해
머신 중심에서 애플리케이션 중심으로 불변의 인프라스트럭처 개념 이해
 
E D - Environmental Dependencies in Python
E D - Environmental Dependencies in PythonE D - Environmental Dependencies in Python
E D - Environmental Dependencies in Python
 
Lessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In ProductionLessons Learned: Using Concourse In Production
Lessons Learned: Using Concourse In Production
 
Build A Private Developer's Cloud Using TripleO
Build A Private Developer's Cloud Using TripleOBuild A Private Developer's Cloud Using TripleO
Build A Private Developer's Cloud Using TripleO
 
Velero search & practice 20210609
Velero search & practice 20210609Velero search & practice 20210609
Velero search & practice 20210609
 
Devstack On Demand
Devstack On DemandDevstack On Demand
Devstack On Demand
 
Continuous Delivery di una WebApp - by example
Continuous Delivery di una WebApp - by exampleContinuous Delivery di una WebApp - by example
Continuous Delivery di una WebApp - by example
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 

Similar to Puppet, Hyper-V And OpenStack Automation With DevOps Best Practices

Openstack win final
Openstack win finalOpenstack win final
Openstack win finalJordan Rinke
 
Boston open stack meetup hyper v in openstack
Boston open stack meetup   hyper v in openstackBoston open stack meetup   hyper v in openstack
Boston open stack meetup hyper v in openstackKamesh Pemmaraju
 
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...inovex GmbH
 
PuppetConf track overview: Windows
PuppetConf track overview: WindowsPuppetConf track overview: Windows
PuppetConf track overview: WindowsPuppet
 
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...Ajith Ramawickrama
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni Project
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Pau Garcia Quiles
 
Puppetconf2011 small
Puppetconf2011 smallPuppetconf2011 small
Puppetconf2011 smallPuppet
 
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, Puppet
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, PuppetPuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, Puppet
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, PuppetPuppet
 
5 minute intro to virtualenv
5 minute intro to virtualenv5 minute intro to virtualenv
5 minute intro to virtualenvamenasse
 
PuppetConf track overview: Puppet Applied
PuppetConf track overview: Puppet AppliedPuppetConf track overview: Puppet Applied
PuppetConf track overview: Puppet AppliedPuppet
 
final proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Boxfinal proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a BoxParamkusham Shruthi
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tychojsievers
 
Uyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSUyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSPau Garcia Quiles
 
Uyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSUyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSUyuni Project
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetMichael Lessard
 
Scalable Systems Management with Puppet
Scalable Systems Management with PuppetScalable Systems Management with Puppet
Scalable Systems Management with PuppetPuppet
 
Scalable systems management with puppet
Scalable systems management with puppetScalable systems management with puppet
Scalable systems management with puppetPuppet
 
DevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloDevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloSUSE España
 

Similar to Puppet, Hyper-V And OpenStack Automation With DevOps Best Practices (20)

Openstack win final
Openstack win finalOpenstack win final
Openstack win final
 
Boston open stack meetup hyper v in openstack
Boston open stack meetup   hyper v in openstackBoston open stack meetup   hyper v in openstack
Boston open stack meetup hyper v in openstack
 
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
 
PuppetConf track overview: Windows
PuppetConf track overview: WindowsPuppetConf track overview: Windows
PuppetConf track overview: Windows
 
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...
Install .Net Core, SQL Server V-Next on Linux and deploy .Net core applicatio...
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure
 
Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure Uyuni, the solution to manage your IT infrastructure
Uyuni, the solution to manage your IT infrastructure
 
Puppet
PuppetPuppet
Puppet
 
Puppetconf2011 small
Puppetconf2011 smallPuppetconf2011 small
Puppetconf2011 small
 
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, Puppet
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, PuppetPuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, Puppet
PuppetConf 2017: Puppet Enterprise Roadmap 2017- Ryan Coleman, Puppet
 
5 minute intro to virtualenv
5 minute intro to virtualenv5 minute intro to virtualenv
5 minute intro to virtualenv
 
PuppetConf track overview: Puppet Applied
PuppetConf track overview: Puppet AppliedPuppetConf track overview: Puppet Applied
PuppetConf track overview: Puppet Applied
 
final proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Boxfinal proposal-Xen based Hypervisor in a Box
final proposal-Xen based Hypervisor in a Box
 
Building Eclipse Plugins with Tycho
Building Eclipse Plugins with TychoBuilding Eclipse Plugins with Tycho
Building Eclipse Plugins with Tycho
 
Uyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSUyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOS
 
Uyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOSUyuni - Introduction and how to manage CentOS
Uyuni - Introduction and how to manage CentOS
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with Puppet
 
Scalable Systems Management with Puppet
Scalable Systems Management with PuppetScalable Systems Management with Puppet
Scalable Systems Management with Puppet
 
Scalable systems management with puppet
Scalable systems management with puppetScalable systems management with puppet
Scalable systems management with puppet
 
DevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloDevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y Modelo
 

More from Puppet

Puppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet
 
Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyamlPuppet
 
2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)Puppet
 
Puppet camp vscode
Puppet camp vscodePuppet camp vscode
Puppet camp vscodePuppet
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twentiesPuppet
 
Applying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codeApplying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codePuppet
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approachPuppet
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationPuppet
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliancePuppet
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowPuppet
 
Puppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet
 
Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Puppet
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppetPuppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkPuppet
 
Take control of your dev ops dumping ground
Take control of your  dev ops dumping groundTake control of your  dev ops dumping ground
Take control of your dev ops dumping groundPuppet
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy SoftwarePuppet
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User GroupPuppet
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsPuppet
 
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyThe Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyPuppet
 

More from Puppet (20)

Puppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepo
 
Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyaml
 
2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)
 
Puppet camp vscode
Puppet camp vscodePuppet camp vscode
Puppet camp vscode
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twenties
 
Applying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codeApplying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance code
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approach
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automation
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliance
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNow
 
Puppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet: The best way to harden Windows
Puppet: The best way to harden Windows
 
Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael Pinson
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin Reeuwijk
 
Take control of your dev ops dumping ground
Take control of your  dev ops dumping groundTake control of your  dev ops dumping ground
Take control of your dev ops dumping ground
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User Group
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOps
 
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyThe Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
 

Recently uploaded

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Recently uploaded (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Puppet, Hyper-V And OpenStack Automation With DevOps Best Practices

  • 1. Puppet, Hyper-V And OpenStack PETER POULIOT, CISSP MICROSOFT N.E.R.D., CAMBRIDGE, MA
  • 2. Bio u  Peter Pouliot, CISSP u  Email: ppouliot@microsoft.com u  Education: u  BA Philosophy - Rhode Island College u  Certificate Windows NT Administration - Boston University CEC u  Oracle DBA 8i – Oracle University u  MS Telecommunication Security - Boston University MET College u  Graduate Certificate Digital Forensics - Boston University MET College u  Certifications: u  CISSP, MCSE+I, MCT (NT4/2000), OCP (8i), Network+ u  9 years working on Datacenter/Network Infrastructure and Linux/Windows interoperability for Ximian/Novell/SuSE. u  May 2011 Deployed first Openstack/Hyper-V cloud while working in the Novell/Microsoft Joint Interoperability Lab u  March 2012 Started working for Microsoft to return Hyper-V support to Folsom release u  Currently tasked with building a CI infrastructure to support Hyper-V in OpenStack
  • 3. Agenda u  Puppet at MS u  Brief introduction to Hyper-V and OpenStack u  Why Puppet? u  A history of the OpenStack Hyper-V puppet modules u  Challenges of Using Puppet on Windows. u  State of Devops for Windows IT Pros
  • 4. OpenStack/Hyper-V u  Nova: Hyper-V can be used as a compute node in OpenStack u  Python application running on Hyper-V u  Publically Available MSI u  MSI Includes Neutron/(formerly Quantum) agent for Hyper-V u  Neutron u  Currently has VLAN Support u  OpenVSwitch for Hyper-V coming u  Cinder: Windows can be used as a block storage node. u  Cloudinit functionality for windows provided by Cloudbaseinit. u  Public MSI available.
  • 5. Puppet at MS u  Currently using puppet to build the OpenStack CI Infrastructure for Hyper-V u  Puppet 3.2+ on Windows and Linux. u  Running Puppetmaster/Passenger u  Using Kickstart/Preseed/Unattend.xml/Cloudinit as entry for puppet deployment and registration u  Using both centralized and decentralized puppet.
  • 6. Puppet on Windows? u  Needed a way to configure Windows Hyper-V nodes consistently and rapidly. u  OpenStack deployments on Hyper-V using public binaries is complicated. u  Lots of Hyper-V tidbits need to be configured. u  Lots of additional software requirements. u  Manual process does not scale. u  Wanted to help CERN deploy Hyper-V into their OpenStack infrastructure.
  • 7. Brief History of Puppet and Openstack on Hyper-V u  8 months ago Began automating deployment and configuration of Hyper-V using puppet 2.7+ on windows server 2012. u  Created a basic framework for deploying OpenStack nova using public python binaries, with locally served files on Windows. u  Included Windows configuration, vswitch creation and nova configuration. u  Deployment of additional software. (Git, 7zip, Python, python Modules) u  After initial configuration moved to building supporting linux deployment automation. u  Development pace quickened and skill level increased.
  • 8. Hyper-V/Puppet History Continued Began automation of windows PE creation for windows pxe automation, including integration with Linux PXE infrastructure. Refactor of original Hyper-V/OpenStack module to automatically retrieve all components with help from Octavian Ciuhandu from Cloudbase Solutions. Inclusion of deployment from MSI using Cloudbase Solutions prebuilt MSI for Nova Compute on Hyper-V A move to puppet 3.2+ on Windows 2012 and Hyper-V Server 2012 Major refactor including a Virtual Switch type/provider from Luis Fernández Álvarez of CERN including dependency on Josh Cooper’s Powershell Modules
  • 9. Puppet Projects Puppet-quartermaster: A pxe provisioning infrastructure for deploying linux (kickstart, preseed, unattend.xml) based installations of linux and windows puppetized nodes. https://github.com/ppouliot/puppet-quartermaster Puppet-petools: Generates a x86_64 Windows PE image using the Automated Deployment Kit. Includes retrieval and installation of the adk. Slipstreaming of virtio- drivers for windows and other https://github.com/ppouliot/puppet-petools Puppet-openstack_hyper_v: hyper-v compute node configuration and openstack nova deployment. https://github.com/ppouliot/puppet-openstack_hyper_v
  • 10. puppet-openstack_hyper_v u  Installs a complete Python environment u  Creates external virtual switches u  Enables live migration u  Enables the iScsi initiator service u  Enables RDP Remote access u  Configures NTP u  Joins node to Domain u  Installs Git, 7zip, and other dependancies u  Installs OpenStack (Package, Public Binaries, Source)
  • 11. puppet-quartermaster u  Creates a basic PXE infrastructure u  TFTP, HTTP, Samba, NFS u  Squid-Proxy (package caching) u  DNSMasq (Proxy DHCP) u  Puppetmaster u  Retrieves necessary pxe kernels and files, generates menus, and necessary automation (kickstart, preseed, unattend.xml) for deploying operating system u  Includes as OS automation retrieval and installation of puppet and registration with puppetmaster.
  • 12. Puppet-petools u  Downloads and Installs Microsoft’s Automated Deployment Kit u  Creates a Windows PE x86_64 image u  Mounts the Windows PE Image u  Installs necessary Windows PE Packages u  Retrieves and Installs KVM VirtIO drivers into WinPE Images u  Installs additional Windows Drivers into winpe image. u  Modifies startnet.cmd to map appropriate drives to launch a script on a windows share. u  Finalizes WinPE image and Copies all necessary files to allow for WinPE to PXE onto a windows file share.
  • 13. Challenges of Puppet on Windows u  Windows isn’t Linux. u  Lack of public modules for Windows. u  No windows package management u  Spaces in path naming u  Reboots u  Previously was no powershell provider for puppet/windows. u  Move from using native .exe commands to the powershell equivalent.
  • 14. Windows IT Professionals and Devops: A problem u  Problem: u  Devops is a new concept for the Windows IT Pro u  Continuous Integration and Delivery are also new concepts for Windows IT Pro u  Skills need to updated u  Enterprise shops usually have highly segregated skill sets. u  Typical windows workflows are not automated or automation
  • 15. How do we fix the problem? u  Organize the Windows Puppet Community. u  Share experiences u  Share code u  Create a rich catalog of public Puppet Modules for the Windows IT Pro u  Evangelism: Windows can be automated too u  Education: u  Remember, It’s only computer science!
  • 16. More information u  http://wiki.openstack.org/Hyper-V u  IRC: Freenode: #openstack-hyper-v u  Meetup: OpenStack Boston u  Hyper-V MSIs for OpenStack: u  http://www.cloudbase.it u  Email: ppouliot@microsoft.com