Revisión 448
Añadido por Esteban M. Navas Martín hace más de 12 años
tareas_puppet/workstations/configura-cliente-puppet/leeme.txt | ||
---|---|---|
DESCRIPCION
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
Destino : Equipos que queramos configurar como clientes del servidor puppet principal del centro (puppetinstituto).
|
||
|
||
Acción : Configura como cliente puppet el equipo donde apliquemos configura-cliente-puppet.pp haciendo lo siguiente:
|
||
|
||
* Se asegura que el paquete puppet esté instalado.
|
||
* Crea el archivo de configuración de puppet /etc/puppet/puppet.conf con la siguiente configuración:
|
||
|
||
[main]
|
||
logdir=/var/log/puppet
|
||
vardir=/var/lib/puppet
|
||
ssldir=/var/lib/puppet/ssl
|
||
rundir=/var/run/puppet
|
||
factpath=/lib/facter
|
||
#pluginsync=true
|
||
server=puppetinstituto
|
||
runinterval=5400
|
||
syslogfacility=
|
||
report=true
|
||
|
||
[master]
|
||
templatedir=/var/lib/puppet/templates
|
||
|
||
[agent]
|
||
listen = true
|
||
report = true
|
||
|
||
* Crea el archivo /etc/default/puppet que activa el servicio en el arranque:
|
||
|
||
|
||
# Defaults for puppet - sourced by /etc/init.d/puppet
|
||
|
||
# Start puppet on boot?
|
||
START=yes
|
||
|
||
# Startup options
|
||
DAEMON_OPTS=""
|
||
|
||
|
||
* Crea el archivo /etc/escuela2.0" con el siguiente contenido:
|
||
use=workstation
|
||
|
||
* Crea el archivo /usr/lib/ruby/1.8/facter/leefichero.rb que lee los facter definidos en el fichero /etc/escuela2.0
|
||
|
||
* Asegura que exista el directorio de reports var/lib/puppet/reports
|
||
|
||
* Borra el directorio /var/lib/puppet/ssl por si existieran certificados antigüos en el cliente
|
||
|
||
* Inicia el servicio
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
|
||
INSTRUCCIONES DE USO
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
* Copiar configura-cliente-puppet.pp al equipo que queremos configurar
|
||
|
||
* Aplicar la configuración:
|
||
|
||
puppet apply configura-cliente-puppet.pp
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
|
||
NOTA
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
Podemos usar este archivo para configurar cualquier cliente, con tan sólo cambiar el siguiente recurso:
|
||
|
||
file { "/etc/escuela2.0":
|
||
content => "use=workstation",
|
||
}
|
||
-------------------------------------------------------------------------------------------------------------
|
||
|
||
|
||
|
||
Creado por:
|
||
|
||
Esteban M. Navas Martín
|
||
Administrador informático del IES Valle del Jerte.
|
||
Plasencia
|
||
12-Diciembre-2012
|
tareas_puppet/workstations/configura-cliente-puppet/configura-cliente-puppet.pp | ||
---|---|---|
package { puppet:
|
||
ensure=>"installed"
|
||
}
|
||
|
||
file { "/etc/default/puppet":
|
||
content => "# Defaults for puppet - sourced by /etc/init.d/puppet\n\n# Start puppet on boot?\nSTART=yes\n\n# Startup options\nDAEMON_OPTS=\"\"\n"
|
||
}
|
||
|
||
file { "/etc/puppet/puppet.conf":
|
||
content => "[main]\nlogdir=/var/log/puppet\nvardir=/var/lib/puppet\nssldir=/var/lib/puppet/ssl\nrundir=/var/run/puppet\nfactpath=$vardir/lib/facter\n#pluginsync=true\nserver=puppetinstituto\nruninterval=5400\nsyslogfacility=\nreport=true\n\n[master]\ntemplatedir=/var/lib/puppet/templates\n\n[agent]\nlisten = true\nreport = true",
|
||
require => Package["puppet"],
|
||
}
|
||
|
||
file { "/etc/escuela2.0":
|
||
content => "use=workstation",
|
||
}
|
||
|
||
file { "/usr/lib/ruby/1.8/facter/leefichero.rb":
|
||
content => 'if File.exists?("/etc/escuela2.0")
|
||
File.open("/etc/escuela2.0").each do |line|
|
||
var = nil
|
||
value = nil
|
||
|
||
var = $1 and val = $2 if line =~ /^(.+)=(.+)$/
|
||
|
||
|
||
if var != nil && val != nil
|
||
Facter.add(var) do
|
||
setcode { val }
|
||
end
|
||
end
|
||
end
|
||
end',
|
||
}
|
||
|
||
file { "/var/lib/puppet/reports":
|
||
ensure => directory
|
||
}
|
||
|
||
file { "/var/lib/puppet/ssl":
|
||
ensure => absent,
|
||
force => true,
|
||
}
|
||
|
||
service { puppet:
|
||
ensure => running,
|
||
require => Package["puppet"],
|
||
subscribe => File["/etc/default/puppet","/etc/puppet/puppet.conf"]
|
||
}
|
Exportar a: Unified diff
Subiendo recurso configura-cliente-puppet que sirve para configurar un cliente workstation como cliente del puppetmaster principal del centro