path: root/recipes-support/puppet/README
diff options
authorMark Asselstine <mark.asselstine@windriver.com>2015-08-19 22:56:11 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2015-08-20 13:38:48 -0400
commit1aa30310259027ebb87ee95ef914ca3de55d6a09 (patch)
tree72a940aacd777a4512771abddcd30637c29b57b7 /recipes-support/puppet/README
parentbd7a3f804950ae454d025aa8773789441a63820c (diff)
puppet: move to base layer
Puppet can be used by many 'cloud services', it is not openstack specific, so moving puppet and puppet related recipes to the meta-cloud-services base layer. This allows either internal sub-layers found in meta-cloud-services or external layers to include meta-cloud-services without being burdened by bbappends and configs found in meta-openstack. Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'recipes-support/puppet/README')
1 files changed, 75 insertions, 0 deletions
diff --git a/recipes-support/puppet/README b/recipes-support/puppet/README
new file mode 100644
index 0000000..2de808a
--- /dev/null
+++ b/recipes-support/puppet/README
@@ -0,0 +1,75 @@
+What is Puppet
+Puppet is a configuration management system that allows you to define the
+state of your IT infrastructure, then automatically enforces the correct state.
+Basic Requirements
+Ruby 1.8.7 or later
+Facter 1.7.0 or later
+Hiera 1.0 or later
+The json gem (any modern version)
+Simple Demo
+In this simple demo, we have a CA master server named 'master' and ip is
+and an agent node named 'agent', ip is
+On master server, file 'test.cfg' is under /etc/puppet/files/, puppet will sync this
+file to /opt/ folder on agent node.
+Step 1: Configure Puppet CA Master Server
+1) create a puppet group and user
+$ puppet resource group puppet ensure=presnt
+$ puppet resource user puppet ensure=present gid=puppet shell='/sbin/nologin'
+2) create the CA certificate and the puppet master certificate
+$ puppet master --verbose --no-daemonize
+(Once it says Notice: Starting Puppet master version <VERSION>, type ctrl-C to kill the process)
+3) $ vi /etc/hosts
+add new line:
+ agent
+4) start puppet master
+$ puppet master --verbose --no-daemonize &
+Step 2: Config Puppet Agent Node
+1) Edit puppet.conf
+$ echo "[main]
+server = master" >> /etc/puppet/puppet.conf
+2) $ vi /etc/hosts
+add new line:
+ master
+3) Request certificates
+$ puppet agent --test --ca_server=t2080qds -w 60
+(Accept the request on master server by this command: puppet cert sign --all)
+Step 3: Add site map on master
+1) Edit /etc/puppet/fileserver.conf to make /etc/puppet/files available
+$ mkdir /etc/puppet/files
+$ touch /etc/puppet/files/test.cfg
+$ vi /etc/puppet/fileserver.conf
+add following lines:
+ path /etc/puppet/files
+ allow *
+2) Add a new sitemap
+$ vi /etc/puppet/manifests/site.pp
+add follwing lines:
+{ "/opt/test.cfg":
+source => "puppet:///extra_files/test.cfg",
+Step 4: Run puppet on agent
+$ puppet agent --test
+$ ls /opt/