Automation with Puppet 5

Yogesh Raheja, Dennis McCarthy

ISBN: 9788126572748

380 pages

INR 729

Description

This book is based on Puppet Version 5 which contains all the major concepts of Puppet Automation in a very straightforward and easy-to-understand way. We start by building a strong foundation to get familiar with Automation and Configuration Management. For this we have presented a simple case study to prove why Automation is a must in IT. The book talks about how to setup Puppet Master on CentOS and Ubuntu (two different Linux-based Operating Systems), Setup and configure Puppet Agents/Nodes, Puppet Certification Management, Puppet Architecture. Until this level, you will be in a position to install, configure, and run your own independent Puppet environment.

 

Preface

Acknowledgments

About the Authors

Chapter 0 Defining IT Automation

0.1 What is “IT Automation”?

Chapter 1 Introduction to Puppet

1.1 Puppet: An Introduction

1.2 Current IT Automation State

1.3 Why Configuration Management?

1.4 Why Puppet?

1.5 How Puppet Works

1.6 Puppet Dataflow

Chapter 2 Understanding Puppet Framework

2.1 Simple Case Study

2.2 Puppet Way of Configuration Management

2.3 Infrastructure as Code (IaC)

2.4 Idempotency

2.5 Puppet Terminology

Chapter 3 Puppet Deployment

3.1 Pre-Requisites for Puppet Master

3.2 Puppet Master Installation and Configuration

3.3 Puppet Master Configuration File and Services

3.4 Pre-Requisites for Puppet Agent

3.5 Puppet Agent Installation and Configuration

3.6 Puppet Certification Management

3.7 Puppet Architecture

 

Chapter 4 Puppet Resources

4.1 About Puppet Resources

4.2 Resource Declaration

4.3 Resource Attributes

4.4 Puppet Code Creation Process

4.5 Multi-Resource Puppet Code

4.6 Puppet Resource Relationship (Dependency Management)

 

Chapter 5 Puppet Classes and Manifests

5.1 About Puppet Classes

5.2 Defining and Declaring Puppet Classes

5.3 Puppet Code Syntax Checks

5.4 Puppet Manifests

5.5 site.pp File in Main Manifests

5.6 Puppet Smoke Test or Dry Run Test

5.7 Puppet Real-Time Run

5.8 Node Definitions in Puppet

5.9 Real-Time Puppet Examples

 

Chapter 6 Puppet Variables

6.1 About Puppet Variables

6.2 Use Cases

6.3 Variable Scope

6.4 Puppet Facts

6.5 Facts in Variables

6.6 Conditionals, Case Statements, and Arrays in Puppet

6.7 Custom Facts

Chapter 7 Puppet Modules

7.1 About Puppet Module

7.2 Puppet Module Tool

7.3 Puppet Module Creation Process

7.4 Module Directory Structure

7.5 First Puppet Module Run

7.6 Puppet Modules with Static Files and Variables

Chapter 8 Puppet Nested Classes

8.1 Puppet Nested Classes Overview

8.2 Nested Classes Example

8.3 Class Inheritance in Puppet

8.4 Parameterized Classes in Puppet

8.5 Inheritance and Parameterized Example

Chapter 9 Puppet Roles and Profiles

9.1 Introduction

9.2 Roles and Profiles Creation

9.3 Real-Time Example

Chapter 10 Data Separation in Puppet

10.1 About Hiera in Puppet

10.2 Configuring Hiera

10.3 Testing and Implementing Hiera

10.4 Hiera with Custom Facts

 

Chapter 11 Extended Puppet Concepts

11.1 Marionette Collective

11.2 Operations with Marionette Collective

11.3 Defined Resource Type Overview

11.4 ERB Template Overview

11.5 File Line

11.6 Puppet Environments

 

Chapter 12 Puppet Forge

12.1 About Puppet Forge

12.2 Forge Utility

12.3 Puppet Module Operations Using Forge

 

Summary

Test Your Knowledge

Appendix Puppet References − Foreman and YAML

A.1 Foreman: An Open-Source GUI for Puppet

A.2 YAML Structure