Installing the Sysctl Puppet Extension Type

This guide describe how to install a puppet extension that features a new type to handle /etc/sysctl.conf files that are used to store and manage Linux kernel parameters.

This guide could also be used as general instructions about how to install a Puppet extension in RHEL5 and CentOS 5.0.

Note: So far this procedure had been developed and tested only on CentOS 5.0, therefore it may be completely unsuitable for other operating systems including RHEL5.

Note: Unless specified otherwise the following steps need to be carried out on the puppetmaster server, as root.

  1. Download the type package:
    wget http://erwin.wpi.edu/~fs/sysctl-type-0.1.tar.gz
  2. Setup your libdir (this may need to be done on the clients as well, I need to confirm this since so far I’ve only tested on one machine):According to the Puppet documentation Unless configured otherwise in /etc/puppet/puppet.conf (or on the puppet command line) your libdir is the lib directory under your vardir, which is, again, unless configured otherwise, located in /var/puppetFor my CentOS configuration, the vardir is configured in puppet.conf to be at:
    /var/lib/puppet

    However, the libdir doesn’t seen to get configured to the right value by default, so I had to add the following line to puppet.conf on the [main] section:

    # Where 3rd party plugins and modules are installed
    libdir = $vardir/lib
    
  3. Configure plug-in synchronisation:
    • Edit your /etc/puppet/puppet.conf file and add the following lines to the [main] section:
      # Turn plug-in synchronization on.
      pluginsync = true
      
    • Add a [plugins] module to your Puppet file server (see the Puppet file sharing guide for details).
      [plugins]
        path /var/lib/puppet/lib
        allow 192.168.11.0/24
        # needed to allow local puppetd
        allow 127.0.0.1
      
    • Restart the puppetmasterd
      /etc/init.d/puppetmaster restart
  4. Install the type plug-in in your libdir
    cd /var/lib/puppet/lib/
    tar -xvzf ~/sysctl-type-0.1.tar.gz
Advertisements

2 thoughts on “Installing the Sysctl Puppet Extension Type

    • This plugin is no longer needed for recent Puppet versions, you can do a much better work using the built-in “Augeas” type, most of the puppet code on my blog is now severely out of data, and I suggest anyone wishing to use it put it through some severe revision.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s