Skip to content

Instantly share code, notes, and snippets.

@dhana-git
Last active February 22, 2017 14:33
Show Gist options
  • Select an option

  • Save dhana-git/2d740eef7f9ebf4c2c2d108de075adb4 to your computer and use it in GitHub Desktop.

Select an option

Save dhana-git/2d740eef7f9ebf4c2c2d108de075adb4 to your computer and use it in GitHub Desktop.
Puppet - Infrastructure as Code : Quick start (IEP-AED)

Puppet - Infrastructure as Code : Quick start (IEP-AED)

Table of Contents

Introduction

  • Puppet is an open source configuration management tool, Infrastructure as Code (IaC), by Puppet Inc.
  • Supports Multi-platform.
  • Follows Master/Slave architecture, can also be deployed as stand-alone.
  • Built on Ruby, follows declarative programming paradigm.
  • Follows pull strategy where agent nodes should always pull configuration from Master node.
  • Provides it's own DSL (Puppet DSL) closer to JSON and supports Ruby DSL as well.
  • Good for operation focused team (Admins)
  • MCollect (by Puppet Inc.) collects nodes' configuration data and publishes it to the Master node.

Installation

OS and Other Software Package Details

  • Operating System: Ubuntu-14.10 (64 bit)

Enable Repo

wget https://apt.puppetlabs.com/puppetlabs-release-pc1-wily.deb
sudo dpkg -i puppetlabs-release-pc1-wily.deb
sudo apt update

Install Puppet Server

sudo apt-get install puppetserver

Start master

service puppetserver start

(or)

systemctl start puppetserver

Puppet Lifcycle commands

Dry-run puppet agent

puppet agent --test

Start Services

puppet resource service puppet ensure=running
puppet resource service mcollective ensure=running

Stop Services

puppet resource service puppet ensure=stopped
puppet resource service mcollective ensure=stopped

Paths For Reference

  • /opt/puppetlabs/bin/puppet
  • /etc/puppetlabs/puppet
  • /etc/default/puppetserver
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment