====== How To Install Puppet Server ====== This guide will teach you how to install the Puppetlabs Puppet Server service with r10k for code management, and demo some example Puppet manifests. ===== Install Puppet Server ===== Grab the Puppetlabs release package (this will set up the Puppetlabs repository): Debian/Ubuntu: ''%%wget "https://apt.puppet.com/puppet-release-$(lsb_release -cs).deb"%%'' RHEL and clones: ''%%. /etc/os-release; wget https://yum.puppet.com/puppet-release-el-${VERSION_ID%.*}.noarch.rpm"%%'' Install the package: Debian/Ubuntu: ''%%dpkg -i puppet-release-$(lsb_release -cs).deb"%%'' RHEL and clones: ''%%rpm -i puppet-release-el-${VERSION_ID%.*}.noarch.rpm"%%'' Install the Puppet Server package: Debian/Ubuntu: ''%%apt update && apt install -y puppetserver%%'' RHEL and clones: ''%%dnf updateinfo && dnf install -y puppetserver%%'' ===== Install r10k ===== R10k is a beautiful tool that makes it really easy to manage a Puppet code repository with multiple environments. To get started, install the gem: /opt/puppetlabs/bin/gem install r10k Now we need to configure r10k so it knows what repository to pull your code from and where to put it. Create a directory under your puppetlabs config: mkdir /etc/puppetlabs/r10k Then open up/create the r10k config file in your favorite editor (e.g. vim): vim /etc/puppetlabs/r10k/r10k.yaml