Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Mastering Puppet 5
  • Toc
  • feedback
Mastering Puppet 5

Mastering Puppet 5

By : Russell-Yates, Southgate
4.4 (5)
close
Mastering Puppet 5

Mastering Puppet 5

4.4 (5)
By: Russell-Yates, Southgate

Overview of this book

Puppet is a configuration management system and a language written for and by system administrators to manage a large number of systems efficiently and prevent configuration drift. The core topics this book addresses are Puppet's latest features and mastering Puppet Enterprise. You will begin by writing a new Puppet module, gaining an understanding of the guidelines and style of the Puppet community. Following on from this, you will take advantage of the roles and profiles pattern, and you will learn how to structure your code. Next, you will learn how to extend Puppet and write custom facts, functions, types, and providers in Ruby, and also use the new features of Hiera 5. You will also learn how to configure the new Code Manager component, and how to ensure code is automatically deployed to (multiple) Puppet servers. Next, you will learn how to integrate Puppet with Jenkins and Git to build an effective workflow for multiple teams, and use the new Puppet Tasks feature and the latest Puppet Orchestrator language extensions. Finally, you will learn how to scale and troubleshoot Puppet. By the end of the book, you will be able to deal with problems of scale and exceptions in your code, automate workflows, and support multiple developers working simultaneously.
Table of Contents (14 chapters)
close

To get the most out of this book

Users with some prior Puppet experience will get the most out of this book, but every lesson is intended to be helpful to someone at any stage of learning about Puppet. To follow along in the book, users should install a trial version of Puppet Enterprise and attach some nodes to the Puppet Master. Each chapter will help set up the Puppet Master in a way to utilize the existing infrastructure.

Directions for installing Puppet Enterprise can be found at https://puppet.com/docs/pe/latest/installing_pe.html

Download the example code files

You can download the example code files for this book from your account at www.packt.com. If you purchased this book elsewhere, you can visit www.packt.com/support and register to have the files emailed directly to you.

You can download the code files by following these steps:

  1. Log in or register at www.packt.com.
  2. Select the SUPPORT tab.
  3. Click on Code Downloads & Errata.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Mastering-Puppet-5In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Download the color images

Conventions used

There are a number of text conventions used throughout this book.

CodeInText: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: "The earlier incarnations of Hiera (version 3 or earlier) used a single, entirely global hiera.yaml."

A block of code is set as follows:

lookup({
'name' => 'classification',
'merge' => {
'strategy' => 'deep',
'knockout_prefix' => '--',
},
})

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

lookup({
'name' => 'classification',
'merge' => {
'strategy' => 'deep',
'knockout_prefix' => '--',
},
})

Any command-line input or output is written as follows:

$ sudo /opt/puppetlabs/puppet/bin/gem install hiera-eyaml

Bold: Indicates a new term, an important word, or words that you see on screen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "We can reach the plugin page by clicking on Manage Jenkins on the left-hand side of the screen."

Warnings or important notes appear like this.
Tips and tricks appear like this.
bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete