SlideShare a Scribd company logo
Unlocking Azure with Puppet Enterprise
October 11, 2017
Unlocking Azure with Puppet Enterprise
October 11, 2017
v3.0
Overview
• Introduction to Sourced
• Introduction to me
• Infrastructure as code
• Evolving Azure capabilities
• Template driven, Puppet delivered services
• Scaling Puppet with Azure
Historically
• Sourced Group were founded in 2009
• Significant Financial Services background
• Specialize in Configuration Management,
Automation, Cloud Computing & Data Management
• Achieved a number of industry firsts in these fields
• Offices in Australia and Canada
• Delivery experience in Amazon Web Services,
Microsoft Azure & Traditional infrastructure
platforms
Major in-flight Projects
• 80% data center migration to AWS for a large airline
• Includes an Application Delivery Framework
• Policy and guidance to underpin this activity
• Development of a strategic cloud environment for a
global investment bank
• Engage with internal stakeholders to define a public cloud
environment that is capable of housing material workloads
• On-going assistance on the ‘cloud journey’ for large
Canadian telco
• Full business migration of electronics medical records suite
of products to AWS
Who are Sourced?
Adopting cloud services within an enterprise requires experience
Our Partnerships
Strategic partnerships that align with our customer-centric approach
Keiran Sweet
• Senior Consultant with Sourced Group, Australia
• Previously Puppet lead for a large financial organisation
• Presentedat multiple Puppet conferences and camps
• Background
• Linux & UNIX System administration and architecture
• Sudden and confusing interest Windows
infrastructure as code
• Deployment & integration with various cloud
providers
• Puppet user since ~2008
• Dog Enthusiast
Me
Who is this guy anyway?
Infrastructure As Code
• Native API’s and SDK’s
• AWS / Azure / GCE / vSphere
• Write your own scripts and tools to use them
• Abstraction Layers
• Puppet / Razor / Terraform / Vagrant / Fog
• Leverage frameworks that simplify management
• Vendor Native Templating Languages
• AWS CFN / Azure RM Templates
• Express your infrastructure in JSON / YAML
Infrastructure As Code
What are some of the options today in the cloud?
• Transparency
• Composition of your environment is kept in source control
• Greater visibility of changes and history ( git log ! )
• Enhanced scale out, build, test and recovery capabilities
• New region expansion, catastrophic simulations
• Build an isolated production like environment for testing first
• Enhanced automation opportunities
• Idempotency and Self healing
• CI / CD Further down the stack, unit testing, contestability
Infrastructure As Code
Benefits
Evolving Azure Capabilities
• Infrastructure Services
• Virtual Networks, ExpressRoute, Azure DNS, Load Balancers
• Storage services
• Blobs / Tables / Queues / Files
• Databases & Caching
• Azure SQL / CosmosDB/ Azure Redis
• Virtual Machines, PaaS and Container Services
• Windows / Linux Virtual Machines / Azure App Service/
Docker
• Many many many many more….
Microsoft Azure
Services overview, it’s more than just compute for Windows!
Platform Services
Infrastructure Services
Compute Storage
Datacenter Infrastructure
Application Platform
Web
Apps
Mobile
Apps
API
Apps
Notification
Hubs
Hybrid
Cloud
Backup
StorSimple
Azure Site
Recovery
Import/Export
Networking
Data
SQL
Database DocumentDB
Redis
Cache
Azure
Search
Storage
Tables
SQL Data
Warehouse
Azure AD
Health Monitoring
Virtual
Network
Express
Route
Blob Files DisksVirtual Machines
AD Privileged
Identity
Management
Traffic
Manager
App
Gateway
Operational
Analytics
Compute Services
Cloud
Services
Batch
RemoteApp
Service
Fabric
Developer Services
Visual Studio
Application
Insights
VS Team Services
Containers DNS
VPN
Gateway
Load
Balancer
Domain Services
Analytics & IoT
HDInsight Machine
Learning Stream Analytics
Data
Factory
Event
Hubs
Data Lake
Analytics Service
IoT Hub
Data
Catalog
Security &
Management
Azure Active
Directory
Multi-Factor
Authentication
Automation
Portal
Key Vault
Store/
Marketplace
VM Image Gallery
& VM Depot
Azure AD
B2C
Scheduler
Xamarin
HockeyApp
Power BI
Embedded
SQL Server
Stretch Database
Mobile
Engagement
Functions
Intelligence
Cognitive Services Bot Framework Cortana
Security Center
Container
Service
Queues
VM
Scale Sets
Data Lake Store
Dev/Test Lab
Integration
BizTalk
Services
Service Bus
Logic
Apps
API
Management
Media & CDN
Content
Delivery
Network
Media
Services
Media
Analytics
• Azure API
• Abstraction Layers
• Azure CLI (v1 & v2)
• SDK - Ruby / .NET / Python / Node
• PowerShell module
• Puppet module / Terraform / Vagrant
• Azure Resource Manager (ARM) templates
Microsoft Azure
Infrastructure as Code capabilities
“If you are spending significant
provisioning
time in the Portal
You aren’t doing infrastructure as code.”
Anatomy of the ARM Template
• Declare all your Azure resources in JSON
• Define parameters to adjust the outcome within boundaries
• Define Outputs that are returned to you for consumption
• Why ?
• Native Templating Language
• Templates get the features first – No tracking other projects
• The console createsthese templateswhen using
the Azure Portal
• Store the templateslike any other code
• Use Visual Studio Code to help with development
Azure’s native templating language
Template driven, Puppet delivered services
• Representing our Azure based environment in ARM templates
• There isn’t an Azure service for everything we need
• Puppet can help here;
• We want to also provision instances that run our own services
• We don’t want manual intervention to achieve this
• We want to ensure that security is still at the forefront
• We want to ensure visibility throughout the process
I thought this was a Puppet talk ?
Where does Puppet sit in all of this?
Deployment Workflow
How do we get there?
• Use your CICD Tooling to initiate the deployment
• Focus on provisioning consumable services
• Abstract away the Operating System – It’s just a commodity run time
• Use the Templates Outputs: { } functionalityto return;
• Deployment Summary
• Service Names & URLs
• API Endpoints
Deploy Template
Provision
Azure
Services
Provision
Azure VM’s
Puppet
Installation
Sign Puppet
CSR
Apply
Puppet
Catalogue
Deployment
Complete
Deployment Workflow
Easy, right?
Deploy Template
Provision
Azure
Services
Provision
Azure VM’s
Puppet
Installation
Sign Puppet
CSR
Apply
Puppet
Catalogue
Deployment
Complete
• Use your CICD Tooling to initiate the deployment
• Focus on provisioning consumable services
• Abstract away the Operating System – It’s just a commodity run time
• Use the Templates Outputs: { } functionalityto return;
• Deployment Summary
• Service Names & URLs
• API Endpoints
Bootstrapping the Puppet Agent
Azure Custom Script Extensions
• User defined code executed on instance launch
• Custom Script Extensions also defined in the template
• In this case;
• Retrieve the script from a URL (ie , Blob storage)
• Execute the script
• Bootstrap the Puppet agent from the master
• Set additional Facts (Optional)
• Template parameters can be passed down to the
extension if / when required
• Failed Puppet runs == Failed Deployment
Authorising the Puppet Agent
Securely signing the CSR
Never sign incorrectly configured instances
Only sign correctly configured instances
• The Puppet CA = Security for the Puppet Service
• Policy Based Autosigning
• Execute code to validate the incoming CSR
• Automatically sign certificates that are validated to
have correct:
• Name
• Subscription
• Tags
• Role Tag (pp_role)
Applying your Puppet Role to the Instances
What Instance becomes what?
• Leverage trusted facts to assign the instances role
• $trusted[’extensions’][‘pp_role’]
• Prevents reclassification (Security)
• Validate pp_role in CSR against pp_role tag on instance
• Classification opportunities
• Do this in your code
• Use the Puppet node classifier to assign roles
• Use Hiera via hiera_include()
Additional Integration
Other capabilities to leverage
• Azure metadata as structured facts
• Azure now has a metadata API !
• Facter feature request ready and waiting.. JIRA FACT-1383
• Available today via keirans/azuremetadata module
• Puppet Azure module
• Can get you up and running quickly
• Keep in mind its current limitations
• ARM Template Resource can be used to wrap templates
as Puppet resources.
Scaling Puppet with Azure
Add load-balanced compile masters to your monolithic
installation to increase the number of agents you can manage
We want to make our compile masters be as disposible as
possible, reducing the overhead of their management, while
improving reliability, scalability and security
Automation Challenges
• Compile masters
• Do not support policy based autosigning for security
reasons
• Often need additional secrets to function such as hiera
eyaml keys
• Requires software exposed from the master of masters
• Requires a number of executed runs across nodes
Automation Solutions
• Deploy leveraging ARM templates
• Leverage Azure Key Vault
• Pre-generate our compile master certificates on the
Puppet CA
• Store the eyaml keys and other certificates in there also
• Create an identity that can retrieve them from the keyvault
• Bootstrap scripts fetch secrets from the vault on deployment
• Orchestrate runs using scripts or Jenkins Puppet Plugin
• Result : A Fully Automated Compile Master tier that can be
easily reprovisioned
Solving with Azure capabilities
Additional Benefits
• Rapid scaling out of master capacity ( 2 -20 easily)
• Rapid patching of the platform
• Tear down
• Patch Master of Masters
• Redeploy compile masters
• Rapid rolling of Compile master certificates
• Disaster recovery scenarios and testing
• A view to autoscaling long term
Any questions?
• Puppet Blog – Policy Based Autosigning
• Policy based autosigning in Azure
• Puppet Forge - Azure metadatamodule
• https://forge.puppet.com/keirans/azuremetadata
• ARM Examples - Automated compilemasters
• https://github.com/keirans/azure-puppet-compilemasters
• Microsoft – Release Pipeline Model
• https://msdn.microsoft.com/en-
us/powershell/dsc/whitepapers#the-release-pipeline-model
• Image Credits
• Silicon Valley (HBO)
References
• Using Puppet in Automated Environments
• Order in a world of snowflakes
Sourced Group, Puppetconf 2015
• Using Puppet in Dynamic Environments
• The Evolving Design Patterns of Puppet Enterprise
Sourced Group, Puppetconf 2014
• Using Puppet with Multiple Cloud Providers
• Using Puppet as heterogeneous cloud glue
Sourced Group, Puppetconf 2012
Previous Presentations

More Related Content

What's hot

AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
Amazon Web Services
 
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech TalksHands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
Amazon Web Services
 
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
Amazon Web Services
 
Journey towards serverless infrastructure
Journey towards serverless infrastructureJourney towards serverless infrastructure
Journey towards serverless infrastructure
Ville Seppänen
 
Cloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSCloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSS
aspyker
 
Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018
DocFluix, LLC
 
Moving Enterprise Windows Workloads to AWS
Moving Enterprise Windows Workloads to AWSMoving Enterprise Windows Workloads to AWS
Moving Enterprise Windows Workloads to AWS
Amazon Web Services
 
Cloud & Native Cloud for Managers
Cloud & Native Cloud for ManagersCloud & Native Cloud for Managers
Cloud & Native Cloud for Managers
Eitan Sela
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
Erwin de Kreuk
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Amazon Web Services
 
Azure Serverless Toolbox
Azure Serverless ToolboxAzure Serverless Toolbox
Azure Serverless Toolbox
Johan Eriksson
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
Amazon Web Services
 
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
Amazon Web Services
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
Robert Greiner
 
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
Amazon Web Services
 
Introduction to OpsWorks for Chef Automate
Introduction to OpsWorks for Chef AutomateIntroduction to OpsWorks for Chef Automate
Introduction to OpsWorks for Chef Automate
Amazon Web Services
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the CloudAmazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon Web Services
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
K.Mohamed Faizal
 
Secure Content Delivery Using Amazon CloudFront and AWS WAF
Secure Content Delivery Using Amazon CloudFront and AWS WAFSecure Content Delivery Using Amazon CloudFront and AWS WAF
Secure Content Delivery Using Amazon CloudFront and AWS WAF
Amazon Web Services
 
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
Amazon Web Services
 

What's hot (20)

AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
AWS Public Sector Symposium 2014 Canberra | Black Belt Tips on AWS
 
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech TalksHands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
Hands on Lab: Windows Workloads on AWS - June 2017 AWS Online Tech Talks
 
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
AWS re:Invent 2016: Preparing for a Large-Scale Migration to AWS (ENT212)
 
Journey towards serverless infrastructure
Journey towards serverless infrastructureJourney towards serverless infrastructure
Journey towards serverless infrastructure
 
Cloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSCloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSS
 
Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018Developing Azure Functions for Flow and Nintex SPS SD 2018
Developing Azure Functions for Flow and Nintex SPS SD 2018
 
Moving Enterprise Windows Workloads to AWS
Moving Enterprise Windows Workloads to AWSMoving Enterprise Windows Workloads to AWS
Moving Enterprise Windows Workloads to AWS
 
Cloud & Native Cloud for Managers
Cloud & Native Cloud for ManagersCloud & Native Cloud for Managers
Cloud & Native Cloud for Managers
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
 
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 Automating your Infrastructure Deployment with CloudFormation and OpsWorks –... Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
Automating your Infrastructure Deployment with CloudFormation and OpsWorks –...
 
Azure Serverless Toolbox
Azure Serverless ToolboxAzure Serverless Toolbox
Azure Serverless Toolbox
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
 
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
AWS re:Invent 2016: Configuration Management in the Cloud (DEV305)
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
Enterprise DevOps at Scale with AWS | AWS Public Sector Summit 2016
 
Introduction to OpsWorks for Chef Automate
Introduction to OpsWorks for Chef AutomateIntroduction to OpsWorks for Chef Automate
Introduction to OpsWorks for Chef Automate
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the CloudAmazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
 
Secure Content Delivery Using Amazon CloudFront and AWS WAF
Secure Content Delivery Using Amazon CloudFront and AWS WAFSecure Content Delivery Using Amazon CloudFront and AWS WAF
Secure Content Delivery Using Amazon CloudFront and AWS WAF
 
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
AWS re:Invent 2016: Development Workflow with Docker and Amazon ECS (CON302)
 

Similar to PuppetConf 2017: Unlocking Azure with Puppet Enterprise- Keiran Sweet, Sourced Group

Cnam azure ze cloud resource manager
Cnam azure ze cloud  resource managerCnam azure ze cloud  resource manager
Cnam azure ze cloud resource manager
Aymeric Weinbach
 
Using AWS To Build A Scalable Machine Data Analytics Service
Using AWS To Build A Scalable Machine Data Analytics ServiceUsing AWS To Build A Scalable Machine Data Analytics Service
Using AWS To Build A Scalable Machine Data Analytics Service
Christian Beedgen
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Emerson Eduardo Rodrigues Von Staffen
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
Amazon Web Services
 
Serverless in the Azure World
Serverless in the Azure WorldServerless in the Azure World
Serverless in the Azure World
Kasun Kodagoda
 
Managing Your Cloud Assets
Managing Your Cloud AssetsManaging Your Cloud Assets
Managing Your Cloud Assets
Amazon Web Services
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup
 
Sitecore 8.2 Update 1 on Azure Web Apps
Sitecore 8.2 Update 1 on Azure Web AppsSitecore 8.2 Update 1 on Azure Web Apps
Sitecore 8.2 Update 1 on Azure Web Apps
Rob Habraken
 
IaaS azure_vs_amazon
IaaS azure_vs_amazonIaaS azure_vs_amazon
IaaS azure_vs_amazon
Udaiappa Ramachandran
 
GCP Deployment- Vertex AI
GCP Deployment- Vertex AIGCP Deployment- Vertex AI
GCP Deployment- Vertex AI
Triloki Gupta
 
PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
lalitjangra9
 
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
Amazon Web Services
 
Securing Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOpsSecuring Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOps
Amazon Web Services
 
Become an Automation Ninja in 60 Minutes
Become an Automation Ninja in 60 MinutesBecome an Automation Ninja in 60 Minutes
Become an Automation Ninja in 60 Minutes
Michael Rüefli
 
Global Azure Bootcamp: Azure service fabric
Global Azure Bootcamp: Azure service fabric Global Azure Bootcamp: Azure service fabric
Global Azure Bootcamp: Azure service fabric
Luis Valencia
 
Configuration Management in the Cloud | AWS Public Sector Summit 2017
Configuration Management in the Cloud | AWS Public Sector Summit 2017Configuration Management in the Cloud | AWS Public Sector Summit 2017
Configuration Management in the Cloud | AWS Public Sector Summit 2017
Amazon Web Services
 
#SPFestDC #Azure #Functions V2: What's new and getting started
#SPFestDC #Azure #Functions V2: What's new and getting started#SPFestDC #Azure #Functions V2: What's new and getting started
#SPFestDC #Azure #Functions V2: What's new and getting started
Vincent Biret
 
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWSAWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
AWS Chicago
 
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
Amazon Web Services
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
Amazon Web Services
 

Similar to PuppetConf 2017: Unlocking Azure with Puppet Enterprise- Keiran Sweet, Sourced Group (20)

Cnam azure ze cloud resource manager
Cnam azure ze cloud  resource managerCnam azure ze cloud  resource manager
Cnam azure ze cloud resource manager
 
Using AWS To Build A Scalable Machine Data Analytics Service
Using AWS To Build A Scalable Machine Data Analytics ServiceUsing AWS To Build A Scalable Machine Data Analytics Service
Using AWS To Build A Scalable Machine Data Analytics Service
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
 
Serverless in the Azure World
Serverless in the Azure WorldServerless in the Azure World
Serverless in the Azure World
 
Managing Your Cloud Assets
Managing Your Cloud AssetsManaging Your Cloud Assets
Managing Your Cloud Assets
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
 
Sitecore 8.2 Update 1 on Azure Web Apps
Sitecore 8.2 Update 1 on Azure Web AppsSitecore 8.2 Update 1 on Azure Web Apps
Sitecore 8.2 Update 1 on Azure Web Apps
 
IaaS azure_vs_amazon
IaaS azure_vs_amazonIaaS azure_vs_amazon
IaaS azure_vs_amazon
 
GCP Deployment- Vertex AI
GCP Deployment- Vertex AIGCP Deployment- Vertex AI
GCP Deployment- Vertex AI
 
PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
 
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
Integrating Security into DevOps and CI / CD Environments - Pop-up Loft TLV 2017
 
Securing Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOpsSecuring Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOps
 
Become an Automation Ninja in 60 Minutes
Become an Automation Ninja in 60 MinutesBecome an Automation Ninja in 60 Minutes
Become an Automation Ninja in 60 Minutes
 
Global Azure Bootcamp: Azure service fabric
Global Azure Bootcamp: Azure service fabric Global Azure Bootcamp: Azure service fabric
Global Azure Bootcamp: Azure service fabric
 
Configuration Management in the Cloud | AWS Public Sector Summit 2017
Configuration Management in the Cloud | AWS Public Sector Summit 2017Configuration Management in the Cloud | AWS Public Sector Summit 2017
Configuration Management in the Cloud | AWS Public Sector Summit 2017
 
#SPFestDC #Azure #Functions V2: What's new and getting started
#SPFestDC #Azure #Functions V2: What's new and getting started#SPFestDC #Azure #Functions V2: What's new and getting started
#SPFestDC #Azure #Functions V2: What's new and getting started
 
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWSAWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
AWS Community Day - Piyali Kamra - Conversational AI Ecosystem on AWS
 
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
Cloud-Native DevOps: Simplifying application lifecycle management with AWS | ...
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
 

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 controlrepo
Puppet
 
Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyaml
Puppet
 
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 vscode
Puppet
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twenties
Puppet
 
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
Puppet
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approach
Puppet
 
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
Puppet
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliance
Puppet
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNow
Puppet
 
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
Puppet
 
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
Puppet
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppet
Puppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael Pinson
Puppet
 
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
Puppet
 
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
Puppet
 
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
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User Group
Puppet
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOps
Puppet
 
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
Puppet
 

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

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 

Recently uploaded (20)

GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 

PuppetConf 2017: Unlocking Azure with Puppet Enterprise- Keiran Sweet, Sourced Group

  • 1. Unlocking Azure with Puppet Enterprise October 11, 2017
  • 2. Unlocking Azure with Puppet Enterprise October 11, 2017 v3.0
  • 3. Overview • Introduction to Sourced • Introduction to me • Infrastructure as code • Evolving Azure capabilities • Template driven, Puppet delivered services • Scaling Puppet with Azure
  • 4. Historically • Sourced Group were founded in 2009 • Significant Financial Services background • Specialize in Configuration Management, Automation, Cloud Computing & Data Management • Achieved a number of industry firsts in these fields • Offices in Australia and Canada • Delivery experience in Amazon Web Services, Microsoft Azure & Traditional infrastructure platforms Major in-flight Projects • 80% data center migration to AWS for a large airline • Includes an Application Delivery Framework • Policy and guidance to underpin this activity • Development of a strategic cloud environment for a global investment bank • Engage with internal stakeholders to define a public cloud environment that is capable of housing material workloads • On-going assistance on the ‘cloud journey’ for large Canadian telco • Full business migration of electronics medical records suite of products to AWS Who are Sourced? Adopting cloud services within an enterprise requires experience
  • 5. Our Partnerships Strategic partnerships that align with our customer-centric approach
  • 6. Keiran Sweet • Senior Consultant with Sourced Group, Australia • Previously Puppet lead for a large financial organisation • Presentedat multiple Puppet conferences and camps • Background • Linux & UNIX System administration and architecture • Sudden and confusing interest Windows infrastructure as code • Deployment & integration with various cloud providers • Puppet user since ~2008 • Dog Enthusiast Me Who is this guy anyway?
  • 8. • Native API’s and SDK’s • AWS / Azure / GCE / vSphere • Write your own scripts and tools to use them • Abstraction Layers • Puppet / Razor / Terraform / Vagrant / Fog • Leverage frameworks that simplify management • Vendor Native Templating Languages • AWS CFN / Azure RM Templates • Express your infrastructure in JSON / YAML Infrastructure As Code What are some of the options today in the cloud?
  • 9. • Transparency • Composition of your environment is kept in source control • Greater visibility of changes and history ( git log ! ) • Enhanced scale out, build, test and recovery capabilities • New region expansion, catastrophic simulations • Build an isolated production like environment for testing first • Enhanced automation opportunities • Idempotency and Self healing • CI / CD Further down the stack, unit testing, contestability Infrastructure As Code Benefits
  • 11. • Infrastructure Services • Virtual Networks, ExpressRoute, Azure DNS, Load Balancers • Storage services • Blobs / Tables / Queues / Files • Databases & Caching • Azure SQL / CosmosDB/ Azure Redis • Virtual Machines, PaaS and Container Services • Windows / Linux Virtual Machines / Azure App Service/ Docker • Many many many many more…. Microsoft Azure Services overview, it’s more than just compute for Windows!
  • 12. Platform Services Infrastructure Services Compute Storage Datacenter Infrastructure Application Platform Web Apps Mobile Apps API Apps Notification Hubs Hybrid Cloud Backup StorSimple Azure Site Recovery Import/Export Networking Data SQL Database DocumentDB Redis Cache Azure Search Storage Tables SQL Data Warehouse Azure AD Health Monitoring Virtual Network Express Route Blob Files DisksVirtual Machines AD Privileged Identity Management Traffic Manager App Gateway Operational Analytics Compute Services Cloud Services Batch RemoteApp Service Fabric Developer Services Visual Studio Application Insights VS Team Services Containers DNS VPN Gateway Load Balancer Domain Services Analytics & IoT HDInsight Machine Learning Stream Analytics Data Factory Event Hubs Data Lake Analytics Service IoT Hub Data Catalog Security & Management Azure Active Directory Multi-Factor Authentication Automation Portal Key Vault Store/ Marketplace VM Image Gallery & VM Depot Azure AD B2C Scheduler Xamarin HockeyApp Power BI Embedded SQL Server Stretch Database Mobile Engagement Functions Intelligence Cognitive Services Bot Framework Cortana Security Center Container Service Queues VM Scale Sets Data Lake Store Dev/Test Lab Integration BizTalk Services Service Bus Logic Apps API Management Media & CDN Content Delivery Network Media Services Media Analytics
  • 13. • Azure API • Abstraction Layers • Azure CLI (v1 & v2) • SDK - Ruby / .NET / Python / Node • PowerShell module • Puppet module / Terraform / Vagrant • Azure Resource Manager (ARM) templates Microsoft Azure Infrastructure as Code capabilities “If you are spending significant provisioning time in the Portal You aren’t doing infrastructure as code.”
  • 14. Anatomy of the ARM Template • Declare all your Azure resources in JSON • Define parameters to adjust the outcome within boundaries • Define Outputs that are returned to you for consumption • Why ? • Native Templating Language • Templates get the features first – No tracking other projects • The console createsthese templateswhen using the Azure Portal • Store the templateslike any other code • Use Visual Studio Code to help with development Azure’s native templating language
  • 15. Template driven, Puppet delivered services
  • 16. • Representing our Azure based environment in ARM templates • There isn’t an Azure service for everything we need • Puppet can help here; • We want to also provision instances that run our own services • We don’t want manual intervention to achieve this • We want to ensure that security is still at the forefront • We want to ensure visibility throughout the process I thought this was a Puppet talk ? Where does Puppet sit in all of this?
  • 17. Deployment Workflow How do we get there? • Use your CICD Tooling to initiate the deployment • Focus on provisioning consumable services • Abstract away the Operating System – It’s just a commodity run time • Use the Templates Outputs: { } functionalityto return; • Deployment Summary • Service Names & URLs • API Endpoints Deploy Template Provision Azure Services Provision Azure VM’s Puppet Installation Sign Puppet CSR Apply Puppet Catalogue Deployment Complete
  • 18. Deployment Workflow Easy, right? Deploy Template Provision Azure Services Provision Azure VM’s Puppet Installation Sign Puppet CSR Apply Puppet Catalogue Deployment Complete • Use your CICD Tooling to initiate the deployment • Focus on provisioning consumable services • Abstract away the Operating System – It’s just a commodity run time • Use the Templates Outputs: { } functionalityto return; • Deployment Summary • Service Names & URLs • API Endpoints
  • 19. Bootstrapping the Puppet Agent Azure Custom Script Extensions • User defined code executed on instance launch • Custom Script Extensions also defined in the template • In this case; • Retrieve the script from a URL (ie , Blob storage) • Execute the script • Bootstrap the Puppet agent from the master • Set additional Facts (Optional) • Template parameters can be passed down to the extension if / when required • Failed Puppet runs == Failed Deployment
  • 20. Authorising the Puppet Agent Securely signing the CSR Never sign incorrectly configured instances Only sign correctly configured instances • The Puppet CA = Security for the Puppet Service • Policy Based Autosigning • Execute code to validate the incoming CSR • Automatically sign certificates that are validated to have correct: • Name • Subscription • Tags • Role Tag (pp_role)
  • 21. Applying your Puppet Role to the Instances What Instance becomes what? • Leverage trusted facts to assign the instances role • $trusted[’extensions’][‘pp_role’] • Prevents reclassification (Security) • Validate pp_role in CSR against pp_role tag on instance • Classification opportunities • Do this in your code • Use the Puppet node classifier to assign roles • Use Hiera via hiera_include()
  • 22. Additional Integration Other capabilities to leverage • Azure metadata as structured facts • Azure now has a metadata API ! • Facter feature request ready and waiting.. JIRA FACT-1383 • Available today via keirans/azuremetadata module • Puppet Azure module • Can get you up and running quickly • Keep in mind its current limitations • ARM Template Resource can be used to wrap templates as Puppet resources.
  • 24. Add load-balanced compile masters to your monolithic installation to increase the number of agents you can manage
  • 25.
  • 26.
  • 27. We want to make our compile masters be as disposible as possible, reducing the overhead of their management, while improving reliability, scalability and security
  • 28. Automation Challenges • Compile masters • Do not support policy based autosigning for security reasons • Often need additional secrets to function such as hiera eyaml keys • Requires software exposed from the master of masters • Requires a number of executed runs across nodes
  • 29. Automation Solutions • Deploy leveraging ARM templates • Leverage Azure Key Vault • Pre-generate our compile master certificates on the Puppet CA • Store the eyaml keys and other certificates in there also • Create an identity that can retrieve them from the keyvault • Bootstrap scripts fetch secrets from the vault on deployment • Orchestrate runs using scripts or Jenkins Puppet Plugin • Result : A Fully Automated Compile Master tier that can be easily reprovisioned
  • 30. Solving with Azure capabilities
  • 31.
  • 32.
  • 33.
  • 34.
  • 35. Additional Benefits • Rapid scaling out of master capacity ( 2 -20 easily) • Rapid patching of the platform • Tear down • Patch Master of Masters • Redeploy compile masters • Rapid rolling of Compile master certificates • Disaster recovery scenarios and testing • A view to autoscaling long term
  • 37. • Puppet Blog – Policy Based Autosigning • Policy based autosigning in Azure • Puppet Forge - Azure metadatamodule • https://forge.puppet.com/keirans/azuremetadata • ARM Examples - Automated compilemasters • https://github.com/keirans/azure-puppet-compilemasters • Microsoft – Release Pipeline Model • https://msdn.microsoft.com/en- us/powershell/dsc/whitepapers#the-release-pipeline-model • Image Credits • Silicon Valley (HBO) References
  • 38. • Using Puppet in Automated Environments • Order in a world of snowflakes Sourced Group, Puppetconf 2015 • Using Puppet in Dynamic Environments • The Evolving Design Patterns of Puppet Enterprise Sourced Group, Puppetconf 2014 • Using Puppet with Multiple Cloud Providers • Using Puppet as heterogeneous cloud glue Sourced Group, Puppetconf 2012 Previous Presentations