1
edit
Changes
→Release 0.2
Ex:
<pre>
file { “resolv.conf”:
}
</pre>
The fileserver configuration is managed by the fileserver.conf that is located in the /etc/puppet directory by default. But using the following command can change the location.
In the puppet master
<pre>
#puppetmasterd --fsconfig /usr/local/etc/puppet/fileserver.conf
</pre>
The fileserver.conf file defines paths to serve files from and it has the access control that specifying which nodes can access these files.
Here is an example
<pre>
[configuration]
allow *.senecac.on.ca
deny *
</pre>
Here the each path being served is called a module. For example , configuration is a module. The use of modules allows puppet to abstract and simplify file system configuration and paths. The path statement specifies the location on the puppet master server where the files being served are located.
Lets see if we want to get the resolv.conf file from the configuration module in the file server, we simply specify as follows
<pre>
file { “/etc/resolv.conf”:
}
</pre>
what happens above is that, the file resource type need the titled /etc/resolv.conf file that is saved in the configuration module( /var/lib/puppet/files/configurtion/resolv.conf) is retrieved by the puppet.
Puppet://puppetmaster/module/files
Ex: <pre>source => “puppet://puppetmaster/configuration/resolv.conf”</pre>
This is for only single file is being down loaded by puppet and applied to the nodes. But if we want to download the full directory, there is a small changed needs to be done when specify the source.
<pre>
file { “/etc/pam.d”:
}
</pre>
What we have done here is that instead of just specifying the file resource type, we specify the directory /etc/pam.d. Therefore, the puppet will download pam.d directory and applied to the nodes. The recurse attribute and value true tells the puppet server that it should download all the files from the directory.