Puppet Config erweitern

vb-server

Registered User
Hallo zusammen,

spiel' grad mit Puppet. Soweit funktioniert alles, jedoch möchte ich zu einigen Config-Files (templates) auf gewissen Servern noch etwas hinzufügen (zB extends beim SNMP-Server), jedoch keine Ahnung wie ich das machen könnte.

Kennt sich hier wer aus?

Gruss,
vb-server
 

remote_mind

Blog Benutzer
Grundsätzlich sind puppet-Templates ja ruby-Templates, also auch in ruby zu programmieren.

Beispiel:
Code:
  <% if snmp_extends != "UNSET" %>
   [optionaler Teil]
   <% end %>

Dabei kannst Du auf alle Variablen zugreifen, die im Kontext des Template-Aufrufs definiert sind, also dort, wo Du das Template z.B. mit
Code:
  content => template('snmp/snmpd.conf.erb')
verwendest
 

vb-server

Registered User
Hi und danke für die Antwort

Hab's jetzt so gemacht:

Code:
<% @snmpd_extends.each do |line| -%>
<%= line %>
<% end -%>

Und dann in der site.pp
Code:
snmpd_extends => [ 'extend sw-updates /usr/bin/perl /usr/local/check_updates --run-apt',
                   'extend users /usr/lib/nagios/plugins/check_users -w 5 -c 10',
                   'extend procs /usr/lib/nagios/plugins/check_procs -w 150 -c 200' ],
.

Andere Frage, weisst du vielleicht, wie ich bei define-Klassen inheriten kann? Möchte gerne eine klasse mehrfach aufrufen können in der site.pp (zB mehrere Cronjobs anlegen) ;-)


Viele Grüsse
vb-server
 
Top