TechnologyClassroom / Puppet

Puppet Manifests for configuration management of educational systems.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Puppet

My puppet configs and scripts for initial setup and configuration management of educational systems.

Michael McMahon

Puppet is a DevOps tool that uses declaritive programming to manage configurations on systems without saying how they should get to that point. Puppet takes care of the middle steps.

Puppet Manifests:

  • init.pp can install a cronjob and update the hosts files for GNU/Linux, Mac, and Unix. It requires cron, puppet, and stdlib module.
  • installmodules.pp installs the stdlib puppet module.
  • ubuntu1604min.pp configures packages for Ubuntu Minimal 16.04.
  • ubuntu1604minworkstation.pp configures a workstation for Ubuntu Minimal 16.04.

Bash helper scripts:

  • archsetup.sh helps install puppet and stdlib for Arch Linux.
  • installmodules.sh installs stdlib.
  • macXX.XXsetup.sh files help install puppet and stdlib for Mac systems.

Bolt

Bolt is a newer agent-less configuration management tool complementing puppet.

Installing bolt on Ubuntu 16.04

sudo apt update
sudo apt install -y ruby-dev
sudo gem install bolt

Configuring bolt.yml

Edit the ~/.puppetlabs/bolt.yml file.

---
modulepath: "~/.puppetlabs/bolt-code/site:~/.puppetlabs/bolt-code/modules"
concurrency: 10
format: human
log:
  console:
    level: warn
  ~/.puppetlabs/bolt/debug.log:
    level: debug
    append: false
ssh:
  host-key-check: false
  private-key: ~/.ssh/id_rsa

Hello World

Receive the hostname from a node.

bolt command run hostname --nodes root@10.12.17.16

About

Puppet Manifests for configuration management of educational systems.

License:GNU General Public License v3.0


Languages

Language:Puppet 85.7%Language:Shell 14.3%