78
Luke Kanies Founder of Puppet Founder and CEO, Puppet Lab Configuration Management, Clouds, and Puppet 1

vBACD - Introduction to Puppet, Configuration Management and IT Automation Software 2/29

Embed Size (px)

DESCRIPTION

The shift to cloud-based services has dramatically altered the IT landscape as we know it. Enterprise infrastructure borders have expanded beyond the firewall and now include hosted applications and infrastructure hosted in public and private clouds. Puppet helps DevOps teams meet their common objectives, creating a seamless IT infrastructure across departments, reducing cost and increasing productivity.This training section will cover deploying cloud infrastructure automatically using Puppet, an open source configuration management and automation tool.The session will cover the following topics: Configuring Puppet and Puppetmaster Resource Types and the Resource Abstration Layer Virtual Resources, Exported Resources and Stored ConfigsSpeaker BioLuke founded Puppet and Puppet Labs in 2005 out of fear and desperation, with the goal of producing better operations tools and changing how we manage systems. He has been publishing and speaking on his work in system administration since 1997, focusing on development since 2001. He has developed and published multiple simple sysadmin tools and contributed to established products like Cfengine, and has presented on Puppet and other tools around the world, including at OSCON, LISA, Linux.Conf.au, and FOSS.in. His work with Puppet has been an important part of DevOps and delivering on the promise of cloud computing.

Citation preview

  • 1.
    • Luke Kanies
    • Founder of Puppet
    • Founder and CEO, Puppet Labs
    Configuration Management, Clouds, and Puppet
  • 2. The IT Situation
  • 3. Absolutely critical
  • 4. Gatekeepers
  • 5. Bad tools
  • 6. Calcification
  • 7. DevOps
  • 8. 2001: Agile Manifesto
  • 9. Individuals and interactions over processes and tools
  • 10. Working software over comprehensive documentation
  • 11. Customer collaboration over contract negotiation
  • 12. Responding to change over following a plan
  • 13. Dev: On time, under budget, wrong product
    • http://diykenya.files.wordpress.com/2010/08/tire_swing.gif
  • 14. Ops: Secure, stable, 18 months to deploy
  • 15. Process exists for a reason
    • http://t0.gstatic.com/images?q=tbn:ANd9GcQHJKV3omm4ov_CU7CJovofE_QGi9xsg_vPz1QHZlKXmlYtt2bB-Q
  • 16. Confidence through Tooling
    • http://www.mdpretech.com/images/Products/Precision%20Tooling%20for%20IC%20mold%20and%20Plastic%20mold.jpg
  • 17. Cloud Computing
    • http://t2.gstatic.com/images?q=tbn:ANd9GcRSjOE5BJr_A2IvmjZk1tCj7LU_qENIb58MuGqQWxU2DGqETHz-
  • 18. Scale
  • 19. Agility
  • 20. Big Data
  • 21. Self-service
  • 22. Puppet
  • 23. Puppet Users Scaled from 0 to over 10,000 servers in 2 months without training 287 servers per SysAdmin vs. 19 for BMC BladeLogic Over 50,000 systems managed by Puppet Deploy 1,800 machines in 2 hours vs. 25 machines per day with HP Opsware Financial Entertainment Technology Defense Web Mobile Phone Company
  • 24. Investors
  • 25. Plenty of others
  • 26. Built for the user
  • 27. Great Design
    • http://www.encorbio.com/Album/pages/ChkNFH-neuron1.htm
  • 28. Configuration Platform
  • 29. Fear Embarrassment SSH
  • 30. More great sysadmins Programmers Sysadmins 5000 Assembly Scripts Millions Ruby, Java, PHP, C ?
  • 31. Flatten the climb Fully Automated Infrastructure Investment Awesomeness Asynchronous Management Centralized Management Good tools
  • 32. Why use Puppet?
  • 33. 96% of outages are human error STABILITY
  • 34. 1000 nodes x 10s command = no pub AGILITY
  • 35. Air-gap Least Privilege Untrusted clients SECURITY
  • 36. Auditability
  • 37. Image from http://www.flickr.com/photos/fungep/2516767121/sizes/l_ GOLDEN IMAGE?
  • 38. Puppet: A brief introduction
  • 39. A language for configuration specification
  • 40. Resource Abstraction Layer
    • computer
    • cron
    • file
    • group
    • host
    • interface
    • k5login
    • mailalias
    • maillist
    • mcx
    • mount
    package portresourcesrouterservicesshkeystageuser vcsrepovlanyumrepo
  • 41. Cross Platform Fedora Debian Ubuntu CentOS SuSE Red Hat OS X AIX HP-UX OpenBSD FreeBSD Solaris Windows Cisco F5
  • 42. Workflow
  • 43. Change Propagation
  • 44. domain => localfacterversion => 1.5.8fqdn => sliver.localhardwaremodel => i386hostname => sliverinterfaces => lo0,gif0,stf0,en0,en1,fw0,vmnet1,vboxnet0ipaddress => 192.168.174.1ipaddress_lo0 => 127.0.0.1ipaddress_vmnet1 => 192.168.174.1kernel => Darwinkernelmajversion => 10.6kernelrelease => 10.6.0macosx_productname => Mac OS Xmacosx_productversion => 10.6.6netmask => 255.255.255.0netmask_lo0 => 255.0.0.0netmask_vmnet1 => 255.255.255.0network_lo0 => 127.0.0.0network_vmnet1 => 192.168.174.0operatingsystem => Darwinoperatingsystemrelease => 10.6.0path => /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/binpuppetversion => 2.6.4rubysitedir => /opt/local/lib/ruby/site_ruby/1.8 AUTOMATIC INVENTORY
  • 45. Centralized, Serverless, or Hybrid Data
  • 46. Scales like HTTPS 2 known 50k node sites Multiple 30k node sites Tens of 3k node sites
  • 47. Built as a platform
  • 48. Model-based hackability
    • Hosts
    • Inventory data
      • IP, hostname, platform, etc.
    • Resource lists
    • Resource dependencies
    • Change events
  • 49. Puppet Faces
    • ca
    • catalog
    • certificate
    • certificate_request
    • certificate_revocation_list
    • config
    • facts
    • file
    • help
    keymannodeparserpluginreportresourceresource_typestatus
  • 50. MCollective: Infrastructure message bus
  • 51. Puppet Forge 286 modules
  • 52. How to use Puppet
  • 53. Seek the pain Image from http://www.flickr.com/photos/pagedooley/2147718252/sizes/l/
  • 54. Solve the simple problems
  • 55. Add the infrastructure features you always wanted
  • 56. Think like Puppet thinks
    • Resources, not text snippets or lines added to files
    • What resources are you managing?
    • How are they related to each other?
  • 57. Replace Shell Scripts with Resources Becomes: This:
  • 58. Relationships matter but are often implicit Package Service Service should restart when configuration changes 30 Configuration 30 Configuration should get modifed after package installation
  • 59. Explicit Relationships
  • 60. Relationships provide ordering and notification
  • 61. Classes document Intent
  • 62. Organize files into modules
  • 63. Provide platform abstraction Debian Red Hat
  • 64. Portability and Naming
  • 65. Roles
  • 66. Puppet Enterprise
  • 67. REPORTING Detail of node status to pinpoint specific issues High-level status of nodes for instant visibility Time-based display for insight into rate of change
  • 68. Cloud Provisioning VMware Amazon AWS
  • 69. RESOURCE BROWSING Choose nodes to clone to ensure consistency Preview the impact before you clone nodes Browse for managed nodes in your infrastructure
  • 70. COMPLIANCE Accept or reject changes to update your baseline See specific differences between node configurations
  • 71. ORCHESTRATION Find out the status of each node group and its last Puppet run
  • 72. ORCHESTRATION Resources currently under Puppet management Current set of managed nodes
  • 73. Summary
  • 74. IT is critical but needs to improve
  • 75. DevOps is bringing change
  • 76. The Cloud is Coming
    • http://t2.gstatic.com/images?q=tbn:ANd9GcRSjOE5BJr_A2IvmjZk1tCj7LU_qENIb58MuGqQWxU2DGqETHz-
  • 77. Puppet gets you there
  • 78. Questions?