Puppet 4 Essentials : Acquire Skills to Manage Your IT Infrastructure Effectively with Puppet.
Material type:
- text
- computer
- online resource
- 9781785882586
- 005.1
- HD30.2 -- .F736 2015eb
Cover -- Copyright -- Credits -- About the Authors -- About the Reviewer -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Writing Your First Manifests -- Getting started -- Introducing resources and properties -- Interpreting the output of the puppet apply command -- Dry-testing your manifest -- Adding control structures in manifests -- Using variables -- Variable types -- Controlling the order of evaluation -- Declaring dependencies -- Error propagation -- Avoiding circular dependencies -- Implementing resource interaction -- Examining the most notable resource types -- The user and group types -- The exec resource type -- The cron resource type -- The mount resource type -- Summary -- Chapter 2: The Master and Its Agents -- The Puppet master -- Puppet master and Puppet server -- Setting up the master machine -- Creating the master manifest -- Inspecting the configuration settings -- Setting up the Puppet agent -- The agent's life cycle -- Renewing an agent's certificate -- Running the agent from cron -- Performance considerations -- Tuning puppetserver -- Using Phusion Passenger with Nginx -- Comparing Passenger with puppetserver -- Completing the stack with PuppetDB -- Troubleshooting SSL issues -- Summary -- Chapter 3: A Peek under the Hood - Facts, Types, and Providers -- Summarizing systems with Facter -- Accessing and using fact values -- Extending Facter with custom facts -- Simplifying things using external facts -- Goals of Facter -- Understanding the type system -- The resource type's life cycle on the agent side -- Substantiating the model with providers -- Resource types with generic providers -- Summarizing types and providers -- Putting it all together -- Summary -- Chapter 4: Modularizing Manifests with Classes and Defined Types -- Introducing classes and defined types -- Defining and declaring classes.
Creating and using defined types -- Understanding and leveraging the differences -- Structured design patterns -- Writing comprehensive classes -- Writing component classes -- Using defined types as resource wrappers -- Using defined types as resource multiplexers -- Using defined types as macros -- Exploiting array values using defined types -- Using iterator functions -- Including classes from defined types -- Establishing relationships among containers -- Passing events between classes and defined types -- Ordering containers -- Limitations -- The performance implications of container relationships -- Mitigating the limitations -- The anchor pattern -- The contain function -- Making classes more flexible through parameters -- The caveats of parameterized classes -- Preferring the include keyword -- Summary -- Chapter 5: Extending Your Puppet Infrastructure with Modules -- An overview of Puppet's modules -- Parts of a module -- Module structure -- Documentation in modules -- Maintaining environments -- Configuring environment locations -- Obtaining and installing modules -- Modules' best practices -- Putting everything in modules -- Avoiding generalization -- Testing your modules -- Safe testing with environments -- Building a specific module -- Naming your module -- Making your module available to Puppet -- Implementing basic module functionality -- Creating utilities for derived manifests -- Adding configuration items -- Allowing customization -- Removing unwanted configuration items -- Dealing with complexity -- Enhancing the agent through plugins -- Replacing a defined type with a native type -- Enhancing Puppet's system knowledge through facts -- Refining the interface of your module through custom functions -- Making your module portable across platforms -- Finding helpful Forge modules -- Identifying modules' characteristics -- Summary.
Chapter 6: Leveraging the Full Toolset of the Language -- Templating dynamic configuration files -- Learning the template syntax -- Using templates in practice -- Avoiding performance bottlenecks from templates -- Creating virtual resources -- Realizing resources more flexibly using collectors -- Exporting resources to other agents -- Exporting and importing resources -- Configuring the master to store exported resources -- Exporting SSH host keys -- Managing hosts files locally -- Automating custom configuration items -- Simplifying the configuration of Nagios -- Maintaining your central firewall -- Removing obsolete exports -- Overriding resource parameters -- Saving redundancy using resource defaults -- Avoiding antipatterns -- Summary -- Chapter 7: New Features from Puppet 4 -- Upgrading to Puppet 4 -- Using Puppet 3.8 and environment directories -- The new Puppet 4 Master -- Updating the Puppet agent -- Testing Puppet DSL code -- Using the type system -- Learning lambdas and functions -- Creating Puppet 4 functions -- Leveraging the new template engine -- Handling multiline with HEREDOC -- Breaking old practices -- Converting node inheritance -- Dealing with bool algebra on Strings -- Using strict variable naming -- Learning the new reference syntax -- Cleaning hyphens in names -- No Ruby DSL anymore -- Relative class name resolution -- Dealing with different data types -- Summary -- Chapter 8: Separating Data from Code Using Hiera -- Understanding the need for separate data storage -- Consequences of defining data in the manifest -- Structuring configuration data in a hierarchy -- Configuring Hiera -- Storing Hiera data -- Choosing your backends -- Retrieving and using Hiera values in manifests -- Working with simple values -- Binding class parameter values automatically -- Handling hashes and arrays -- Converting resources to data.
Choosing between manifest and Hiera designs -- A practical example -- Debugging Hiera lookups -- Implementing the Roles and Profiles pattern -- Summary -- Index.
Description based on publisher supplied metadata and other sources.
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
There are no comments on this title.