Infrastructure automation as a state of the art with Puppet and GIT
State of Puppet London
-
Upload
puppet-labs -
Category
Technology
-
view
507 -
download
0
Transcript of State of Puppet London
Thanks toour Sponsors
Quru and Red Hat
The State ofIT
Shorter Cycles
Builtin Constraints
DevOps
Change must be embraced
Cloud
State of IT Automation
Enabling FrictionlessTechnological Change
Customers Everywhere
Simple, Declarative
New Approach: SoftwareDefined Infrastructure
1. DEFINE 2. SIMULATE
4. REPORT
Re-usable infrastructure-as-code Before deploying changes
Automatically and reliably Insight into changes
DESIRED STATE
CURRENT STATE
3. ENFORCE
}
Lifecycle of a Puppet Run
FactsThe node sends normalized data about itself to the Puppet Master.
1
CatalogPuppet uses the Facts tocompile a Catalog thatspecifies how the nodeshould be configured.
2
Report3XSSHW·V�RSHQ�$3,�can also send data to third party tools.
4
ReportThe node reports back to Puppet indicating the configuration is complete, which is visible in the Puppet Dashboard.
3
Report Collector(Puppet or 3rd party tool)
Node
PuppetMaster
SSL secure encryption on all data transport
PuppetArchitecture
Web Server Database Server Application Server
Reporting GUI & Workflows Content Admin &
Security
Virtual Machine Cloud Hardware
PUPPET MASTER SERVER
PUPPET AGENT
PUPPET FORGE CONTENT MARKETPLACE
PUPPET AGENT
PUPPET AGENT
PUPPET OPEN SOURCE PLATFORM
Strong CommunityForum Members Jan 2012 Feb 2013
puppet-users list 3588 5402
puppet-dev list 724 971
ask.puppetlabs.com N/A 383
#puppet 600 980
Repository Jan 2012 Feb 2013
Puppet Forks 236 496
Puppet Watchers 526 1185
Easy to Get Involved
• Help with Documentation
• Ask/Answer questions
• http://ask.puppetlabs.com
• mailing lists
• IRC
• Help with bug triage
• Contribute code
• Contribute modules on the Forge
• Visit https://puppetlabs.com/community to learn more
Puppet Enterprise
Puppet Enterprise
GUI
Orchestration
Packaging
Compliance
Cloud Provisioning
Services & Support
GUI for Puppet
High level status for
nodes
Time-based display for insight
into rate of change
Detailed node status to pinpoint
specific issues
PE Live Management
Browse for managed
nodes in your infrastructure
Preview the impact before
you clone nodes
Choose nodes to clone to ensure
consistency
VM/Cloud Provisioning
1. Create VM node capacity using VMware vSphere or AWS
2. Automatically install the Puppet Agent on new nodes
3. Configure nodes using existing definitions
Respond quickly to business demands while maintaining configuration consistency across environments
VMware vSphere or AWS
Recent Features
• Certificate Signing from the GUI
• Authentication with LDAP and oAuth
Organizational Scalability
PuppetActivity Log
Puppet 3 Developments
• Removal of dynamic scoping
• Extensions loaded from gems
• Full Ruby 1.9.3 support
• Pluginsync by default
• Data Separation with data binding
• Performance improvements
• Better version numbers
• More platform support
• Code loading improvements
• Even more documentation
Scope
# dynamic scoping is gone
class parent { $var = "from parent" include included}
class included { notify { $var: } ## NOT GONNA WORK notify { $parent::var: } ## YUP }
class ntp($server = hiera(ntp_server, ‘time.apple.com’)) { ...}
# can be changed toclass ntp($ntpserver = ‘time.apple.com’) { ...}
Builtin Data Binding
PerformanceGains
Puppet 3 moving on from 2.72.7.0 Release
3.1.0 Release 3.0.0 Release
API Documentation!
Transparency in plans
Puppet Armatures (ARM)
• Proposals to enhance / add features to Puppet or other projects in the Puppet eco-system
• ARM is a process for collecting, reviewing, sorting, and recording the result of proposals for enhancements
• Used for work that require 2+ weeks effort, has significant changes, is in high demand, or contains changes to Puppet Language / evaluation semantics
• Community-focused process to improve openness and transparency for Puppet Labs-funded and contributor effortsgithub.com/puppetlabs/armatures
ForgeActivity Log
By the Numbers
Jan 2012 March 2013
Modules 260 950+
Users 930 2270+
Total DownloadsSince Feb 2012 439,000+
MCollectiveActivity Log
Continuous Release
• Agents in packages, real packages
• MCO does it, so you can make them too
• Continuously built, continuously released
Usability
• Better docs
• More Complete applications
• Out of the box usability
• But still the framework it always was
• Full integration into puppet training
PuppetDB Happenings
Better Query, More Storage
• PuppetDB 1.1 released
• Enhanced Query API for facts, subqueries, regular expressions
• Report Storage
• Report Query in an experimental API
Razor Happenings
Razor Present and Future
• Security audits, fixes in the 0.9.0 release
• Not yet ready for prime time
• Help us get it there
• File bugs, contribute to the community
Hiera Happenings
Hiera
• Support is built into Puppet 3, and is available as an add-on for Puppet 2.7
Puppet Labs
Puppet Labs: by the numbers
Jan 2012 March 2013
Employees 55 120
Customer Countries 29 42
Office Space 836 m2
9,000 ft22,232 m2
25,000 ft2
Awesome Espresso & Tea
Weekly Company Lunch
Puppet Labs: A Great Place to Work!
Photos by Gary Larizza
We’re Hiring!
Training&
Certification
Training by Country
Puppet Education:Training and Certification Track
Questions?
Thank You!
Learn More:http://puppetlabs.com
http://puppetlabs.com/communityhttp://puppetlabs.com/puppet/puppet-enterprise/