SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
© 2014 VMware Inc. All rights reserved.
Changing The Engine While In Flight
Neil Armitage
Senior DevOps Engineer, VMware
WHOAMI
•  Senior DevOps Engineer at VMware focusing on internal cloud
deployments.
•  Nearly 30 Years of Ops/DBA/Developer experience from IBM Mainframes
upwards.
•  Based in Palo Alto but work from the
Scottish Highlands J
2
Background
•  In Oct 2014 VMware acquired the assets of Continuent Inc
•  The Continuent team joined VMware’s Hybrid Cloud Business Unit.
•  Focusing on bringing DBaaS into vCloudAir
•  Needed to migrate Continuent Test/Dev/QA Systems from a mix of outsourced
resources into a new internal vSphere Cluster
•  Needs to be non disruptive as product launches are planned
3
NoteThere were some last minute
changes for Continuent which made
some of the slides inconsistent
What is(was) Continuent
•  Commercial Continuent Tungsten focused on MySQL asynchronous Clustering
•  Open Source Tungsten Replicator, moving data from
– MySQL to MySQL
– Oracle to MySQL
– MySQL to Oracle
– MySQL or Oracle to Hadoop
– MySQL or Oracle to Redshift
•  Around 20 globally dispersed Engineers and Support staff
4
Where were our servers?
5
AWS EastAWS West
RackSpace
Dallas
Hetzner
AWS Singapore
Online.net
What we had
•  Around 50 Physical and Virtual Linux Hosts running
– Customer facing Website (Joomla)
– Jenkins Environment
– Test and QA Clusters
– Support Jump hosts for accessing Customer sites
– Puppet Master
•  All with different configurations some going back 10 years
•  Some under Puppet control mainly covering Users and Firewalls
•  Centos 4,5 & 6, Ubuntu 12.14…...................
6
What we had
•  CI Pipelines in Jenkins containing
–  10+ build jobs
–  200+ Unit and Integration tests
–  Integration tests running against MySQL, Oracle, Hadoop and AWS Redshift.
7
Why Puppet
•  A few years ago we compare Puppet vs Chef and getting started with Puppet
was easier
•  Looked at Ansible when it matured but didn’t see it as a good choice,
centralized server made sense
•  Not a Puppet ‘fanboy’, it’s a tool in our toolbox.
8
State Pre migration
•  Several machines already ‘puppetized’
•  Initial adoption was triggered by several hacks so the modules concentrated on
– Firewalls – controlling ingress into the nodes
– Users – disabling root, maintaining SSH keys for users
– Moving SSH to a new port
– Using a jump host as a gateway
– Initial separate puppet module for tungsten setup (now forked into a OSS
module)
•  https://github.com/continuent/continuent-puppet-tungsten
9
Why Migrate
•  VMware not keen on paying AWS J
•  Dealing with multiple vendors was hard
•  Hardware was old and no longer met our requirements
•  We had around 40 QA hosts QA Team wanted 400+
•  Move from external Subversion to internal Git
10
Where we were going
•  Brand new vSphere 6 cluster running vSAN - 29 x Dell PE R730xd; 24C,
512GB
•  Around 300TB of shared vSAN Disk
•  70 x Dell PE R730xd; 12C, 128GB for
physical host testing (Hadoop etc)
•  Totally isolated only port 80 and 443
to outside world.
11
What is vSAN?
12
. . .
vSphere + Virtual SAN
. . .
Constraints/Concerns
•  We had committed to ship multiple releases of Continuent Tungsten post
acquisition
•  We had to ship them as customers needed re-assurance
•  We couldn’t break the QA environment based on 1 and 2 above
•  The environment we were moving into was new and
we had limited vCenter knowledge
13
Plan
Existing QA Environment
Build new Environment
Parallel Run
14
New Enviroment (Take 1)
•  29 Hosts Clustered into a single vCenter environment
•  Single vSAN Cluster of 320TB
•  Deployed a Puppet Master and PuppetDB server
•  Started work on new modules
15
2 days later
•  All the VM’s deployed had gone
•  vSAN cluster had failed
•  It appears some one had purchased SSD’s which were not
supported by vSAN
•  (this took about 2 weeks to discover)
16
New environment (Take 2)
•  29 Hosts Clustered into a single vCenter environment
•  ESX hosts set up to used both local disks and a borrowed VNX San
•  Deployed a Puppet Master and PuppetDB server
•  Started work on new modules
17
2 days later
18
Infrastructure
19
Jump Puppet DNS NAT SVN
‘External 10.x Network using eth0
Internal 192.168.x Network using eth1
Physical Network
Virtual Hosts
Virtual Network
PuppetManual
Puppet modules
•  ’Base’ class applied to all hosts
– Users and SSH keys
– Default packages per O/S – Centos and Ubuntu initially
– Remote syslog
– NTP
– Nagios
– eth1 Management
•  RDBMS specific
•  Jenkins and Monitoring rely heavily on exported resources from the Base
class.
20
What are exported resources?
21
“An exported resource declaration specifies a desired state for a resource, does
not manage the resource on the target system, and publishes the resource for
use by other nodes. Any node (including the node that exported it) can
then collect the exported resource and manage its own copy of it.”
https://docs.puppet.com/puppet/latest/reference/lang_exported.html
What are exported resources?
22
VM
Information Puppet
Master
DNS
Server
Information
Information Puppet
DB
Puppet
Master
Information
DNS Server Management with Exported Resources
23
DNS Server Management with Exported Resources
24
Demo
25
Demo Setup
26
PuppetMaster WEB1 MYSQL1
DNS1
Demo Setup
27
28
QA Cluster
•  Built in groups of 3,6,9 or 12 nodes
•  QA Class
•  Added RDBMS as specified
•  Extra QA tools, debugging etc.
29
MySQL QA Cluster
30
Oracle QA Cluster
31
RDBMS Supported
•  MySQL
– Oracle MySQL
– MariaDB
– Percona Server
•  Oracle EE – 11g and 12c
•  Vertica
•  Hadoop
32
Jenkins configuration
•  Several hundred tests in Jenkins
•  Pre-migration each test specified a cluster to run on.
•  Led to bottle necks and problems when a cluster is unavailable
•  In the new environment a test just specifies the number of nodes and the O/S it
needs
33
Jenkins configuration
•  Puppet creates the Jenkins slave using data from exported resources.
•  Metadata inserted into the workspace by puppet to allow the test to find the
correct hosts
34
Jenkins configuration
35
Completed Environment
•  VM’s deployed using PowerShell to clone template, set hostname and add IP
for eth0
•  Nodes booted and ran puppet
•  Internal DNS was set correctly in template so puppet agent found the
puppetmaster
•  Node configured from puppet master
•  Monitoring automatically populated on Nagios hosts when puppet ran on that
host
•  DNS records updated in DNS servers
•  Cluster registered itself with Jenkins server as a new available node via
exported resources
36
Parallel Running
•  Tests manually copied from old Jenkins host to new host
•  Tests ran in parallel for approx. 1 month
•  The only real difference was run time 1day on old env -> 1 hour in new env
•  Old environment was decommissioned
37
Enhancements
•  Needed to start using Windows and SQL Server
•  Played with puppet enterprise to look a the puppet sql server module
•  Could see the use but it took too long to get the PO approved.
38
Future
•  VMware EOL all Continuent products in May 2016.
•  Continuent Software is being spun back off into a separate Company.
•  Currently working on migrating environment back to AWS (using Puppet).
•  About 75% of the environment has now been decommissioned and reallocated
to new projects.
•  Lessons learnt have been carried through to the next project.
39
Lessons Learnt
•  Initial investment is high but the long term payoff is good
•  Resist the temptation to go a quick hack rather than modify the puppet module
•  Resist the temptation to go a quick hack rather than modify the puppet module
•  We had lots of issues around memory usage on puppetDB when running 3.7.x
–  Allocate lots of JVM memory
–  Not run 4.0.x at the same scale yet so I don’t know if it’s fixed.
•  Make sure modules are in a SCS system we use Git.
– Develop locally and push to a repo
– Puppet Master pulls the latest code
40
Questions
41
Slides and Code
https://github.com/narmitag/puppetconf2016

Contenu connexe

Tendances

Openstack In Real Life
Openstack In Real LifeOpenstack In Real Life
Openstack In Real LifePaul Guth
 
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowsOpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowseNovance
 
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"Sergey Dzyuban "To Build My Own Cloud with Blackjack…"
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"Fwdays
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Timothy St. Clair
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…Sergey Dzyuban
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationopenstackindia
 
Websockets: Pushing the web forward
Websockets: Pushing the web forwardWebsockets: Pushing the web forward
Websockets: Pushing the web forwardMark Roden
 
OpenStack Deployments with Chef
OpenStack Deployments with ChefOpenStack Deployments with Chef
OpenStack Deployments with ChefMatt Ray
 
Open stack in action enovance-quantum in action
Open stack in action enovance-quantum in actionOpen stack in action enovance-quantum in action
Open stack in action enovance-quantum in actioneNovance
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflixaspyker
 
OpenStack Kolla Introduction
OpenStack Kolla IntroductionOpenStack Kolla Introduction
OpenStack Kolla IntroductionDaneyon Hansen
 
Why docker | OSCON 2013
Why docker | OSCON 2013Why docker | OSCON 2013
Why docker | OSCON 2013dotCloud
 
Managing Complexity at Velocity
Managing Complexity at VelocityManaging Complexity at Velocity
Managing Complexity at VelocityMatt Ray
 
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...DevOps_Fest
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overviewrajdeep
 
CloudStack Best Practice in PPTV
CloudStack Best Practice in PPTVCloudStack Best Practice in PPTV
CloudStack Best Practice in PPTVgavin_lee
 
Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtqViet Stack
 
Rally--OpenStack Benchmarking at Scale
Rally--OpenStack Benchmarking at ScaleRally--OpenStack Benchmarking at Scale
Rally--OpenStack Benchmarking at ScaleMirantis
 

Tendances (20)

Openstack In Real Life
Openstack In Real LifeOpenstack In Real Life
Openstack In Real Life
 
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowsOpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
 
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"Sergey Dzyuban "To Build My Own Cloud with Blackjack…"
Sergey Dzyuban "To Build My Own Cloud with Blackjack…"
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.
 
dodai grizzly
dodai grizzlydodai grizzly
dodai grizzly
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…
 
OpenStack and Windows
OpenStack and WindowsOpenStack and Windows
OpenStack and Windows
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
 
Websockets: Pushing the web forward
Websockets: Pushing the web forwardWebsockets: Pushing the web forward
Websockets: Pushing the web forward
 
OpenStack Deployments with Chef
OpenStack Deployments with ChefOpenStack Deployments with Chef
OpenStack Deployments with Chef
 
Open stack in action enovance-quantum in action
Open stack in action enovance-quantum in actionOpen stack in action enovance-quantum in action
Open stack in action enovance-quantum in action
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflix
 
OpenStack Kolla Introduction
OpenStack Kolla IntroductionOpenStack Kolla Introduction
OpenStack Kolla Introduction
 
Why docker | OSCON 2013
Why docker | OSCON 2013Why docker | OSCON 2013
Why docker | OSCON 2013
 
Managing Complexity at Velocity
Managing Complexity at VelocityManaging Complexity at Velocity
Managing Complexity at Velocity
 
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...
DevOps Fest 2019. Stanislav Kolenkin. Сonnecting pool Kubernetes clusters: Fe...
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overview
 
CloudStack Best Practice in PPTV
CloudStack Best Practice in PPTVCloudStack Best Practice in PPTV
CloudStack Best Practice in PPTV
 
Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtq
 
Rally--OpenStack Benchmarking at Scale
Rally--OpenStack Benchmarking at ScaleRally--OpenStack Benchmarking at Scale
Rally--OpenStack Benchmarking at Scale
 

En vedette

PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...
PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...
PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...Puppet
 
PuppetConf. 2016: External Data in Puppet 4 – R.I. Pienaar
PuppetConf. 2016: External Data in Puppet 4 – R.I. PienaarPuppetConf. 2016: External Data in Puppet 4 – R.I. Pienaar
PuppetConf. 2016: External Data in Puppet 4 – R.I. PienaarPuppet
 
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...Puppet
 
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble Systems
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble SystemsPuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble Systems
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble SystemsPuppet
 
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...Puppet
 
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.Puppet
 
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...Puppet
 
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...Puppet
 
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...Puppet
 
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...Puppet
 
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, PuppetPuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, PuppetPuppet
 
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T Puppet
 
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...Puppet
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...Puppet
 
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells FargoPuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells FargoPuppet
 
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, PuppetPuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, PuppetPuppet
 
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, Etsy
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, EtsyPuppetConf 2016: How You Actually Get Hacked – Ben Hughes, Etsy
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, EtsyPuppet
 
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...Puppet
 
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...Puppet
 
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...Puppet
 

En vedette (20)

PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...
PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...
PuppetConf 2016: Case Study: Puppets in the Government – Kathy Lee (co-author...
 
PuppetConf. 2016: External Data in Puppet 4 – R.I. Pienaar
PuppetConf. 2016: External Data in Puppet 4 – R.I. PienaarPuppetConf. 2016: External Data in Puppet 4 – R.I. Pienaar
PuppetConf. 2016: External Data in Puppet 4 – R.I. Pienaar
 
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...
PuppetConf 2016: DevOps Where You Wouldn't Have Expected – Thomas Limoncelli,...
 
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble Systems
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble SystemsPuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble Systems
PuppetConf 2016: Debugging Diversity – Anjuan Simmons, Assemble Systems
 
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...
PuppetConf 2016: Site Launch Automation: From Days to Minutes – Kristen Crawf...
 
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
PuppetConf 2016: Multi-Tenant Puppet at Scale – John Jawed, eBay, Inc.
 
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
 
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...
PuppetConf 2016: Turning Pain Into Gain: A Unit Testing Story – Nadeem Ahmad ...
 
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...
PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, C...
 
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...
PuppetConf 2016: Writing Custom Types to Manage Web-Based Applications – Tim ...
 
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, PuppetPuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
 
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T
PuppetConf 2016: Enjoying the Journey from Puppet 3.x to 4.x – Rob Nelson, AT&T
 
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
PuppetConf 2016: Moving from Exec to Types and Providers – Martin Alfke, exam...
 
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
PuppetConf 2016: Why Network Automation Matters, and What You Can Do About It...
 
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells FargoPuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
 
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, PuppetPuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet
PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet
 
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, Etsy
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, EtsyPuppetConf 2016: How You Actually Get Hacked – Ben Hughes, Etsy
PuppetConf 2016: How You Actually Get Hacked – Ben Hughes, Etsy
 
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
 
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
 
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...
PuppetConf 2016: Security Roadmap: How We Are Helping You When Everything is ...
 

Similaire à PuppetConf 2016: Changing the Engine While in Flight – Neil Armitage, VMware

Nordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOpsNordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOpsTravis Wright
 
Rails infrastructure
Rails infrastructureRails infrastructure
Rails infrastructurequreshiomar
 
Jenkins scaling best practices
Jenkins scaling best practicesJenkins scaling best practices
Jenkins scaling best practicesHenry McBride
 
Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014Puppet
 
Database as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on KubernetesDatabase as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on KubernetesObjectRocket
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a BudgetSusan Wu
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a BudgetSamir Ibradzic
 
Towards automated testing - CloudStack Collab Conference
Towards automated testing - CloudStack Collab ConferenceTowards automated testing - CloudStack Collab Conference
Towards automated testing - CloudStack Collab Conferenceamoghvk
 
MoldCamp - multidimentional testing workflow. CIBox.
MoldCamp  - multidimentional testing workflow. CIBox.MoldCamp  - multidimentional testing workflow. CIBox.
MoldCamp - multidimentional testing workflow. CIBox.Andrii Podanenko
 
TryStack: A Sandbox for OpenStack Users and Admins
TryStack: A Sandbox for OpenStack Users and AdminsTryStack: A Sandbox for OpenStack Users and Admins
TryStack: A Sandbox for OpenStack Users and AdminsAnne Gentle
 
Moving Windows Applications to the Cloud
Moving Windows Applications to the CloudMoving Windows Applications to the Cloud
Moving Windows Applications to the CloudRightScale
 
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetProvisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetEdwin Biemond
 
Building Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with DockerBuilding Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with DockerLaura Frank Tacho
 
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsOpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsAlessandro Pilotti
 
Improving WordPress Development and Deployments with Docker
Improving WordPress Development and Deployments with DockerImproving WordPress Development and Deployments with Docker
Improving WordPress Development and Deployments with DockerBrett Palmer
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVaidik Kapoor
 
Five Years of EC2 Distilled
Five Years of EC2 DistilledFive Years of EC2 Distilled
Five Years of EC2 DistilledGrig Gheorghiu
 
Arch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementationArch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementationPavel Chunyayev
 

Similaire à PuppetConf 2016: Changing the Engine While in Flight – Neil Armitage, VMware (20)

Nordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOpsNordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOps
 
Rails infrastructure
Rails infrastructureRails infrastructure
Rails infrastructure
 
Jenkins scaling best practices
Jenkins scaling best practicesJenkins scaling best practices
Jenkins scaling best practices
 
Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014
 
Database as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on KubernetesDatabase as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on Kubernetes
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a Budget
 
Operating OpenStack on a Budget
Operating OpenStack on a BudgetOperating OpenStack on a Budget
Operating OpenStack on a Budget
 
QA speed up story
QA speed up storyQA speed up story
QA speed up story
 
Towards automated testing - CloudStack Collab Conference
Towards automated testing - CloudStack Collab ConferenceTowards automated testing - CloudStack Collab Conference
Towards automated testing - CloudStack Collab Conference
 
MoldCamp - multidimentional testing workflow. CIBox.
MoldCamp  - multidimentional testing workflow. CIBox.MoldCamp  - multidimentional testing workflow. CIBox.
MoldCamp - multidimentional testing workflow. CIBox.
 
TryStack: A Sandbox for OpenStack Users and Admins
TryStack: A Sandbox for OpenStack Users and AdminsTryStack: A Sandbox for OpenStack Users and Admins
TryStack: A Sandbox for OpenStack Users and Admins
 
dodai_grizzly.pdf
dodai_grizzly.pdfdodai_grizzly.pdf
dodai_grizzly.pdf
 
Moving Windows Applications to the Cloud
Moving Windows Applications to the CloudMoving Windows Applications to the Cloud
Moving Windows Applications to the Cloud
 
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetProvisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
 
Building Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with DockerBuilding Efficient Parallel Testing Platforms with Docker
Building Efficient Parallel Testing Platforms with Docker
 
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsOpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
 
Improving WordPress Development and Deployments with Docker
Improving WordPress Development and Deployments with DockerImproving WordPress Development and Deployments with Docker
Improving WordPress Development and Deployments with Docker
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps Culture
 
Five Years of EC2 Distilled
Five Years of EC2 DistilledFive Years of EC2 Distilled
Five Years of EC2 Distilled
 
Arch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementationArch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementation
 

Plus de 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
 

Plus de 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
 

Dernier

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 

Dernier (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 

PuppetConf 2016: Changing the Engine While in Flight – Neil Armitage, VMware

  • 1. © 2014 VMware Inc. All rights reserved. Changing The Engine While In Flight Neil Armitage Senior DevOps Engineer, VMware
  • 2. WHOAMI •  Senior DevOps Engineer at VMware focusing on internal cloud deployments. •  Nearly 30 Years of Ops/DBA/Developer experience from IBM Mainframes upwards. •  Based in Palo Alto but work from the Scottish Highlands J 2
  • 3. Background •  In Oct 2014 VMware acquired the assets of Continuent Inc •  The Continuent team joined VMware’s Hybrid Cloud Business Unit. •  Focusing on bringing DBaaS into vCloudAir •  Needed to migrate Continuent Test/Dev/QA Systems from a mix of outsourced resources into a new internal vSphere Cluster •  Needs to be non disruptive as product launches are planned 3 NoteThere were some last minute changes for Continuent which made some of the slides inconsistent
  • 4. What is(was) Continuent •  Commercial Continuent Tungsten focused on MySQL asynchronous Clustering •  Open Source Tungsten Replicator, moving data from – MySQL to MySQL – Oracle to MySQL – MySQL to Oracle – MySQL or Oracle to Hadoop – MySQL or Oracle to Redshift •  Around 20 globally dispersed Engineers and Support staff 4
  • 5. Where were our servers? 5 AWS EastAWS West RackSpace Dallas Hetzner AWS Singapore Online.net
  • 6. What we had •  Around 50 Physical and Virtual Linux Hosts running – Customer facing Website (Joomla) – Jenkins Environment – Test and QA Clusters – Support Jump hosts for accessing Customer sites – Puppet Master •  All with different configurations some going back 10 years •  Some under Puppet control mainly covering Users and Firewalls •  Centos 4,5 & 6, Ubuntu 12.14…................... 6
  • 7. What we had •  CI Pipelines in Jenkins containing –  10+ build jobs –  200+ Unit and Integration tests –  Integration tests running against MySQL, Oracle, Hadoop and AWS Redshift. 7
  • 8. Why Puppet •  A few years ago we compare Puppet vs Chef and getting started with Puppet was easier •  Looked at Ansible when it matured but didn’t see it as a good choice, centralized server made sense •  Not a Puppet ‘fanboy’, it’s a tool in our toolbox. 8
  • 9. State Pre migration •  Several machines already ‘puppetized’ •  Initial adoption was triggered by several hacks so the modules concentrated on – Firewalls – controlling ingress into the nodes – Users – disabling root, maintaining SSH keys for users – Moving SSH to a new port – Using a jump host as a gateway – Initial separate puppet module for tungsten setup (now forked into a OSS module) •  https://github.com/continuent/continuent-puppet-tungsten 9
  • 10. Why Migrate •  VMware not keen on paying AWS J •  Dealing with multiple vendors was hard •  Hardware was old and no longer met our requirements •  We had around 40 QA hosts QA Team wanted 400+ •  Move from external Subversion to internal Git 10
  • 11. Where we were going •  Brand new vSphere 6 cluster running vSAN - 29 x Dell PE R730xd; 24C, 512GB •  Around 300TB of shared vSAN Disk •  70 x Dell PE R730xd; 12C, 128GB for physical host testing (Hadoop etc) •  Totally isolated only port 80 and 443 to outside world. 11
  • 12. What is vSAN? 12 . . . vSphere + Virtual SAN . . .
  • 13. Constraints/Concerns •  We had committed to ship multiple releases of Continuent Tungsten post acquisition •  We had to ship them as customers needed re-assurance •  We couldn’t break the QA environment based on 1 and 2 above •  The environment we were moving into was new and we had limited vCenter knowledge 13
  • 14. Plan Existing QA Environment Build new Environment Parallel Run 14
  • 15. New Enviroment (Take 1) •  29 Hosts Clustered into a single vCenter environment •  Single vSAN Cluster of 320TB •  Deployed a Puppet Master and PuppetDB server •  Started work on new modules 15
  • 16. 2 days later •  All the VM’s deployed had gone •  vSAN cluster had failed •  It appears some one had purchased SSD’s which were not supported by vSAN •  (this took about 2 weeks to discover) 16
  • 17. New environment (Take 2) •  29 Hosts Clustered into a single vCenter environment •  ESX hosts set up to used both local disks and a borrowed VNX San •  Deployed a Puppet Master and PuppetDB server •  Started work on new modules 17
  • 19. Infrastructure 19 Jump Puppet DNS NAT SVN ‘External 10.x Network using eth0 Internal 192.168.x Network using eth1 Physical Network Virtual Hosts Virtual Network PuppetManual
  • 20. Puppet modules •  ’Base’ class applied to all hosts – Users and SSH keys – Default packages per O/S – Centos and Ubuntu initially – Remote syslog – NTP – Nagios – eth1 Management •  RDBMS specific •  Jenkins and Monitoring rely heavily on exported resources from the Base class. 20
  • 21. What are exported resources? 21 “An exported resource declaration specifies a desired state for a resource, does not manage the resource on the target system, and publishes the resource for use by other nodes. Any node (including the node that exported it) can then collect the exported resource and manage its own copy of it.” https://docs.puppet.com/puppet/latest/reference/lang_exported.html
  • 22. What are exported resources? 22 VM Information Puppet Master DNS Server Information Information Puppet DB Puppet Master Information
  • 23. DNS Server Management with Exported Resources 23
  • 24. DNS Server Management with Exported Resources 24
  • 28. 28
  • 29. QA Cluster •  Built in groups of 3,6,9 or 12 nodes •  QA Class •  Added RDBMS as specified •  Extra QA tools, debugging etc. 29
  • 32. RDBMS Supported •  MySQL – Oracle MySQL – MariaDB – Percona Server •  Oracle EE – 11g and 12c •  Vertica •  Hadoop 32
  • 33. Jenkins configuration •  Several hundred tests in Jenkins •  Pre-migration each test specified a cluster to run on. •  Led to bottle necks and problems when a cluster is unavailable •  In the new environment a test just specifies the number of nodes and the O/S it needs 33
  • 34. Jenkins configuration •  Puppet creates the Jenkins slave using data from exported resources. •  Metadata inserted into the workspace by puppet to allow the test to find the correct hosts 34
  • 36. Completed Environment •  VM’s deployed using PowerShell to clone template, set hostname and add IP for eth0 •  Nodes booted and ran puppet •  Internal DNS was set correctly in template so puppet agent found the puppetmaster •  Node configured from puppet master •  Monitoring automatically populated on Nagios hosts when puppet ran on that host •  DNS records updated in DNS servers •  Cluster registered itself with Jenkins server as a new available node via exported resources 36
  • 37. Parallel Running •  Tests manually copied from old Jenkins host to new host •  Tests ran in parallel for approx. 1 month •  The only real difference was run time 1day on old env -> 1 hour in new env •  Old environment was decommissioned 37
  • 38. Enhancements •  Needed to start using Windows and SQL Server •  Played with puppet enterprise to look a the puppet sql server module •  Could see the use but it took too long to get the PO approved. 38
  • 39. Future •  VMware EOL all Continuent products in May 2016. •  Continuent Software is being spun back off into a separate Company. •  Currently working on migrating environment back to AWS (using Puppet). •  About 75% of the environment has now been decommissioned and reallocated to new projects. •  Lessons learnt have been carried through to the next project. 39
  • 40. Lessons Learnt •  Initial investment is high but the long term payoff is good •  Resist the temptation to go a quick hack rather than modify the puppet module •  Resist the temptation to go a quick hack rather than modify the puppet module •  We had lots of issues around memory usage on puppetDB when running 3.7.x –  Allocate lots of JVM memory –  Not run 4.0.x at the same scale yet so I don’t know if it’s fixed. •  Make sure modules are in a SCS system we use Git. – Develop locally and push to a repo – Puppet Master pulls the latest code 40