Puppet 3: Beginner’s Guide

With only the most basic programming abilities, this book will teach you how to automate your server setups and manage websites using Puppet. It’s fun too, with practical examples based around a fictional web company

Puppet 3: Beginner’s Guide

Beginner's Guide
John Arundel

With only the most basic programming abilities, this book will teach you how to automate your server setups and manage websites using Puppet. It’s fun too, with practical examples based around a fictional web company
$10.00
$44.99
RRP $26.99
RRP $44.99
eBook
Print + eBook
$12.99 p/month

Get Access

Get Unlimited Access to every Packt eBook and Video course

Enjoy full and instant access to over 3000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Code Files
+ Collection
Free Sample

Book Details

ISBN 139781782161240
Paperback204 pages

About This Book

  • Shows you step-by-step how to install Puppet and start managing your systems with simple examples
  • Every aspect of Puppet is explained in detail so that you really understand what you're doing
  • Gets you up and running immediately, from installation to using Puppet for practical tasks in a matter of minutes
  • Written in a clear, friendly, jargon-free style which doesn't assume any previous knowledge and explains things in practical terms

Who This Book Is For

This book is written for system administrators and developers, and anyone else who needs to manage computer systems. You will need to be able to edit text files and run a few commands on the command line, but otherwise no system administration or programming experience is required.

Table of Contents

Chapter 1: Introduction to Puppet
The problem
Solving the problem
Infrastructure as code
What is Puppet?
Summary
Chapter 2: First steps with Puppet
What you'll need
Time for action – preparing for Puppet
Time for action – installing Puppet
Your first manifest
Organizing your manifests
Time for action – creating a directory structure
Time for action – creating a node declaration
Summary
Chapter 3: Packages, Files, and Services
Packages
Time for action – installing Nginx
Modules
Time for action – creating an Nginx module
Time for action – making a "puppet apply" command
Services
Time for action – adding the Nginx service
Files
Time for action – deploying a virtual host
Summary
Chapter 4: Managing Puppet with Git
What is version control?
Time for action – importing your manifests into Git
Time for action – committing and inspecting changes
Distributing Puppet manifests
Time for action – creating a master Git repo
Time for action – cloning the repo to a new machine
Time for action – adding a new node
Time for action – pushing changes to the master repo
Time for action – automatic pull-and-apply script
Learning more about Git
Summary
Chapter 5: Managing users
Users
Time for action – creating a user
Access control
Time for action – adding an SSH authorized key
Time for action – deploying an SSH configuration file
User privileges
Time for action – deploying a sudoers file
Summary
Chapter 6: Tasks and templates
Running commands with exec resources
Time for action – running an arbitrary command
Scheduled tasks
Time for action – scheduling a backup
Distributing files
Time for action – using a recursive file resource
Using templates
Time for action – templating an Nginx virtual host
Summary
Chapter 7: Definitions and Classes
Grouping resources into arrays
Definitions
Time for action – creating a definition for Nginx websites
Classes
Time for action – creating an NTP class
Summary
Chapter 8: Expressions and Logic
Conditionals
Expressions
Regular expressions
Arrays and hashes
Summary
Chapter 9: Reporting and troubleshooting
Reporting
Time for action – generating a report
Debug output
Monitoring
Errors
Summary
Chapter 10: Moving on Up
Puppet style
Puppet learning resources
Projects
Last word

What You Will Learn

  • Installing and configuring your Puppet environment
  • Running Puppet on multiple servers
  • Deploy configuration files and templates for lightning-fast installations
  • Creating and monitoring reports and information
  • Managing user accounts, security, access control, and scheduled jobs
  • Best practices for organizing your Puppet code using Git

In Detail

Everyone's talking about Puppet, the open-source DevOps technology that lets you automate your server setups and manage websites, databases, and desktops. Puppet can build new servers in seconds, keep your systems constantly up to date, and automate daily maintenance tasks.

"Puppet 3 Beginner's Guide" gets you up and running with Puppet straight away, with complete real world examples. Each chapter builds your skills, adding new Puppet features, always with a practical focus. You'll learn everything you need to manage your whole infrastructure with Puppet.

"Puppet 3 Beginner’s Guide" takes you from complete beginner to confident Puppet user, through a series of clear, simple examples, with full explanations at every stage.

Through a series of worked examples introducing Puppet to a fictional web company, you'll learn how to manage every aspect of your server setup. Switching to Puppet needn't be a big, long-term project; this book will show you how to start by bringing one small part of your systems under Puppet control and, little by little, building to the point where Puppet is managing your whole infrastructure.

Presented in an easy-to-read guide to learning Puppet from scratch, this book explains simply and clearly all you need to know to use this essential IT power tool, all the time applying these solutions to real-world scenarios.

Authors

Table of Contents

Chapter 1: Introduction to Puppet
The problem
Solving the problem
Infrastructure as code
What is Puppet?
Summary
Chapter 2: First steps with Puppet
What you'll need
Time for action – preparing for Puppet
Time for action – installing Puppet
Your first manifest
Organizing your manifests
Time for action – creating a directory structure
Time for action – creating a node declaration
Summary
Chapter 3: Packages, Files, and Services
Packages
Time for action – installing Nginx
Modules
Time for action – creating an Nginx module
Time for action – making a "puppet apply" command
Services
Time for action – adding the Nginx service
Files
Time for action – deploying a virtual host
Summary
Chapter 4: Managing Puppet with Git
What is version control?
Time for action – importing your manifests into Git
Time for action – committing and inspecting changes
Distributing Puppet manifests
Time for action – creating a master Git repo
Time for action – cloning the repo to a new machine
Time for action – adding a new node
Time for action – pushing changes to the master repo
Time for action – automatic pull-and-apply script
Learning more about Git
Summary
Chapter 5: Managing users
Users
Time for action – creating a user
Access control
Time for action – adding an SSH authorized key
Time for action – deploying an SSH configuration file
User privileges
Time for action – deploying a sudoers file
Summary
Chapter 6: Tasks and templates
Running commands with exec resources
Time for action – running an arbitrary command
Scheduled tasks
Time for action – scheduling a backup
Distributing files
Time for action – using a recursive file resource
Using templates
Time for action – templating an Nginx virtual host
Summary
Chapter 7: Definitions and Classes
Grouping resources into arrays
Definitions
Time for action – creating a definition for Nginx websites
Classes
Time for action – creating an NTP class
Summary
Chapter 8: Expressions and Logic
Conditionals
Expressions
Regular expressions
Arrays and hashes
Summary
Chapter 9: Reporting and troubleshooting
Reporting
Time for action – generating a report
Debug output
Monitoring
Errors
Summary
Chapter 10: Moving on Up
Puppet style
Puppet learning resources
Projects
Last word

Book Details

ISBN 139781782161240
Paperback204 pages
Read More