Keiran Sweet presented a case study on how his organization used Puppet to bring order to chaos in their environment. Originally, their Linux servers were inconsistently configured by hand and suffered from instability. They implemented Puppet for configuration management and the Foreman tool for provisioning. This centralized configuration of servers, provided self-healing, improved reporting, and integrated with their provisioning workflow. As a result, costs went down and stability and speed of deployments increased. Their fleet of servers could now be easily managed and had a consistent, automated configuration.
3. About me
• UNIX Administrator in the Financial sector
• ~10 years UNIX experience across a
number of industries
• Using Puppet for 3+ years
• Devops advocate
• Likes automating things
• Likes keeping things simple
9. Case Study - Original Environment
• OS - Enterprise Linux
o RHEL 4 & 5
o CentOS 4 & 5
o RHEL 6 was on the way
• "Management" tools
o Satellite Server - RHEL Management
o Spacewalk Server - CentOS Management
o Glued together with Cobbler, DHCP, TFTP & PXE
o Numerous "rogue" servers
o External 3rd Party repositories
o Lots of hand crafted servers
10. Case Study - Original Environment
• Provisioning
o Kickstart via Satellite & Spacewalk
Basic installs of the OS only
Servers were built as localhost.localdomain
Configuration done by hand post kickstart
Packages weren't being utilised (tar, zips, scripts)
VMTools, HP PSP's, HW Agents - Often missing
o DVD/CD Installs still being done
Left disconnected from Satellite / Spacewalk
Non-standard configurations
Some talked to unknown repos on the internet (!)
13. Case Study - Original Environment
• Result - Utter carnage
o Business was suffering
Application & Server instability == Outages
Delays in deployment of new platforms
Delays in upgrading and deploying our
applications
o The Linux admins were suffering
Flying blind - Unknown fleet composition
Every issue resulted in a journey of discovery
Inconsistent configurations made delivering other
infrastructure projects difficult - ie, Monitoring
Wasn't enjoyable (not enough time for reddit)
15. Case Study - What did we need ?
• Configuration Management
o Self healing
o Rich Reporting
o Vendor neutral
o Flexible
o Version control
o Integrates with provisioning workflow
• Software Management and Distribution
o Centralised, Simple & Scalable
o Secure (Signed Packages & TLS)
o Redundancy - Supported mirrors/slaves
16. Case Study - What we chose
• Puppet
o Configuration Management
o Self healing
o Rich reporting
o Cross platform
o Extensible
• Foreman
o Puppet node classifier (ENC)
o DHCP/TFTP/PXE Integration
o Puppet report visualisation
o Host inventory & CMDB
18. Case Study - Fixing Provisioning
Hostname
OS Version
MAC Address
Partition Table
Data Center
19. Case Study - Importing the fleet
• Install Puppet agent
• Boot strap the client
• Apply the standard
modules
• Test
Result:
20. Case Study - End result - Stability
• Costs are down
• Business applications are more stable
• React to requests more rapidly
• Users have a common experience
• Fleet management is much easier
21. Questions ?
• Contact
o Twitter: @keiran_s
o Email: Keiran@gmail.com
• Images
o Devops Reactions
o Reddit