Giter VIP home page Giter VIP logo

puppet-tutorial-pe's Introduction

Start Here

This is a Puppet Enterprise and Git tutorial. We will also use Vagrant and/or Docker to provision our training environment.

Puppet Git

Training Overview

What will we do in this tutorial?

  • Deploy your own training environment using either Docker or Vagrant + VirtualBox
  • Install Puppet Enterprise (Monolithic Install), GitLab, and one additional training VM/Container
  • Learn the basics of Puppet Enterprise (Config, CLI, Environments, Code, etc.)
  • Learn how to use Hiera for...
    • Node classification
    • Auto-lookup of class parameters
    • Hierarchical data lookup
  • Learn how to install and Setup GitLab, and how to use it to host your Puppet code
  • Learn how to setup R10K to automate code deployment
  • Learn basic Puppet Coding, Git usage, and Vagrant & Docker usage

How to use this repo?

     git clone https://github.com/bentlema/puppet-tutorial-pe
  • Change directory to...
     cd puppet-tutorial-pe
  • Begin following the Labs (links below)

Navigating This Tutorial

This entire tutorial is of course a Git repository! All of the tutorial files are written in Markdown. Make sure you're comfortable navigating this code repo before you start. At any time, if you wish to return to this main README.md file, you can click the bentlema/puppet-tutorial-pe link at the top of the page.

Minimum System Requirements

  • You will need the ability to install software on your workstation (Admin / Super-User privileges). We will use the following software:

    • Git
    • VirtualBox
    • Vagrant or Docker
  • The software we will use is available for Windows, Linux, and Mac OS X, so you should be able to use any platform.

  • Disk space:

    • 20GB of free disk space to acomodate software and VM/Container images
  • Memory:

    • minimum 8GB of RAM if using Docker Containers
    • minimum 12GB of RAM if using VirtualBox VMs
  • Note: You will use either Vagrant to spin up VM's or Docker to spin up Containers

    • We will not use both (at the same time), so choose one or the other
    • Although Vagrant is capable of spinning up Docker containers, we will not use this capability

Software Versions

As there can be compatibility issues between different versions of the software we will use (e.g. Vagrant and Virtualbox), I would recommend sticking to the versions that have been tested to work together nicely.

Docker Vagrant VirtualBox Platform
1.13.0 1.8.4 5.0.28 Mac OS X 10.11 El Capitan
Mac OS X 10.10 Yosemite
Mac OS X 10.9 Mavericks
Linux
Windows

All of my initial testing has been done using Mac OS X 10.11 El Capitan, Vagrant 1.8.4, and VirtualBox 4.0.28. Feel free to test other version/platform combinations, and contribute your results here.


Labs

There are enough differences between using Docker and Vagrant+VirtualBox, I've split this tutorial into two distinct tracks. I will cover all of the same core materials, but will use different examples in each track, so it may be worth it to go through both tracks if you have the time and energy.


TRACK: Vagrant + VirtualBox

Vagrant Logo VirtualBox Logo


TRACK: Docker Containers

Docker Logo


Further Reading


Copyright © 2016 by Mark Bentley

puppet-tutorial-pe's People

Contributors

bentlema avatar mbentley-2w avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

puppet-tutorial-pe's Issues

Vagrant failed to install plugin vbguest

Hi, thank you for creating this tutorial! However I'm stuck with an error.
OS: Windows 10 Pro
Vagrant version: 1.8.4
Virtual Box version: 5.0.28

C:\Users\student\Downloads\puppet-tutorial-pe>vagrant plugin install vagrant-vbguest
Installing the 'vagrant-vbguest' plugin. This can take a few minutes...
Bundler, the underlying system Vagrant uses to install plugins,
reported an error. The error is shown below. These errors are usually
caused by misconfigured plugin installations or transient network
issues. The error from Bundler is:

An error occurred while installing ffi (1.13.1), and Bundler cannot continue.
Make sure that `gem install ffi -v '1.13.1'` succeeds before bundling.

Warning: this Gemfile contains multiple primary sources. Using `source` more than once without a block is a security risk, and may result in installing unexpected gems. To resolve this warning, use a block to indicate which gems should come from the secondary source. To upgrade this warning to an error, run `bundle config disable_multisource true`.Gem::InstallError: ffi requires Ruby version < 2.8.dev, >= 2.3.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.