![]() | Note |
---|---|
The host named “puppet” is the puppetmaster. This is by widespread Puppet convention. |
Use preseed or Puppet, or - if you really must - by hand.
apprentice@puppet:~$ wget -q http://apt.puppetlabs.com/puppetlabs-release-wheezy.deb
apprentice@puppet:~$ sudo dpkg -i puppetlabs-release-wheezy.deb
apprentice@puppet:~$ sudo apt-get update
apprentice@puppet:~$sudo apt-get install puppetmaster puppet-el
apprentice@puppet:~$ sudo apt-get install git
apprentice@puppet:~$ sudo git init
apprentice@puppet:~$ sudo git add $(find -type f -not -path \*\.git\*)
apprentice@puppet:~$ sudo git commit -m "initial commit - wheezy dist"
apprentice@puppet:~$ sudo sh -c "echo '*.rug.nl' > /etc/puppet/autosign.conf"
To /etc/puppet/puppet.conf
, under the [master]
section, add:
certname = host06.servers.mydomain.com dns_alt_names = puppet.servers.mydomain.com
apprentice@puppet:/etc/puppet$ sudo mkdir -p /srv/puppet/envs/{production,testing,joe,william,jack,averell}
apprentice@puppet:/etc/puppet$ sudo mv modules/ manifests/ templates/ /srv/puppet/envs/production/
apprentice@puppet:/etc/puppet$ sudo mkdir -p /srv/puppet/common
apprentice@puppet:/etc/puppet$ sudo mkdir -p /srv/puppet/common/modules
/etc/puppet/puppet.conf
[main] logdir=/var/log/puppet vardir=/var/lib/puppet ssldir=/var/lib/puppet/ssl rundir=/var/run/puppet # Note: using variables here may break Foreman. (But Foreman isn't installed) factpath=$vardir/lib/facter templatedir=$confdir/templates [master] # These are needed when the puppetmaster is run by passenger # and can safely be removed if webrick is used. ssl_client_header = SSL_CLIENT_S_DN ssl_client_verify_header = SSL_CLIENT_VERIFY certname = host06.servers.mydomain.com dns_alt_names = puppet.service.rug.nl #storeconfigs = true #storeconfigs_backend = puppetdb [production] modulepath = /srv/puppet/envs/production/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/production/templates manifestdir = /srv/puppet/envs/production/manifests manifest = /srv/puppet/envs/production/manifests/site.pp [testing] modulepath = /srv/puppet/envs/testing/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/testing/templates manifestdir = /srv/puppet/envs/testing/manifests manifest = /srv/puppet/envs/testing/manifests/site.pp [joe] modulepath = /srv/puppet/envs/joe/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/joe/templates manifestdir = /srv/puppet/envs/joe/manifests manifest = /srv/puppet/envs/joe/manifests/site.pp [william] modulepath = /srv/puppet/envs/william/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/william/templates manifestdir = /srv/puppet/envs/william/manifests manifest = /srv/puppet/envs/william/manifests/site.pp [jack] modulepath = /srv/puppet/envs/jack/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/jack/templates manifestdir = /srv/puppet/envs/jack/manifests manifest = /srv/puppet/envs/jack/manifests/site.pp [averell] modulepath = /srv/puppet/envs/averell/modules:/srv/puppet/common/modules templatedir = /srv/puppet/envs/averell/templates manifestdir = /srv/puppet/envs/averell/manifests manifest = /srv/puppet/envs/averell/manifests/site.pp
apprentice@puppet:~$ sudo service puppetmaster stop
Stopping puppet master.
apprentice@puppet:/etc/puppet$ sudo puppet master --no-daemonize --verbose
Starting Puppet master version 3.0.1